Project

General

Profile

Provisioning Cisco IP Phone 7945G

Added by Manavai TEIKITUHAAHAA over 2 years ago

Bonjour,

Je suis actuelement en stage chez Sopra Steria au Luxembourg où je dois dois créer des processus de déploiement pour les clients, et j'essaye de mettre en place l'autroprovisionnement sur le téléphone Cisco 7945G. (seul modèle Cisco à ma disposition).

J'ai bien vu dans la documentation de xivo que ce modèle est encore en phase de test pour la version 2017.02.

Problème: Le téléphone tente de télécharger deux fois le fichier term45.default.loads avant de rédémmarer. Il fait ça de manière indéfini.

Etat du téléphone

Le téléphone ne présente + aucun firmware+. J'ai effectué un hard reset qui a supprimé le firmware. (+Procédure:+ https://www.nico-maas.de/?p=504)

Configuration du service xivo-provd:

  • Plugin installé: xivo-cisco-sccp-8.5.2 v1.1
  • Firmware installé via l'interface Web: cmterm-7945_7965-SCCP.8-5-2.zip (télécharger depuis le site de cisco | checksum vérifié): l'installation est OK, pas d'erreurs.
  • Les fichiers ont bien étaient installés dans :

root@xivo1:/var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/var/tftpboot# ls -l
total 7636
-rw------- 1 xivo-provd xivo-provd 2935993 Mar 24 07:21 apps45.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd 523884 Mar 24 07:21 cnu45.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd 2110919 Mar 24 07:21 cvm45sccp.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd 340383 Mar 24 07:21 dsp45.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd 1882854 Mar 24 07:21 jar45sccp.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd 650 Mar 24 07:21 SCCP45.8-5-2S.loads
-rw------- 1 xivo-provd xivo-provd 1487 Mar 24 07:23 SEPC0255C4383DB.cnf.xml
-rw------- 1 xivo-provd xivo-provd 654 Mar 24 07:21 term45.default.loads
-rw------- 1 xivo-provd xivo-provd 654 Mar 24 07:21 term65.default.loads

  • DHCP configuré et fonctionnel: le téléphone obtient bien une adresse IP selon les logs, et est visible dans Service>IPBX>IPBX Settings>Devices

[/var/log/xivo-provd.log]:

2017-03-24 08:24:25,903 20110 (provd.devices.ident): Processing DHCP request: 192.168.0.11
2017-03-24 08:24:25,903 20110 (provd.devices.ident): Extracted device info: {u'ip': u'192.168.0.11', u'model': u'7945G', u'vendor': u'Cisco', u'mac': u'c0:25:5c:43:83:db'}
2017-03-24 08:24:25,904 20110 (provd.devices.ident): Retrieved device id: dec78d2e82824c5c9496f4fde998be3e
2017-03-24 08:24:25,904 20110 (provd.devices.ident): Routing request to plugin xivo-cisco-sccp-8.5.2
2017-03-24 08:24:25,905 20110 (twisted): 127.0.0.1 - - [24/Mar/2017:07:24:25 +0000] "POST /provd/dev_mgr/dhcpinfo HTTP/1.1" 204 - "-" "Python-urllib/2.7"
2017-03-24 08:24:29,050 20110 (provd.servers.tftp.proto): TFTP read request from ('192.168.0.11', 52293)
2017-03-24 08:24:29,051 20110 (provd.devices.ident): Processing TFTP request: term45.default.loads
2017-03-24 08:24:29,051 20110 (provd.devices.ident): Extracted device info: {u'ip': u'192.168.0.11'}
2017-03-24 08:24:29,052 20110 (provd.devices.ident): Retrieved device id: dec78d2e82824c5c9496f4fde998be3e
2017-03-24 08:24:29,053 20110 (provd.devices.ident): Routing request to plugin xivo-cisco-sccp-8.5.2
2017-03-24 08:24:29,053 20110 (provd.servers.tftp.proto): TFTP read request accepted
2017-03-24 08:24:29,054 20110 (twisted): RFC1350Connection starting on 37262
2017-03-24 08:24:29,054 20110 (twisted): Starting protocol
2017-03-24 08:24:29,056 20110 (twisted): (UDP Port 37262 Closed)
2017-03-24 08:24:29,057 20110 (twisted): Stopping protocol
2017-03-24 08:24:33,679 20110 (provd.servers.tftp.proto): TFTP read request from ('192.168.0.11', 52441)
2017-03-24 08:24:33,679 20110 (provd.devices.ident): Processing TFTP request: term45.default.loads
2017-03-24 08:24:33,680 20110 (provd.devices.ident): Extracted device info: {u'ip': u'192.168.0.11'}
2017-03-24 08:24:33,680 20110 (provd.devices.ident): Retrieved device id: dec78d2e82824c5c9496f4fde998be3e
2017-03-24 08:24:33,681 20110 (provd.devices.ident): Routing request to plugin xivo-cisco-sccp-8.5.2
2017-03-24 08:24:33,681 20110 (provd.servers.tftp.proto): TFTP read request accepted
2017-03-24 08:24:33,681 20110 (twisted): RFC1350Connection starting on 53593
2017-03-24 08:24:33,681 20110 (twisted): Starting protocol
2017-03-24 08:24:33,683 20110 (twisted): (UDP Port 53593 Closed)
2017-03-24 08:24:33,683 20110 (twisted): Stopping protocol

Mon hypothèse est la suivante:

Je pense devoir réinstaller un firmware d'une version précédente à la 8.5.2 (je ne sais pas laquelle) grâce au plugin zero de xivo-provd. Puis effectuer un UPGRADE vers la 8.5.2.

Merci de votre aide.


Replies (2)

RE: Provisioning Cisco IP Phone 7945G - Added by Manavai TEIKITUHAAHAA over 2 years ago

Au final j'ai trouvé une solution qui permet aux téléphones Cisco de fonctionner quand même.

Le plugin xivo-cisco-sccp-8.5.2 fonctionne aussi avec le Firmware cmterm-7945_7965-sccp.9-4-2-1SR3-1.

Etape 1: Extraire les fichiers nécessaires dans /var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/var/tftpboot/

  • Installer le firmware cmterm-7945_7965-sccp.9-4-2-1SR3-1 à la place de cmterm-7945_7965-sccp.8-5-2 en le renomant comme ce premier comme ce dernier et en le plaçant dans /var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/var/cache/ au format ZIP.
root@xivo1:/var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/var/cache# ls -l
total 5900
-rw-r--r-- 1 root root 6039989 Mar 21 15:59 cmterm-7945_7965-sccp.8-5-2.zip

RE: Provisioning Cisco IP Phone 7945G - Added by Manavai TEIKITUHAAHAA over 2 years ago

Après avoir installé le firmware dans l'interface Web. Les fichiers sont donc copiés de .../var/tftpboot/.

Etape 2: Créer un custome template 7945.tpl dans .../var/templates/

Pour cela il faut donc copier le fichier /var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/templates/7945.tpl dans /var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/var/templates/.

Ensuite il faut éditer le fichier pour qu'il comme ci-dessous:

root@xivo1:/var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/var/templates# cat 7945G.tpl
{% extends 'base.tpl' -%}
{% block loadInformation %}SCCP45.9-4-2SR3-1S{% endblock -%}

Ensuite, il faut signifier au plugin qu'il y a une reconfiguration pour ce modèle de téléphone:

root@xivo1:/var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/var/templates# xivo-provd-cli
admin@localhost's password:

xivo-provd-cli> devices.using_plugin("xivo-cisco-sccp-8.5.2").reconfigure()
Reconfiguring device 70ec77c348b646f3a37df0f366447d20
xivo-provd-cli>

Etape 2.BIS: Extraire les fichiers du firmware 8.5.2 dans ../var/tftpboot

Cette étape permet en outre de ne pas modifier les templates. Pour cela, il faut extraire directement (unzip) les fichiers du firmware contenu dans *cmterm-7945_7965-sccp.8-5-2.zip
*
dans le dossier /var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/var/tftpboot/

*ATTENTION: Il ne faut surtout pas remplacer les fichiers term45.default.loads et term65.default.loads permettant de charger la version 9-4-2-1SR3-1 du firmware
*

On a donc les fichiers suivants:

root@xivo1:/var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2/var/tftpboot# ls -l
total 22220
-rw-r--r-- 1 root       root       2935993 May  7  2009 apps45.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd 4638412 Mar 27 14:00 apps45.9-4-2ES26.sbn
-rw-r--r-- 1 root       root       5214755 Mar 21 16:55 cmterm-7945_7965-sccp.8-5-2.zip
-rw-r--r-- 1 root       root        523884 May  7  2009 cnu45.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd  581786 Mar 27 14:00 cnu45.9-4-2ES26.sbn
-rw-r--r-- 1 root       root       2110919 May  7  2009 cvm45sccp.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd 2221624 Mar 27 14:00 cvm45sccp.9-4-2ES26.sbn
-rw-r--r-- 1 root       root        340383 May  7  2009 dsp45.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd  364895 Mar 27 14:00 dsp45.9-4-2ES26.sbn
-rw-r--r-- 1 root       root       1882854 May  7  2009 jar45sccp.8-5-2TH1-9.sbn
-rw------- 1 xivo-provd xivo-provd 1891597 Mar 27 14:00 jar45sccp.9-4-2ES26.sbn
-rw-r--r-- 1 root       root           650 May  7  2009 SCCP45.8-5-2S.loads
-rw------- 1 xivo-provd xivo-provd     673 Mar 27 14:00 SCCP45.9-4-2SR3-1S.loads
-rw------- 1 xivo-provd xivo-provd    1538 Mar 27 16:11 SEPC0255C4383DB.cnf.xml
-rw------- 1 xivo-provd xivo-provd     669 Mar 27 14:00 term45.default.loads
-rw------- 1 xivo-provd xivo-provd     669 Mar 27 14:00 term65.default.loads

Etape 3: Lancer l'autoprovisionnement des postes

On lance alors l'autoprovisionnement des postes 7945G. L'installation du firmware devrait se faire sans problème. Ces derniers téléchargent la version 9-4-2-1SR3-1 au lieu de la 8.5.2.
On pourra alors asigné des ligne SSCP ax téléphones installés.

Source(s)

Contenu final en mélangenant les deux méthodes de l'étape 2

root@xivo1:/var/lib/xivo-provd/plugins/xivo-cisco-sccp-8.5.2# tree
.
├── common.py
├── entry.py
├── pkgs
│   └── pkgs.db
├── plugin-info
├── README
├── templates
│   ├── 7906G.tpl
│   ├── 7911G.tpl
│   ├── 7931G.tpl
│   ├── 7941G.tpl
│   ├── 7942G.tpl
│   ├── 7945G.tpl
│   ├── 7961G.tpl
│   ├── 7962G.tpl
│   ├── 7965G.tpl
│   ├── 7970G.tpl
│   ├── 7971G.tpl
│   ├── 7975G.tpl
│   └── base.tpl
└── var
    ├── cache
    │   └── cmterm-7945_7965-sccp.8-5-2.zip
    ├── installed
    │   └── 7945-7965-fw
    ├── templates
    │   └── 7945G.tpl
    └── tftpboot
        ├── apps45.8-5-2TH1-9.sbn
        ├── apps45.9-4-2ES26.sbn
        ├── cmterm-7945_7965-sccp.8-5-2.zip
        ├── cnu45.8-5-2TH1-9.sbn
        ├── cnu45.9-4-2ES26.sbn
        ├── cvm45sccp.8-5-2TH1-9.sbn
        ├── cvm45sccp.9-4-2ES26.sbn
        ├── dsp45.8-5-2TH1-9.sbn
        ├── dsp45.9-4-2ES26.sbn
        ├── jar45sccp.8-5-2TH1-9.sbn
        ├── jar45sccp.9-4-2ES26.sbn
        ├── SCCP45.8-5-2S.loads
        ├── SCCP45.9-4-2SR3-1S.loads
        ├── SEPC0255C4383DB.cnf.xml
        ├── term45.default.loads
        └── term65.default.loads

7 directories, 37 files

ATTENTION !!!

Cette méthode n'est pas à appliquer dans un environnement de production car une mise à jour de XiVO ou du plugin pourrait rendre indisponible ces services.
Il s'agit juste d'un petit "bidouillage". Veuillez donc à tester hors production les mises à jour avant de les appliquer sur les services XiVO en production.

    (1-2/2)