{"id":30399,"date":"2019-10-31T21:35:20","date_gmt":"2019-10-31T18:35:20","guid":{"rendered":"https:\/\/prohoster.info\/blog\/voip-zoopark-provisioning\/"},"modified":"2019-10-31T21:35:20","modified_gmt":"2019-10-31T18:35:20","slug":"voip-zoopark-provisioning","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/voip-zoopark-provisioning","title":{"rendered":"Zoo VoIP \u2013 Provisioning","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<h4>Introduction<\/h4>\n<p>\nUn jour, la direction a approuv\u00e9 une exp\u00e9rience d'impl\u00e9mentation de la t\u00e9l\u00e9phonie IP dans notre entreprise. \u00c9tant donn\u00e9 que mon exp\u00e9rience dans ce domaine \u00e9tait minimale, cette t\u00e2che a \u00e9veill\u00e9 un grand int\u00e9r\u00eat en moi et je me suis plong\u00e9 dans l'\u00e9tude de divers aspects du sujet. Apr\u00e8s cette immersion, j'ai d\u00e9cid\u00e9 de partager les connaissances acquises \u2014 avec l'espoir qu'elles puissent \u00eatre utiles \u00e0 quelqu'un. Alors...<\/p>\n<h4>Donn\u00e9es d'origine<\/h4>\n<p>\nPour le PBX IP, Asterisk a \u00e9t\u00e9 choisi et d\u00e9ploy\u00e9. Le parc de t\u00e9l\u00e9phones se compose d'appareils Cisco 7906g, Panasonic UT-KX123B, Grandstream GXP1400 et Dlink DPH-150S(E)\/F3, Yealink T19 et T21. Cette diversit\u00e9 est due au fait qu'il a \u00e9t\u00e9 d\u00e9cid\u00e9, dans le cadre de l'exp\u00e9rience, d'essayer un peu de tout pour se faire sa propre opinion sur le rapport qualit\u00e9\/prix\/commodit\u00e9.<\/p>\n<h4>La t\u00e2che<\/h4>\n<p>\nMaximiser la simplification et l'unification du processus de configuration des nouveaux appareils. Tous les t\u00e9l\u00e9phones doivent \u00eatre synchronis\u00e9s dans le temps, avoir un annuaire t\u00e9l\u00e9phonique, charg\u00e9 depuis <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/fr\/server\/dts-los-angeles\/\"   title=\"de serveurs\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3475\">de serveurs<\/a> et fournir un acc\u00e8s aux param\u00e8tres pour l'administrateur.<\/p>\n<p>La solution \u00e0 cette probl\u00e9matique est simple : mettre en \u0153uvre la configuration automatique des t\u00e9l\u00e9phones, ce qu'on appelle le Provisioning. C'est en fait de ma mise en \u0153uvre de cette fonction remarquable dont il s'agit.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>Configuration de tftpd, dhcpd<\/h4>\n<p>\nPour distribuer les configurations aux t\u00e9l\u00e9phones, j'ai s\u00e9lectionn\u00e9 tftp comme option universelle, prise en charge par toutes les plateformes, facile \u00e0 configurer et \u00e0 g\u00e9rer.<\/p>\n<p>Aucune configuration sp\u00e9cifique pour tftp n'\u00e9tait n\u00e9cessaire. J'ai install\u00e9 le tftpd standard et plac\u00e9 tous les fichiers n\u00e9cessaires dans son r\u00e9pertoire racine.<br \/>\nLes fichiers de configuration ont \u00e9t\u00e9 organis\u00e9s dans des r\u00e9pertoires selon le fabricant du t\u00e9l\u00e9phone. Cependant, l'appareil Cisco n'a jamais voulu aller dans son dossier, j'ai d\u00fb le stocker \u00e0 la racine.<\/p>\n<p>Pour indiquer aux t\u00e9l\u00e9phones l'emplacement du serveur tftp, j'ai utilis\u00e9 l'option 66. De plus, je les ai class\u00e9s en classes distinctes par fabricant. Chaque classe a re\u00e7u son propre segment d'adresses et un dossier individuel pour les fichiers de configuration. \u00c0 noter, les appareils D-link ont d\u00fb \u00eatre identifi\u00e9s par leur adresse MAC, car ils ne fournissent pas d'informations sur le fabricant dans la requ\u00eate dhcp.<\/p>\n<p><b class=\"spoiler_title\">Extrait dhcpd.conf<\/b><\/p>\n<pre># \u0423\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043e\u043f\u0446\u0438\u0438 \noption option-66 code 66 = text;\n\nclass &quot;panasonic&quot; {\n\tmatch if substring (option vendor-class-identifier,0,9) = &quot;Panasonic&quot;;\n\toption option-66 &quot;10.1.1.50\/panasonic\/&quot;;\n}\nclass &quot;cisco&quot; {\n\tmatch if substring (option vendor-class-identifier,0,36) = &quot;Cisco Systems, Inc. IP Phone CP-7906&quot;;\n\toption option-66 &quot;10.1.1.50\/cisco\/&quot;;\n}\n\nclass &quot;grandstream&quot; {\n match if substring (option vendor-class-identifier,0,11) = &quot;Grandstream&quot;;\n option option-66 &quot;10.1.1.50\/grandstream\/&quot;;\n}\n\nclass &quot;dlink&quot; {\n\tmatch if (binary-to-ascii (16,8,&quot;:&quot;,substring(hardware,1,4)) = &quot;c8:d3:a3:8d&quot;) or\n\t(binary-to-ascii (16,8,&quot;:&quot;,substring(hardware,1,4)) = &quot;90:94:e4:72&quot;);\n\toption option-66 &quot;10.1.1.50\/dlink\/&quot;;\n}\n\nclass &quot;yealink&quot; {\n                match if substring (option vendor-class-identifier,0,7) = &quot;Yealink&quot;;\n                option option-66 &quot;10.1.1.50\/yealink\/&quot;;\n        }\n\n<\/pre>\n<p>Les t\u00e9l\u00e9phones ont d\u00fb \u00eatre exclus manuellement du pool g\u00e9n\u00e9ral. Sinon, ils ne voulaient tout simplement pas partir dans leur \"bassinet\".<br \/>\n<b class=\"spoiler_title\">Exemple de configuration de sous-r\u00e9seau<\/b><\/p>\n<pre>\nsous-r\u00e9seau 10.1.1.0 masque de sous-r\u00e9seau 255.255.255.0 {\n        option routeurs 10.1.1.1;\n        pool {\n                interdire membres de &quot;cisco&quot;;\n                interdire membres de &quot;panasonic&quot;;\n                interdire membres de &quot;dlink&quot;;\n                plage 10.1.1.230 10.1.1.240;\n        }\n        pool {\n                permettre membres de &quot;cisco&quot;;\n                plage 10.1.1.65 10.1.1.69;\n        }\n        pool {\n                permettre membres de &quot;panasonic&quot;;\n                plage 10.1.1.60 10.1.1.64;\n        }\n        pool {\n                permettre membres de &quot;dlink&quot;;\n                plage 10.1.1.55 10.1.1.59;\n        }\n}\n<\/pre>\n<p>Apr\u00e8s le red\u00e9marrage de tous les services impliqu\u00e9s, les t\u00e9l\u00e9phones se sont dirig\u00e9s en toute confiance vers le serveur tftp qui leur \u00e9tait attribu\u00e9. Il ne restait plus qu'\u00e0 les y placer.<\/p>\n<h4>Cisco 7906<\/h4>\n<p>\nCes appareils m'ont \u00e9t\u00e9 remis dans leur emballage d'origine. J'ai d\u00fb les reprogrammer pour les faire fonctionner avec Asterisk. Mais c'est une autre histoire. Dans ce cas pr\u00e9cis, pour configurer l'appareil, j'ai cr\u00e9\u00e9, selon les instructions, un fichier SEPAABBCCDDEEFF.cnf.xml \u00e0 la racine du serveur TFTP. O\u00f9 AABBCCDDEEFF est l'adresse MAC de l'appareil.<\/p>\n<p>Il a d\u00e9j\u00e0 \u00e9t\u00e9 \u00e9crit plusieurs fois sur la configuration des t\u00e9l\u00e9phones Cisco, donc je vais simplement laisser le fichier de configuration fonctionnel.<br \/>\n<b class=\"spoiler_title\">Configurations pour cisco<\/b><\/p>\n<pre>\ntrue\n SIP\n root\n ADMIN_PWD\n\n \n D-M-Y\n Central Pacific Standard Time\n     \n         \n             10.1.1.4\n              Unicast\n          \n     \n \n\n   \n 10.1.1.50\n \n 2000\n 5060\n 5061\n \n 10.1.1.50\n   \n \n\n Disable\n\n\n120\n \n\n \n true\n x-cisco-serviceuri-cfwdall\n x-cisco-serviceuri-pickup\n x-cisco-serviceuri-opickup\n x-cisco-serviceuri-gpickup\n x-cisco-serviceuri-meetme\n x-cisco-serviceuri-abbrdial\n false\n 2\n true\n true\n 2\n 2\n 0\n true\n false\n \n \n 6\n 10\n 180\n 3600\n 5\n 120\n 120\n 5\n 500\n 4000\n 70\n true\n None\n \n1\n false\n true\n false\n false\n none\n 101\n 3\navt\n 3\n false\n false\n Cisco Phone\n 2\n false\n 15000\n10\n true\n false\n 16384\n 32766\n\n \n 9\n 10.1.1.50\n 5060\n  2 \n 3\n false\n 3\n \n 4\n 5\n \n true\n true\n false\n true\n \n\n User #103\n 103\n 103\n SIP_PWD\n \n \n$num\n5060\n 184\n 0\n dialplan.xml\n \n\n *0#\n true\n 2\n \n\n\n false\n false\n 1\n 0\n 1\n 0\n 0\n 0\n 1\n 0\n 1,7\n 09:00\n 12:00\n 01:00\n 1\n 2\n 10.1.1.50\n 0\n 100\n 50\n \n 0\n 0\n 5\n 1\n 10.1.1.50\n 0\n 0\n 0\n 0\n 0\n 0\n 1\n 1\n \n1143565489-a3cbf294-7526-4c29-8791-c4fce4ce4c37\n\n Russian_Russian_Federation\n ru_RU\n \n utf-8\n \n\n \n \n \n \n1\n 0\n \n http:\/\/10.1.1.50\/provisioning\/cisco-services.xml\n \n \n \n \n http:\/\/10.1.1.50\/provisioning\/cisco-services.xml\n 96\n 0\n 96\n 2\n 0\n 0\n \n 3804\n &lt;!-- 10.1.1.50 --&gt;\n  \n\n false\n 1\n<\/pre>\n<p><\/p>\n<h4>D-Link DPH-150S\/F3<\/h4>\n<p>\nSi vous envisagez d'acheter un t\u00e9l\u00e9phone de cette s\u00e9rie, faites attention, l'auto-configuration n'est prise en charge que sur les appareils 150S\/F3. Sur l'appareil 150S\/F2 que j'ai eu entre les mains, cette fonctionnalit\u00e9 n'a pas \u00e9t\u00e9 trouv\u00e9e.<\/p>\n<p>Le fichier de configuration peut \u00eatre au format xml ou en texte ordinaire. Pour le xml, il y a une exigence : la balise doit commencer au d\u00e9but de la ligne, sinon le parseur l'ignorera et la valeur du param\u00e8tre correspondant ne changera pas.<\/p>\n<p>Deux fichiers sont utilis\u00e9s pour configurer le t\u00e9l\u00e9phone. f0D00580000.cfg \u2014 pour stocker les param\u00e8tres de tous les t\u00e9l\u00e9phones et 00112233aabb.cfg (adresse MAC en minuscules) pour les r\u00e9glages individuels. Les r\u00e9glages individuels ont naturellement une priorit\u00e9 plus \u00e9lev\u00e9e.<\/p>\n<p>L'ensemble complet des param\u00e8tres compte plus de mille lignes, afin de ne pas alourdir l'article, je vais d\u00e9crire l'ensemble minimal suffisant. <\/p>\n<p>Le n\u0153ud racine est obligatoire <b>VOIP_CONFIG_FILE<\/b> et le n\u0153ud imbriqu\u00e9 <b>version<\/b>. Les param\u00e8tres ne seront appliqu\u00e9s que si la version du fichier est sup\u00e9rieure \u00e0 celle des param\u00e8tres actuels dans l'appareil. Vous pouvez conna\u00eetre cette valeur via l'interface web du t\u00e9l\u00e9phone dans la section maintenance (gestion syst\u00e8me). Pour les t\u00e9l\u00e9phones avec les param\u00e8tres d'usine, dans les deux cas, c'est 2.0002. De plus, la version du fichier individuel doit \u00eatre sup\u00e9rieure \u00e0 celle du fichier commun.<\/p>\n<p>Je commencerai par le fichier de configuration g\u00e9n\u00e9rale pour tous les t\u00e9l\u00e9phones. En fait, il stocke tous les param\u00e8tres, le fichier individuel ne sera responsable que du num\u00e9ro de t\u00e9l\u00e9phone et de l'affichage \u00e0 l'\u00e9cran. <\/p>\n<p>Dans les deux blocs ci-dessous, les param\u00e8tres de fuseau horaire et de synchronisation temporelle sont d\u00e9finis, le port initial pour le RTP est configur\u00e9 et un pont r\u00e9seau entre les ports WAN et LAN de l'appareil est activ\u00e9.<\/p>\n<p><b class=\"spoiler_title\">Fragment \u21161<\/b><\/p>\n<pre>\nDHCP\n2\n1\n1\n0\nVOIP\n10000\n200\n10.1.1.4\n1\n<time>71<\/time>\n<time>UCT_011<\/time>\n0\n60\n12\n1500\n\n\n1\n1\n<\/pre>\n<p>Les noms des param\u00e8tres de configuration sont suffisamment explicites pour ne pas n\u00e9cessiter de description d\u00e9taill\u00e9e.<br \/>\n<b class=\"spoiler_title\">SIP pour une ligne<\/b><\/p>\n<pre>\n5060\n\n\nSIP1\n10.1.1.50\n5060\n3600\n1\n10.1.1.50\n1\n0\nG711A,G711U,G722\n<\/pre>\n<p><b class=\"spoiler_title\">Param\u00e8tres de gestion \u00e0 distance<\/b><\/p>\n<pre>\n23\n80\n0\n443\n1\n0\n\n\n\nItem1\n10.1.1.152\n10.1.1.160\n\n\n\n\nAccount1\nadmin\nADMIN_PWD\n10\n\n\nAccount2\nguest\nGUEST_PWD\n5\n<\/pre>\n<p><b class=\"spoiler_title\">Param\u00e8tres du t\u00e9l\u00e9phone<\/b><\/p>\n<pre>\n<menu>123<\/menu>\n123\n\n0\n112\nCompany\n5\n1\n30\n0\n<time>0<\/time>\n1\n0,,1\n0\n0\n1\n\n\nXML-PBook1\nPhonebook\nhttp:\/\/10.1.1.50\/provisioning\/dlink-phonebook.xml\n:\n0\n0\n\n\nfriend,home,work,business,classmate,colleague\n<\/pre>\n<p>Tous les autres param\u00e8tres resteront \u00ab par d\u00e9faut \u00bb. Maintenant, tout t\u00e9l\u00e9phone Dlink connect\u00e9 au r\u00e9seau adoptera imm\u00e9diatement l\u2019ensemble de param\u00e8tres communs. Pour d\u00e9finir des param\u00e8tres individuels pour un appareil, il est n\u00e9cessaire d\u2019avoir un fichier distinct. Ce fichier doit uniquement contenir les r\u00e9glages n\u00e9cessaires pour chaque abonn\u00e9.<br \/>\n<b class=\"spoiler_title\">param\u00e8tres de l'abonn\u00e9<\/b><\/p>\n<pre>\n2.0006\n\n\n\nSIP1\nUser #117\n117\n5060\n117\nSIP_PWD\n3600\n1\n5060\n117\nSIP_PWD\n<\/pre>\n<h4>Panasonic UT-KX123B<\/h4>\n<p>\nCes appareils re\u00e7oivent les param\u00e8tres selon un sch\u00e9ma l\u00e9g\u00e8rement diff\u00e9rent. La configuration est stock\u00e9e dans des fichiers texte. La taille maximale du fichier de configuration est de 120 Ko. Quel que soit le nombre de fichiers, leur taille totale ne doit pas d\u00e9passer 120 Ko.<br \/>\nLe fichier de configuration se compose d'un ensemble de lignes, auxquelles s'appliquent les conditions suivantes :<\/p>\n<ul>\n<li>La premi\u00e8re est toujours une ligne de commentaire, incluant la s\u00e9quence de caract\u00e8res suivante (44 octets) :<br \/>\n# Panasonic SIP Phone Standard Format File #<br \/>\nLa repr\u00e9sentation hexad\u00e9cimale de cette s\u00e9quence :<br \/>\n23 20 50 61 6E 61 73 6F 6E 69 63 20 53 49 50 20 50 68 6F 6E 65 20 53 74 61 6E 64 61 72 64 20 46 6F 72 6D 61 74 20 46 69 6C 65 20 23<br \/>\nPour \u00e9viter toute modification accidentelle de la s\u00e9quence de caract\u00e8res \u00e9tablie, il est recommand\u00e9 de commencer le fichier de configuration par la ligne :<br \/>\n# Panasonic SIP Phone Standard Format File # DO NOT CHANGE THIS LINE!\n<\/li>\n<li>Les fichiers de configuration doivent se terminer par une ligne vide.<\/li>\n<li>Chaque ligne doit se terminer par la s\u00e9quence \"\".<\/li>\n<li>La longueur maximale d'une ligne est de 537 octets, y compris la s\u00e9quence \"\".<\/li>\n<li>Les lignes suivantes sont ignor\u00e9es :\n<ul>\n<li>lignes d\u00e9passant la limite de 537 octets ;<\/li>\n<li>lignes vides ;<\/li>\n<li>Lignes de commentaires commen\u00e7ant par le caract\u00e8re \"#\" ;<\/li>\n<\/ul>\n<\/li>\n<li>La ligne de chaque param\u00e8tre est \u00e9crite sous la forme XXX=\"yyy\" (XXX : nom du param\u00e8tre, yyy : sa valeur). La valeur doit \u00eatre entour\u00e9e de guillemets.<\/li>\n<li>Le d\u00e9coupage de la ligne de param\u00e8tres en plusieurs lignes n'est pas autoris\u00e9. Cela entra\u00eenera une erreur de traitement du fichier de configuration et, par cons\u00e9quent, un \u00e9chec de l'initialisation.<\/li>\n<li>Les valeurs de certains param\u00e8tres doivent \u00eatre sp\u00e9cifi\u00e9es s\u00e9par\u00e9ment pour chaque ligne. Le param\u00e8tre avec le suffixe \"_1\" dans son nom est le param\u00e8tre pour la ligne 1 ; \"_2\" \u2014 pour la ligne 2, etc.<\/li>\n<li>La longueur maximale du nom du param\u00e8tre est de 32 caract\u00e8res.<\/li>\n<li>La longueur maximale de la valeur du param\u00e8tre est de 500 caract\u00e8res, \u00e0 l'exception des guillemets.<\/li>\n<li>Les espaces dans la cha\u00eene ne sont pas autoris\u00e9s, sauf lorsque la valeur comprend un caract\u00e8re d'espace. <\/li>\n<li>Les valeurs de certains param\u00e8tres peuvent \u00eatre sp\u00e9cifi\u00e9es comme \u00ab vides \u00bb pour \u00e9tablir une valeur de param\u00e8tre vide.<\/li>\n<li>Les param\u00e8tres sont sp\u00e9cifi\u00e9s sans ordre d\u00e9fini.<\/li>\n<li>Si le m\u00eame param\u00e8tre est sp\u00e9cifi\u00e9 dans le fichier de configuration plus d'une fois, la valeur indiqu\u00e9e en premier sera appliqu\u00e9e.<\/li>\n<\/ul>\n<p>Un ensemble aussi strict d'exigences pour le fichier de configuration m'a franchement d\u00e9\u00e7u. \u00c0 mon avis, l'impl\u00e9mentation de l'interaction avec <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/fr\/server\/dts-prohoster\/\"   title=\"serveur\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2960\">serveur<\/a> la gestion des t\u00e9l\u00e9phones Panasonic est extr\u00eamement peu pratique. Sur ce param\u00e8tre, le t\u00e9l\u00e9phone est nettement inf\u00e9rieur aux autres.<br \/>\nLors de la premi\u00e8re mise sous tension de l'appareil (ou apr\u00e8s une r\u00e9initialisation d'usine), il essaie de charger ce qu'on appelle le fichier produit (dans ce cas, c'est KX-UT123RU.cfg), qui doit contenir les chemins vers les autres fichiers de configuration.<br \/>\n<b class=\"spoiler_title\">Fichier produit<\/b># Panasonic SIP Phone Standard Format File # DO NOT CHANGE THIS LINE!<\/p>\n<p>CFG_STANDARD_FILE_PATH=\u00abtftp:\/\/10.1.1.50\/panasonic\/{mac}.cfg\u00bb<br \/>\nCFG_PRODUCT_FILE_PATH=\u00abtftp:\/\/10.1.1.50\/panasonic\/KX-UT123RU.cfg\u00bb<br \/>\nCFG_MASTER_FILE_PATH=\u00abtftp:\/\/10.1.1.50\/panasonic\/master.cfg\u00bb<\/p>\n<p>Apr\u00e8s cela, le t\u00e9l\u00e9phone affichera un message indiquant que la pr\u00e9paration a r\u00e9ussi et attendra qu'il soit red\u00e9marr\u00e9. Ce n'est qu'apr\u00e8s le red\u00e9marrage qu'il commencera \u00e0 traiter les fichiers de configuration qui lui sont destin\u00e9s.<\/p>\n<p>Dans le fichier master.cfg, il est recommand\u00e9 d'indiquer les param\u00e8tres g\u00e9n\u00e9raux pour tous les t\u00e9l\u00e9phones. Comme pour Dlink, je vais indiquer seulement quelques param\u00e8tres. Les noms des autres param\u00e8tres et leurs valeurs peuvent \u00eatre trouv\u00e9s dans la documentation sur le site du fabricant.<br \/>\n<b class=\"spoiler_title\">master.cfg<\/b>############################################################<br \/>\n# System Settings #<br \/>\n############################################################<br \/>\n## Login Account Settings<br \/>\nADMIN_ID=\u00abadmin\u00bb<br \/>\nADMIN_PASS=\u00abADMIN_PWD\u00bb<br \/>\nUSER_ID=\u00abuser\u00bb<br \/>\nUSER_PASS=\u00abUSER_PWD\u00bb<\/p>\n<p>## System Time Settings<br \/>\nNTP_ADDR=\u00ab10.1.1.4\u00bb<br \/>\nTIME_ZONE=\u00ab660\u00bb<br \/>\nDST_ENABLE=\u00abN\u00bb<br \/>\nDST_OFFSET=\u00ab60\u00bb<br \/>\nDST_START_MONTH=\u00ab3\u00bb<br \/>\nDST_START_ORDINAL_DAY=\u00ab2\u00bb<br \/>\nDST_START_DAY_OF_WEEK=\u00ab0\u00bb<br \/>\nDST_START_TIME=\u00ab120\u00bb<br \/>\nDST_STOP_MONTH=\u00ab10\u00bb<br \/>\nDST_STOP_ORDINAL_DAY=\u00ab2\u00bb<br \/>\nDST_STOP_DAY_OF_WEEK=\u00ab0\u00bb<br \/>\nDST_STOP_TIME=\u00ab120\u00bb<br \/>\nLOCAL_TIME_ZONE_POSIX=\"\"<\/p>\n<p>## Syslog Settings<br \/>\nSYSLOG_ADDR=\u00ab10.1.1.50\u00bb<br \/>\nSYSLOG_PORT=\u00ab514\u00bb<br \/>\nSYSLOG_EVENT_SIP=\u00ab6\u00bb<br \/>\nSYSLOG_EVENT_CFG=\u00ab6\u00bb<br \/>\nSYSLOG_EVENT_VOIP=\u00ab6\u00bb<br \/>\nSYSLOG_EVENT_TEL=\u00ab6\u00bb<\/p>\n<p>## Provisioning Settings<br \/>\nOPTION66_ENABLE=\u00abY\u00bb<br \/>\nOPTION66_REBOOT=\u00abN\u00bb<br \/>\nPROVISION_ENABLE=\u00abY\u00bb<br \/>\nCFG_STANDARD_FILE_PATH=\u00abtftp:\/\/10.1.1.50\/panasonic\/{mac}.cfg\u00bb<br \/>\nCFG_PRODUCT_FILE_PATH=\u00abtftp:\/\/10.1.1.50\/panasonic\/KX-UT123RU.cfg\u00bb<br \/>\nCFG_MASTER_FILE_PATH=\u00abtftp:\/\/10.1.1.50\/panasonic\/master.cfg\u00bb<\/p>\n<p>############################################################<br \/>\n# Network Settings #<br \/>\n############################################################<br \/>\n## IP Settings<br \/>\nCONNECTION_TYPE=\u00ab1\u00bb<br \/>\nHOST_NAME=\u00abUT123\u00bb<br \/>\nDHCP_DNS_ENABLE=\u00abY\u00bb<br \/>\nSTATIC_IP_ADDRESS=\"\"<br \/>\nSTATIC_SUBNET=\"\"<br \/>\nSTATIC_GATEWAY=\"\"<br \/>\nUSER_DNS1_ADDR=\"\"<br \/>\nUSER_DNS2_ADDR=\"\"<\/p>\n<p>## DNS Settings<br \/>\nDNS_QRY_PRLL=\u00abY\u00bb<br \/>\nDNS_PRIORITY=\u00abN\u00bb<br \/>\nDNS1_ADDR=\u00ab10.1.1.1\u00bb<br \/>\nDNS2_ADDR=\"\"<\/p>\n<p>## HTTP Settings<br \/>\nHTTPD_PORTOPEN_AUTO=\u00abY\u00bb<br \/>\nHTTP_VER=\u00ab1\u00bb<br \/>\nHTTP_USER_AGENT=\u00abPanasonic_{MODEL}\/{fwver} ({mac})\u00bb<br \/>\nHTTP_SSL_VERIFY=\u00ab0\u00bb<br \/>\nCFG_ROOT_CERTIFICATE_PATH=\"\"<\/p>\n<p>## XML Application Settings<br \/>\nXML_HTTPD_PORT=\u00ab6666\u00bb<br \/>\nXMLAPP_ENABLE=\u00abY\u00bb<br \/>\nXMLAPP_USERID=\"\"<br \/>\nXMLAPP_USERPASS=\"\"<br \/>\nXMLAPP_START_URL=\"\"<br \/>\nXMLAPP_INITIAL_URL=\" \"<br \/>\nXMLAPP_INCOMING_URL=\"\"<br \/>\nXMLAPP_TALKING_URL=\"\"<br \/>\nXMLAPP_MAKECALL_URL=\"\"<br \/>\nXMLAPP_CALLLOG_URL=\"\"<br \/>\nXMLAPP_IDLING_URL=\"\"<br \/>\nXMLAPP_LDAP_URL=\u00ab<noindex>10.1.1.50\/provisioning\/panasonic-phonebook.xml<\/noindex>\u00bb<br \/>\nXMLAPP_LDAP_USERID=\"\"<br \/>\nXMLAPP_LDAP_USERPASS=\"\"<\/p>\n<p>Dans le fichier de configuration individuel de l'appareil, seules les r\u00e9glages de l'abonn\u00e9 restent, comme d'habitude.<br \/>\n<b class=\"spoiler_title\">aabbccddeeff.cfg<\/b>DISPLAY_NAME_1=\u00abUtilisateur #168\u00bb<\/p>\n<p>PHONE_NUMBER_1=\u00ab168\u00bb<br \/>\nSIP_URI_1=\u00ab168\u00bb<br \/>\nLINE_ENABLE_1=\u00abActiv\u00e9\u00bb<br \/>\nPROFILE_ENABLE_1=\u00abActiv\u00e9\u00bb<br \/>\nSIP_AUTHID_1=\u00ab168\u00bb<br \/>\nSIP_PASS_1=\u00abSIP_PWD\u00bb<\/p>\n<p><\/p>\n<h4>Grandstream GXP-1400<\/h4>\n<p>\nLes param\u00e8tres de ces t\u00e9l\u00e9phones sont stock\u00e9s dans un fichier xml nomm\u00e9 cfg{mac}.xml, ou dans un fichier texte habituel nomm\u00e9 cfg{mac}. Ce t\u00e9l\u00e9phone demande uniquement le fichier de configuration individuel, donc il n'est pas possible d'optimiser les r\u00e9glages en les pla\u00e7ant dans un fichier commun. Une autre particularit\u00e9 de la configuration des appareils Grandstream est la nomenclature des param\u00e8tres. Tous sont num\u00e9rot\u00e9s et d\u00e9sign\u00e9s par P###. Par exemple :<\/p>\n<p>P1650 \u2013 concerne l'interface web pour la gestion du t\u00e9l\u00e9phone (0 \u2013 HTTPS, 1 \u2013 HTTP)<br \/>\nP47 \u2013 adresse du serveur SIP pour la connexion.<\/p>\n<p>Si la configuration est stock\u00e9e dans un fichier texte, les param\u00e8tres ne n\u00e9cessitent aucune groupement et peuvent \u00eatre dans n'importe quel ordre. Les lignes commen\u00e7ant par # sont consid\u00e9r\u00e9es comme des commentaires.<\/p>\n<p>Si les r\u00e9glages sont pr\u00e9sent\u00e9s au format xml, ils doivent \u00eatre imbriqu\u00e9s dans le n\u0153ud , qui \u00e0 son tour doit \u00eatre imbriqu\u00e9 dans . Tous les param\u00e8tres sont enregistr\u00e9s sous la forme de balises correspondantes, avec la valeur du param\u00e8tre \u00e0 l'int\u00e9rieur.<br \/>\n<b class=\"spoiler_title\">Exemple de configuration<\/b><\/p>\n<pre>\n1\n    <!-- Nom du compte. Ne peut pas \u00eatre vide. -->\n    109\n    <!-- SIP User ID -->\n    109\n    <!-- Authenticate ID -->\n    109\n    <!-- Authenticate password -->\n    SIP_PWD\n    <!-- Display Name (John Doe) -->\n    User# 109\n<!-- Param\u00e8tres communs -->\n        10.1.1.50\n        2\n   10.1.1.50<!-- serveur sip ligne 1 -->\n   0<!-- Ligne 2 d\u00e9sactiv\u00e9e -->\n   ADMIN_PWD<!-- mot de passe admin -->\n   USER_PWD<!-- mot de passe de la console web utilisateur -->\n   fr<!-- langue d'affichage -->\n        0<!-- Mise \u00e0 jour via TFTP -->\n        10.1.1.50\/grandstream\n   1<!-- verrouiller la configuration via le t\u00e9l\u00e9phone (basique uniquement) -->\n   TZc-11<!-- fuseau horaire -->\n   10.1.1.4<!-- serveur NTP -->\n        1<!-- T\u00e9l\u00e9charger PB depuis HTTP -->\n        http:\/\/10.1.1.50\/provisioning\/grandstream<!-- URL de la base du r\u00e9pertoire -->\n        30<!-- Mise \u00e0 jour automatique du PB dans 30 min -->\n<\/pre>\n<h4>Yealink T19 et T21<\/h4>\n<p>\nLes appareils de ces mod\u00e8les prennent en charge des fichiers de configuration individuels pour les appareils et des fichiers communs pour les mod\u00e8les. Dans mon cas, j'ai d\u00fb placer les param\u00e8tres communs dans les fichiers y000000000031.cfg et y000000000034.cfg respectivement. Les fichiers de configuration individuels sont nomm\u00e9s en fonction de l'adresse MAC : 00112233aabb.cfg.<\/p>\n<p>Les param\u00e8tres pour les Yealink sont stock\u00e9s au format texte. La seule exigence obligatoire est la pr\u00e9sence, dans la premi\u00e8re ligne, de la version du fichier, au format #!version:1.0.0.1.<\/p>\n<p>Tous les param\u00e8tres sont enregistr\u00e9s sous la forme param\u00e8tre = valeur. Les commentaires doivent commencer par le symbole \"#\". Les noms des param\u00e8tres et leurs valeurs peuvent \u00eatre trouv\u00e9s dans la documentation sur le site du fabricant.<br \/>\n<b class=\"spoiler_title\">param\u00e8tres g\u00e9n\u00e9raux<\/b>#!version:1.0.0.1<br \/>\n#Configure the WAN port type; 0-DHCP (default), 1-PPPoE, 2-Static IP Address;<br \/>\nnetwork.internet_port.type = 0<br \/>\n#Configure the PC port type; 0-Router, 1-Bridge (default);<br \/>\nnetwork.bridge_mode = 1<br \/>\n#Configure the access type of the web server; 0-Disabled, 1-HTTP &#038; HTTPS(default), 2-HTTP Only, 3-HTTPS Only;<br \/>\nnetwork.web_server_type = 3<br \/>\n#Configure the maximum local RTP port. It ranges from 0 to 65535, the default value is 11800.<br \/>\nnetwork.port.max_rtpport = 10100<br \/>\n#Configure the minimum local RTP port. It ranges from 0 to 65535, the default value is 11780.<br \/>\nnetwork.port.min_rtpport = 10000<br \/>\nsecurity.user_name.admin = root<br \/>\nsecurity.user_password = root:ADMIN_PWD<br \/>\nsecurity.user_name.user = user<br \/>\nsecurity.user_password = user:USER_PWD<br \/>\n#Specify the web language, the valid values are: English, Chinese_S, Turkish, Portuguese, Spanish, Italian, French, Russian, Deutsch and Czech.<br \/>\nlang.wui = Russe<br \/>\n#Specify the LCD language, the valid values are: English (default), Chinese_S, Chinese_T, German, French, Turkish, Italian, Polish, Spanish and Portuguese.<br \/>\nlang.gui = Russe<br \/>\n#Configure the time zone and time zone name. The time zone ranges from -11 to +12, the default value is +8.<br \/>\n#The default time zone name is China(Beijing).<br \/>\n#Refer to Yealink IP Phones User Guide for more available time zones and time zone names.<br \/>\nlocal_time.time_zone = +11<br \/>\nlocal_time.time_zone_name = Vladivostok<br \/>\n#Configure the domain name or the IP address of the NTP server. The default value is cn.pool.ntp.org.<br \/>\nlocal_time.ntp_server1 = 10.1.1.4<br \/>\n#Configure the logo mode of the LCD screen; 0-Disabled (default), 1-System logo, 2-Custom logo;<br \/>\nphone_setting.lcd_logo.mode = 1<br \/>\n#Configure the access URL and dispaly name of the remote phonebook. X ranges from 1 to 5.<br \/>\nremote_phonebook.data.1.url = <noindex>10.1.1.50\/provisioning\/yealink-phonebook.xml<\/noindex><br \/>\nremote_phonebook.data.1.name = Carnet d'adresses<br \/>\nfeatures.remote_phonebook.flash_time = 3600<\/p>\n<p>\n<b class=\"spoiler_title\">param\u00e8tres individuels<\/b>#!version:1.0.0.1<br \/>\n#Enable or disable the account1, 0-Disabled (default), 1-Enabled;<br \/>\naccount.1.enable = 1<br \/>\n#Configure the label displayed on the LCD screen for account1.<br \/>\naccount.1.label = T\u00e9l\u00e9phone de test<br \/>\n#Configure the display name of account1.<br \/>\naccount.1.display_name = Utilisateur 998<br \/>\n#Configure the username and password for register authentication.<br \/>\naccount.1.auth_name = 998<br \/>\naccount.1.password = 998<br \/>\n#Configure the register user name.<br \/>\naccount.1.user_name = 998<br \/>\n#Configure the SIP server address.<br \/>\naccount.1.sip_server_host = 10.1.1.50<br \/>\n#Specify the port for the SIP server. The default value is 5060.<br \/>\naccount.1.sip_server_port = 5060<\/p>\n<p>\nEn fin de compte, gr\u00e2ce \u00e0 la fonction exceptionnelle de l'auto-provisionnement, pr\u00e9vue dans les t\u00e9l\u00e9phones mentionn\u00e9s, il n'y a eu aucun probl\u00e8me avec la connexion de nouveaux appareils au r\u00e9seau. Tout s'est r\u00e9sum\u00e9 \u00e0 la d\u00e9couverte de l'adresse MAC du t\u00e9l\u00e9phone et \u00e0 la g\u00e9n\u00e9ration du fichier de configuration selon un mod\u00e8le. <\/p>\n<p>J'esp\u00e8re que vous avez lu jusqu'\u00e0 la fin et que vous avez tir\u00e9 profit de ce que vous avez lu.<\/p>\n<p>Merci pour votre attention.<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/237951\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435 \u041e\u0434\u043d\u0430\u0436\u0434\u044b \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043e\u0434\u043e\u0431\u0440\u0438\u043b\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442 \u043f\u043e \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044e IP \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0438\u0438 \u0432 \u043d\u0430\u0448\u0435\u0439 \u043a\u043e\u043d\u0442\u043e\u0440\u0435. \u0422\u0430\u043a \u043a\u0430\u043a \u043c\u043e\u0439 \u043e\u043f\u044b\u0442 \u0432 \u0434\u0430\u043d\u043d\u043e\u0439 \u043e\u0431\u043b\u0430\u0441\u0442\u0438 \u0431\u044b\u043b \u043c\u0438\u0437\u0435\u0440\u043d\u044b\u043c, \u0437\u0430\u0434\u0430\u0447\u0430 \u043f\u0440\u043e\u0431\u0443\u0434\u0438\u043b\u0430 \u0432\u043e \u043c\u043d\u0435 \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441 \u0438 \u044f \u043f\u043e\u0433\u0440\u0443\u0437\u0438\u043b\u0441\u044f \u0432 \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u0432 \u0432\u043e\u043f\u0440\u043e\u0441\u0430. \u041f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u0438 \u043f\u043e\u0433\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0440\u0435\u0448\u0438\u043b \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u043f\u0440\u0438\u043e\u0431\u0440\u0435\u0442\u0435\u043d\u043d\u044b\u043c\u0438 \u0437\u043d\u0430\u043d\u0438\u044f\u043c\u0438 \u2014 \u0432 \u043d\u0430\u0434\u0435\u0436\u0434\u0435, \u0447\u0442\u043e \u043a\u043e\u043c\u0443-\u0442\u043e \u043e\u043d\u0438 \u043f\u0440\u0438\u0433\u043e\u0434\u044f\u0442\u0441\u044f. \u0418\u0442\u0430\u043a\u2026 \u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0412 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 IP-\u0410\u0422\u0421 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-30399","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435 \u041e\u0434\u043d\u0430\u0436\u0434\u044b \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043e\u0434\u043e\u0431\u0440\u0438\u043b\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442 \u043f\u043e \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044e IP \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0438\u0438 \u0432 \u043d\u0430\u0448\u0435\u0439 \u043a\u043e\u043d\u0442\u043e\u0440\u0435.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/voip-zoopark-provisioning\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47VoIP \u0437\u043e\u043e\u043f\u0430\u0440\u043a \u2014 Provisioning | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435 \u041e\u0434\u043d\u0430\u0436\u0434\u044b \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043e\u0434\u043e\u0431\u0440\u0438\u043b\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442 \u043f\u043e \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044e IP \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0438\u0438 \u0432 \u043d\u0430\u0448\u0435\u0439 \u043a\u043e\u043d\u0442\u043e\u0440\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/voip-zoopark-provisioning\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:35:20+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:35:20+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Zoo VoIP \u2014 Provisioning | ProHoster","description":"Introduction Une fois, la direction a approuv\u00e9 une exp\u00e9rience d'impl\u00e9mentation de la t\u00e9l\u00e9phonie IP dans notre entreprise.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/voip-zoopark-provisioning","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47VoIP \u0437\u043e\u043e\u043f\u0430\u0440\u043a \u2014 Provisioning | ProHoster","og:description":"\u0412\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435 \u041e\u0434\u043d\u0430\u0436\u0434\u044b \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043e\u0434\u043e\u0431\u0440\u0438\u043b\u043e \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442 \u043f\u043e \u0432\u043d\u0435\u0434\u0440\u0435\u043d\u0438\u044e IP \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0438\u0438 \u0432 \u043d\u0430\u0448\u0435\u0439 \u043a\u043e\u043d\u0442\u043e\u0440\u0435.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/voip-zoopark-provisioning","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:35:20+00:00","article:modified_time":"2019-10-31T18:35:20+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"30399","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-22 15:31:07","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:35:24","updated":"2026-02-22 15:31:07","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/30399","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=30399"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/30399\/revisions"}],"predecessor-version":[{"id":162001,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/30399\/revisions\/162001"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=30399"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=30399"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=30399"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}