{"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\/da\/blog\/news\/voip-zoopark-provisioning","title":{"rendered":"VoIP zoologisk have \u2014 Provisioning","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<h4>Introduktion<\/h4>\n<p>\nEngang godkendte ledelsen et eksperiment med at implementere IP-telefoni p\u00e5 vores kontor. Da min erfaring p\u00e5 omr\u00e5det var minimal, v\u00e6kkede opgaven enorm interesse i mig, og jeg dykkede ned i studiet af forskellige aspekter af emnet. Efter at have gennemf\u00f8rt mit dyk besluttede jeg at dele de tilegnede viden \u2014 i h\u00e5bet om, at den vil v\u00e6re nyttig for nogen. S\u00e5\u2026<\/p>\n<h4>Kildedata<\/h4>\n<p>\nSom IP-PBX blev Asterisk valgt og implementeret. Telefonparken best\u00e5r af enheder fra Cisco 7906g, Panasonic UT-KX123B, Grandstream GXP1400 og Dlink DPH-150S(E)\/F3, Yealink T19 og T21. Denne variation skyldes, at der i eksperimentet blev truffet beslutning om at pr\u00f8ve forskellige l\u00f8sninger for at danne sig et indtryk af forholdet mellem pris\/ kvalitet\/ komfort.<\/p>\n<h4>Regler for godkendelse af merge-requests<\/h4>\n<p>\nM\u00e5let er at maksimere forenklingen og standardiseringen af processen til ops\u00e6tning af nye enheder. Alle telefoner skal synkroniseres tidsm\u00e6ssigt, have en telefonbog der kan indl\u00e6ses fra <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/server\/dts-los-angeles\/\"   title=\"server\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3475\">server<\/a> og give administratoradgang til indstillingerne.<\/p>\n<p>L\u00f8sningen p\u00e5 denne opgave er enkel \u2014 at implementere automatisk ops\u00e6tning af telefoner, s\u00e5kaldt Provisioning. Faktisk vil dette indl\u00e6g handle om min implementering af denne fremragende funktion.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>Ops\u00e6tning af tftpd, dhcpd<\/h4>\n<p>\nTil distribution af indstillinger til telefonerne valgte jeg tftp som en universel l\u00f8sning, som underst\u00f8ttes af alle platforme, og som er let at konfigurere og administrere.<\/p>\n<p>Der kr\u00e6vedes ikke nogen s\u00e6rlig ops\u00e6tning for tftp. Jeg installerede den standard tftpd og lagde alle n\u00f8dvendige filer i dens rodkatalog.<br \/>\nFilerne med indstillinger blev placeret i mapper i henhold til telefonproducenten. Desv\u00e6rre kom Cisco-enheden aldrig til sin mappe, s\u00e5 jeg m\u00e5tte opbevare den i roden.<\/p>\n<p>For at angive telefonernes lokation til tftp-serveren brugte jeg option-66. Derudover delte jeg dem op i separate klasser efter producent. Hver klasse fik sit eget adresseomr\u00e5de og en individuel mappe til konfigurationsfiler. For \u00f8vrigt m\u00e5tte jeg identificere D-link-enhederne efter MAC-adresser, da de ikke leverede producentinformation i dhcp-anmodningen.<\/p>\n<p><b class=\"spoiler_title\">Uddrag af 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>Telefonerne m\u00e5tte tvinges ud af det samlede pulje. Ellers ville de ikke g\u00e5 til deres 's\u00f8geomr\u00e5de'.<br \/>\n<b class=\"spoiler_title\">Eksempel p\u00e5 subnet-indstillinger<\/b><\/p>\n<pre>\nsubnet 10.1.1.0 netmask 255.255.255.0 {\n        option routers 10.1.1.1;\n        pool {\n                deny members of \"cisco\";\n                deny members of \"panasonic\";\n                deny members of \"dlink\";\n                range 10.1.1.230 10.1.1.240;\n        }\n        pool {\n                allow members of \"cisco\";\n                range 10.1.1.65 10.1.1.69;\n        }\n        pool {\n                allow members of \"panasonic\";\n                range 10.1.1.60 10.1.1.64;\n        }\n        pool {\n                allow members of \"dlink\";\n                range 10.1.1.55 10.1.1.59;\n        }\n}\n<\/pre>\n<p>Efter genstart af alle involverede tjenester, begyndte telefonerne sikkert at s\u00f8ge efter indstillingerne p\u00e5 deres tftp-server. Der var kun tilbage at placere dem der.<\/p>\n<h4>Cisco 7906<\/h4>\n<p>\nDisse enheder kom til mig i fabriksindpakning. Jeg m\u00e5tte \u00e6ndre firmware for at f\u00e5 dem til at fungere sammen med Asterisk. Men det er en anden historie. I dette konkrete tilf\u00e6lde oprettede jeg en fil SEPAABBCCDDEEFF.cnf.xml i roden af TFTP-serveren til konfiguration af enheden, if\u00f8lge instruktionen. Her er AABBCCDDEEFF enheds MAC-adresse.<\/p>\n<p>Der er skrevet om konfiguration af Cisco-telefoner mange gange f\u00f8r, s\u00e5 jeg vil blot efterlade den fungerende fil med indstillinger.<br \/>\n<b class=\"spoiler_title\">Indstillinger for 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>\nHvis du kun planl\u00e6gger at k\u00f8be en telefon af denne serie, skal du v\u00e6re opm\u00e6rksom p\u00e5, at automatisk konfiguration kun underst\u00f8ttes i apparaterne 150S\/F3. Den enhed 150S\/F2, jeg havde i mine h\u00e6nder, havde ikke denne funktionalitet.<\/p>\n<p>Konfigurationsfilen kan v\u00e6re i b\u00e5de xml-format og almindelig tekst. For xml er der et krav: tagget skal v\u00e6re i starten af linjen, ellers vil parseren ignorere det, og v\u00e6rdien af den tilsvarende parameter vil ikke \u00e6ndre sig.<\/p>\n<p>Til ops\u00e6tning af telefonen bruges der to filer. f0D00580000.cfg \u2014 til opbevaring af indstillingerne for alle telefoner og 00112233aabb.cfg (MAC-adresse i sm\u00e5 bogstaver) til individuelle indstillinger. Individuelle indstillinger har naturligvis h\u00f8jere prioritet.<\/p>\n<p>Det samlede s\u00e6t indstillinger best\u00e5r af mere end tusind linjer. For ikke at overfylde artiklen vil jeg beskrive det minimale, men tilstr\u00e6kkelige s\u00e6t indstillinger. <\/p>\n<p>Obligatorisk er rodnoden <b>VOIP_CONFIG_FILE<\/b> og den indlejrede node <b>version<\/b>. Indstillingerne vil kun blive anvendt, hvis filversionen er h\u00f8jere end de nuv\u00e6rende indstillinger i apparatet. Denne v\u00e6rdi kan findes gennem webgr\u00e6nsefladen af telefonen under vedligeholdelse (systemadministration). For telefoner med fabriksindstillinger er dette i begge tilf\u00e6lde 2.0002. Desuden skal versionen af den individuelle fil v\u00e6re h\u00f8jere end versionen af den generelle fil.<\/p>\n<p>F\u00f8rst vil jeg pr\u00e6sentere filen med den generelle konfiguration for alle telefoner. I princippet opbevarer den alle indstillingerne; den individuelle fil vil kun svare til telefonnummeret og teksten p\u00e5 sk\u00e6rmen. <\/p>\n<p>I de to blokke nedenfor indstilles parametre for tidszone og tidsynkronisering, startporten for RTP, og der aktiveres en netv\u00e6rksbro mellem WAN- og LAN-porte i apparatet.<\/p>\n<p><b class=\"spoiler_title\">Fragment nr.1<\/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>Navnene p\u00e5 konfigurationsparametrene er s\u00e5 intuitive, at de ikke beh\u00f8ver en detaljeret beskrivelse.<br \/>\n<b class=\"spoiler_title\">SIP til \u00e9n linje<\/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\">Indstillinger for fjernstyring<\/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\">Telefonindstillinger<\/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>Alle andre indstillinger forbliver 'som standard'. Nu vil enhver Dlink-telefon, der er tilsluttet netv\u00e6rket, straks modtage det f\u00e6lles s\u00e6t af parametre. For at angive individuelle parametre for apparatet kr\u00e6ves der en separat fil. I denne fil skal der kun angives de n\u00f8dvendige indstillinger for den enkelte abonnent.<br \/>\n<b class=\"spoiler_title\">abonnentindstillinger<\/b><\/p>\n<pre>\n2.0006\n\n\n\nSIP1\nBruger #117\n117\n5060\n117\nSIP_PWD\n3600\n1\n5060\n117\nSIP_PWD\n<\/pre>\n<h4>Panasonic UT-KX123B<\/h4>\n<p>\nDisse apparater modtager indstillinger p\u00e5 en lidt anden m\u00e5de. Konfigurationen gemmes i tekstfiler. Den maksimale st\u00f8rrelse for konfigurationsfilen er 120 KB. Uanset m\u00e6ngden af filer m\u00e5 den samlede st\u00f8rrelse ikke overstige 120 KB.<br \/>\nKonfigurationsfilen best\u00e5r af et s\u00e6t linjer, som er underlagt f\u00f8lgende betingelser:<\/p>\n<ul>\n<li>Den f\u00f8rste linje er altid en kommentar, der inkluderer f\u00f8lgende sekvens af tegn (44 byte):<br \/>\n# Panasonic SIP Phone Standard Format File #<br \/>\nDet hexadecimale repr\u00e6sentation af denne sekvens:<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 \/>\nFor at forhindre utilsigtede \u00e6ndringer af den fastsatte sekvens af tegn, anbefales det at starte konfigurationsfilen med linjen:<br \/>\n# Panasonic SIP Phone Standard Format File # DO NOT CHANGE THIS LINE!\n<\/li>\n<li>Konfigurationsfiler skal slutte med en tom linje.<\/li>\n<li>Hver linje skal afsluttes med sekvensen \"\".<\/li>\n<li>Den maksimale l\u00e6ngde af en linje er 537 byte, inklusive sekvensen \"\".<\/li>\n<li>F\u00f8lgende linjer ignoreres:\n<ul>\n<li>linjer, der overskrider gr\u00e6nsen p\u00e5 537 byte;<\/li>\n<li>tomme linjer;<\/li>\n<li>kommentarlinjer, der starter med symbolet \"#\";<\/li>\n<\/ul>\n<\/li>\n<li>Linjen for hver parameter skrives i formen XXX=\"yyy\" (XXX: parameternavn, yyy: dens v\u00e6rdi). V\u00e6rdien skal v\u00e6re omkranset af doble citationstegn.<\/li>\n<li>Opdeling af parameterlinjen i flere linjer er ikke tilladt. Dette vil f\u00f8re til en fejlh\u00e5ndtering af konfigurationsfilen og dermed til en fejl under initialiseringen.<\/li>\n<li>V\u00e6rdier for nogle parametre skal angives separat for hver linje. Parameteren med suffikset \"_1\" i navnet er parameteren for linje 1; \"_2\"\u2014 for linje 2 osv.<\/li>\n<li>Den maksimale l\u00e6ngde af parameternavnet er 32 karakterer.<\/li>\n<li>Den maksimale l\u00e6ngde af parameterens v\u00e6rdi er 500 tegn undtagen for dobbelte citationstegn.<\/li>\n<li>Der er ikke tilladt mellemrum i strengen, undtagen n\u00e5r v\u00e6rdien indeholder et mellemrum. <\/li>\n<li>V\u00e6rdierne af nogle parametre kan angives som 'tomme' for at indstille en tom parameter v\u00e6rdi.<\/li>\n<li>Parametrene angives uden nogen bestemt r\u00e6kkef\u00f8lge.<\/li>\n<li>Hvis den samme parameter angives i konfigurationsfilen mere end \u00e9n gang, anvendes den v\u00e6rdi, der er angivet f\u00f8rst.<\/li>\n<\/ul>\n<p>En s\u00e5 striks samling af krav til konfigurationsfilen har, \u00e6rligt talt, skuffet mig. Efter min mening er implementeringen af interaktionen med <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/server\/dts-prohoster\/\"   title=\"serveren\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2960\">serveren<\/a> styringssystemet for Panasonic-telefoner ekstremt besv\u00e6rligt. P\u00e5 dette punkt er telefonen betydeligt underlegen i forhold til andre.<br \/>\nVed f\u00f8rste opstart af enheden (eller efter nulstilling til fabriksindstillinger) fors\u00f8ger den at indl\u00e6se den s\u00e5kaldte produktfil (i dette tilf\u00e6lde er det KX-UT123RU.cfg), som skal indeholde stierne til de \u00f8vrige konfigurationsfiler.<br \/>\n<b class=\"spoiler_title\">Produktfil<\/b># Panasonic SIP Phone Standard Format File # DO NOT CHANGE THIS LINE!<\/p>\n<p>CFG_STANDARD_FILE_PATH='tftp:\/\/10.1.1.50\/panasonic\/{mac}.cfg'<br \/>\nCFG_PRODUCT_FILE_PATH='tftp:\/\/10.1.1.50\/panasonic\/KX-UT123RU.cfg'<br \/>\nCFG_MASTER_FILE_PATH='tftp:\/\/10.1.1.50\/panasonic\/master.cfg'<\/p>\n<p>Efter dette vil telefonen vise en meddelelse om, at forberedelsen er afsluttet med succes, og den vil vente p\u00e5, at den bliver genstartet. Efter genstart vil den begynde at behandle de n\u00f8dvendige konfigurationsfiler.<\/p>\n<p>I filen master.cfg anbefales det at angive generelle indstillinger for alle telefoner. Ligesom med Dlink vil jeg kun angive nogle f\u00e5 parametre. Navne p\u00e5 de \u00f8vrige parametre og deres v\u00e6rdier kan findes i dokumentationen p\u00e5 producentens hjemmeside.<br \/>\n<b class=\"spoiler_title\">master.cfg<\/b>############################################################<br \/>\n# System Settings #<br \/>\n############################################################<br \/>\n## Login Account Settings<br \/>\nADMIN_ID='admin'<br \/>\nADMIN_PASS='ADMIN_PWD'<br \/>\nUSER_ID='user'<br \/>\nUSER_PASS='USER_PWD'<\/p>\n<p>## System Time Settings<br \/>\nNTP_ADDR='10.1.1.4'<br \/>\nTIME_ZONE='660'<br \/>\nDST_ENABLE='N'<br \/>\nDST_OFFSET='60'<br \/>\nDST_START_MONTH='3'<br \/>\nDST_START_ORDINAL_DAY='2'<br \/>\nDST_START_DAY_OF_WEEK='0'<br \/>\nDST_START_TIME='120'<br \/>\nDST_STOP_MONTH='10'<br \/>\nDST_STOP_ORDINAL_DAY='2'<br \/>\nDST_STOP_DAY_OF_WEEK='0'<br \/>\nDST_STOP_TIME='120'<br \/>\nLOCAL_TIME_ZONE_POSIX=\"\"<\/p>\n<p>## Syslog Settings<br \/>\nSYSLOG_ADDR='10.1.1.50'<br \/>\nSYSLOG_PORT='514'<br \/>\nSYSLOG_EVENT_SIP='6'<br \/>\nSYSLOG_EVENT_CFG='6'<br \/>\nSYSLOG_EVENT_VOIP='6'<br \/>\nSYSLOG_EVENT_TEL='6'<\/p>\n<p>## Provisioning Settings<br \/>\nOPTION66_ENABLE='Y'<br \/>\nOPTION66_REBOOT='N'<br \/>\nPROVISION_ENABLE='Y'<br \/>\nCFG_STANDARD_FILE_PATH='tftp:\/\/10.1.1.50\/panasonic\/{mac}.cfg'<br \/>\nCFG_PRODUCT_FILE_PATH='tftp:\/\/10.1.1.50\/panasonic\/KX-UT123RU.cfg'<br \/>\nCFG_MASTER_FILE_PATH='tftp:\/\/10.1.1.50\/panasonic\/master.cfg'<\/p>\n<p>############################################################<br \/>\n# Network Settings #<br \/>\n############################################################<br \/>\n## IP Settings<br \/>\nCONNECTION_TYPE='1'<br \/>\nHOST_NAME='UT123'<br \/>\nDHCP_DNS_ENABLE='Y'<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='Y'<br \/>\nDNS_PRIORITY='N'<br \/>\nDNS1_ADDR='10.1.1.1'<br \/>\nDNS2_ADDR=\"\"<\/p>\n<p>## HTTP Settings<br \/>\nHTTPD_PORTOPEN_AUTO='Y'<br \/>\nHTTP_VER='1'<br \/>\nHTTP_USER_AGENT='Panasonic_{MODEL}\/{fwver} ({mac})'<br \/>\nHTTP_SSL_VERIFY='0'<br \/>\nCFG_ROOT_CERTIFICATE_PATH=\"\"<\/p>\n<p>## XML Application Settings<br \/>\nXML_HTTPD_PORT='6666'<br \/>\nXMLAPP_ENABLE='Y'<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='<noindex>10.1.1.50\/provisioning\/panasonic-phonebook.xml<\/noindex>\u00bb<br \/>\nXMLAPP_LDAP_USERID=\"\"<br \/>\nXMLAPP_LDAP_USERPASS=\"\"<\/p>\n<p>I den individuelle konfigurationsfil for enheden forbliver kun abonnentindstillingerne, som s\u00e6dvanligt.<br \/>\n<b class=\"spoiler_title\">aabbccddeeff.cfg<\/b>DISPLAY_NAME_1=\u00abBruger #168\u00bb<\/p>\n<p>PHONE_NUMBER_1=\u00ab168\u00bb<br \/>\nSIP_URI_1=\u00ab168\u00bb<br \/>\nLINE_ENABLE_1=\u00abAktiveret\u00bb<br \/>\nPROFILE_ENABLE_1=\u00abAktiveret\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>\nParametrene for disse telefoner gemmes i en enkelt xml-fil med navnet cfg{mac}.xml. Alternativt i en almindelig tekstfil med navnet cfg{mac}. Denne telefon anmoder kun om en individuel konfigurationsfil, s\u00e5 det vil ikke v\u00e6re muligt at optimere indstillingerne ved at flytte dem til en f\u00e6lles fil. En anden s\u00e6regenhed ved konfigurationen af Grandstream-enhederne er navngivningen af parametrene. Alle er nummererede og betegnes som P###. For eksempel:<\/p>\n<p>P1650 \u2013 ansvarlig for webgr\u00e6nsefladen til telefonstyring (0 \u2013 HTTPS, 1 \u2013 HTTP)<br \/>\nP47 \u2013 adressen p\u00e5 SIP-serveren til forbindelse.<\/p>\n<p>Hvis konfigurationen gemmes i en tekstfil, kr\u00e6ver parametrene ikke nogen gruppering og st\u00e5r i vilk\u00e5rlig r\u00e6kkef\u00f8lge. Linjer, der starter med #, betragtes som kommentarer.<\/p>\n<p>Hvis indstillingerne pr\u00e6senteres i xml-format, skal de v\u00e6re indlejret i noden , som i sin tur skal v\u00e6re indlejret i . Alle parametre skrives som tilsvarende tags med parameterens v\u00e6rdi inden i.<br \/>\n<b class=\"spoiler_title\">Eksempel p\u00e5 konfiguration<\/b><\/p>\n<pre>\n1\n    <!-- Konto navn. M\u00e5 ikke v\u00e6re tomt. -->\n    109\n    <!-- SIP bruger ID -->\n    109\n    <!-- Godkend ID -->\n    109\n    <!-- Godkendelsesadgangskode -->\n    SIP_PWD\n    <!-- Visningsnavn (John Doe) -->\n    Bruger# 109\n    <!-- F\u00e6lles indstillinger -->\n        10.1.1.50\n        2\n   10.1.1.50<!-- linje 1 sip server -->\n   0<!-- Linje 2 deaktiver -->\n   ADMIN_PWD<!-- admin adgangskode -->\n   USER_PWD<!-- bruger webkonsol adgangskode -->\n   da<!-- visningssprog -->\n        0<!-- Opgrader fra TFTP -->\n        10.1.1.50\/grandstream\n   1<!-- l\u00e5s konfiguration via telefon (grundl\u00e6ggende kun)-->\n   TZc-11<!-- tidszone -->\n   10.1.1.4<!-- NTP-server -->\n        1<!-- Download PB fra HTTP -->\n        http:\/\/10.1.1.50\/provisioning\/grandstream<!-- telefonbog base URL -->\n        30<!-- Automatisk opdatering PB om 30 min -->\n<\/pre>\n<h4>Yealink T19 og T21<\/h4>\n<p>\nMaskinerne i disse modeller underst\u00f8tter individuelle konfigurationsfiler for enheder og f\u00e6lles for modellerne. I mit tilf\u00e6lde m\u00e5tte jeg placere de f\u00e6lles parametre i filerne y000000000031.cfg og y000000000034.cfg henholdsvis. Individuelle konfigurationsfiler navngives i henhold til MAC-adressen: 00112233aabb.cfg.<\/p>\n<p>Indstillingerne for yealink'erne gemmes i tekstformat. Det eneste krav er, at den f\u00f8rste linje indeholder filversionen, i formatet #!version:1.0.0.1.<\/p>\n<p>Alle parametre skrives som parameter = v\u00e6rdi. Kommentaren skal starte med symbolet \"#\". Du kan finde navne p\u00e5 parametre og deres v\u00e6rdier i dokumentationen p\u00e5 producentens hjemmeside.<br \/>\n<b class=\"spoiler_title\">generelle indstillinger<\/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 = Russisk<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 = Russisk<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 = Telefonbog<br \/>\nfeatures.remote_phonebook.flash_time = 3600<\/p>\n<p>\n<b class=\"spoiler_title\">individuelle indstillinger<\/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 = Test telefon<br \/>\n#Configure the display name of account1.<br \/>\naccount.1.display_name = Bruger 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>\nSom resultat, takket v\u00e6re den fantastiske auto-provision-funktion, der er forudset i de n\u00e6vnte telefoner, opstod der ingen problemer med at forbinde de nye enheder til netv\u00e6rket. Det hele kom ned til at finde MAC-adressen p\u00e5 telefonen og generere konfigurationsfilen efter skabelonen. <\/p>\n<p>Jeg h\u00e5ber, at du har l\u00e6st til slut og f\u00e5et noget ud af det, du har l\u00e6st.<\/p>\n<p>Tak for opm\u00e6rksomheden.<br \/>\n<br \/>Kilde: <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.3 - 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\/da\/blog\/news\/voip-zoopark-provisioning\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\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\/da\/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\udd47VoIP zoo \u2014 Provisioning | ProHoster","description":"Introduktion En gang godkendte ledelsen et eksperiment med at implementere IP-telefoni i vores firma.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/voip-zoopark-provisioning","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\/da\/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\/da\/wp-json\/wp\/v2\/posts\/30399","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=30399"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/30399\/revisions"}],"predecessor-version":[{"id":162001,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/30399\/revisions\/162001"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=30399"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=30399"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=30399"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}