{"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\/sl\/blog\/news\/voip-zoopark-provisioning","title":{"rendered":"VoIP zoolo\u0161ki vrt \u2014 Provisioning","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<h4>Uvod<\/h4>\n<p>\nEnkrat je vodstvo odobrilo eksperiment z uvedbo IP telefonije v na\u0161em podjetju. Ker sem imel malo izku\u0161enj na tem podro\u010dju, me je naloga zelo pritegnila in se potopil sem v raziskovanje razli\u010dnih aspektov vpra\u0161anja. Po zaklju\u010dku raziskovanja sem se odlo\u010dil deliti pridobljeno znanje \u2014 upajo\u010d, da bo komu v pomo\u010d. Torej\u2026<\/p>\n<h4>Izvorni podatki<\/h4>\n<p>\nKot IP-telefon centralni sistem je bil izbran in implementiran Asterisk. Park telefonov sestavljajo naprave Cisco 7906g, Panasonic UT-KX123B, Grandstream GXP1400 in Dlink DPH-150S(E)\/F3, Yealink T19 in T21. Ta raznolikost je posledica odlo\u010ditve, da v okviru eksperimenta preizkusimo vse po malo, da oblikujemo svoje mnenje o razmerju cena\/kakovost\/udobje.<\/p>\n<h4>Naloga<\/h4>\n<p>\nMaximalno poenostaviti in unificirati postopek nastavitev novih naprav. Vse telefonske naprave morajo biti sinhronizirane po \u010dasu, imeti telefonski imenik, ki se nalo\u017ei s <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sl\/server\/dts-los-angeles\/\"   title=\"stre\u017enika\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3475\">stre\u017enika<\/a> in omogo\u010diti dostop do nastavitev za administratorja.<\/p>\n<p>Re\u0161itev te naloge je preprosta \u2014 uvesti samodejno nastavitev telefonov, tako imenovano Provisioning. O moji izvedbi te \u010dudovite funkcionalnosti bo tekla beseda.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h4>Nastavitev tftpd, dhcpd<\/h4>\n<p>\nZa razdelitev nastavitev telefonom sem izbral tftp kot univerzalno re\u0161itev, ki jo podpirajo vse platforme, enostavno za nastavitev in upravljanje.<\/p>\n<p>Specifi\u010dne nastavitve za tftp niso bile potrebne. Namestil sem standardni tftpd in vse potrebne datoteke postavil v njegovo korensko mapo.<br \/>\nDatoteke z nastavitvami sem razporedil po mapah glede na proizvajalca telefona. Vendar pa naprava Cisco ni \u017eelela dostopati do svoje mape, zato sem jo moral hraniti v korenu.<\/p>\n<p>Da bi telefonov obvestil o lokaciji tftp stre\u017enika, sem uporabil option-66. Poleg tega sem jih razdelil v lo\u010dene razrede glede na proizvajalca. Vsak razred je prejel svoj segment naslovov in individualno mapo za konfiguracijske datoteke. Mimogrede, naprave D-link sem moral dolo\u010diti po MAC-naslovih, saj informacije o proizvajalcu v dhcp-povpra\u0161evanju ne ponujajo.<\/p>\n<p><b class=\"spoiler_title\">Fragment 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>Telefonske naprave sem moral prisilno izklju\u010diti iz skupnega bazena. Druga\u010de niso \u017eelele zapustiti svojega \"\u017eabjega bazena\".<br \/>\n<b class=\"spoiler_title\">Primer nastavitev podomre\u017eja<\/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>Po ponovnem zagonu vseh vpletenih storitev so se telefoni samostojno usmerili po nastavitvah na dodeljen tftp stre\u017enik. Zdaj jih je le \u0161e potrebno tam namestiti.<\/p>\n<h4>Cisco 7906<\/h4>\n<p>\nTe naprave so pri\u0161le v tovarni\u0161ki embala\u017ei. Morala sem jih predelati, da sem jih povezala z asteriskom. Ampak to je druga zgodba. V tem specifi\u010dnem primeru sem za nastavitev naprave, v skladu z navodili, ustvarila v korenu tftp-stre\u017enika datoteko SEPAABBCCDDEEFF.cnf.xml. Kjer je AABBCCDDEEFF \u2014 MAC-naslov naprave.<\/p>\n<p>O nastavitvi telefonov Cisco je bilo \u017ee ve\u010dkrat napisano, zato preprosto pustim delovno datoteko z nastavitvami.<br \/>\n<b class=\"spoiler_title\">Nastavitve za 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>\n\u010ce se odlo\u010date za nakup telefona te serije, bodite previdni, saj samodejna nastavitev deluje le pri napravah 150S\/F3. Pri napravi 150S\/F2, ki sem jo imel v rokah, tak\u0161ne funkcionalnosti nisem na\u0161el.<\/p>\n<p>Konfiguracijska datoteka je lahko v formatu xml ali v obi\u010dajnem besedilnem formatu. Za xml velja eno pravilo: oznaka mora biti na za\u010detku vrstice, sicer jo parser ignorira in vrednost ustreznega parametra se ne bo spremenila.<\/p>\n<p>Za nastavitev telefona se uporabljata dve datoteki. f0D00580000.cfg \u2014 za shranjevanje nastavitev vseh telefonov in 00112233aabb.cfg (MAC-naslov v majhnih \u010drkah) za individualne nastavitve. Individualne nastavitve imajo ve\u010djo prioriteto.<\/p>\n<p>Celoten sklop nastavitev obsega ve\u010d kot tiso\u010d vrstic; da ne bi zagu\u0161ili \u010dlanka, bom opisal minimalen nabor potrebnih nastavitev. <\/p>\n<p>Obvezna sta osrednji vozli\u0161\u010de <b>VOIP_CONFIG_FILE<\/b> in v njem vdelano vozli\u0161\u010de <b>version<\/b>. Nastavitve bodo uporabljene le, \u010de bo razli\u010dica datoteke vi\u0161ja od trenutnih nastavitev v napravi. To vrednost lahko preverite preko .web-vmesnika telefona v razdelku maintenance (sistemskega upravljanja). Za telefone z tovarni\u0161kimi nastavitvami je v obeh primerih to 2.0002. Poleg tega mora biti razli\u010dica individualne datoteke vi\u0161ja od razli\u010dice skupne datoteke.<\/p>\n<p>Najprej predstavim datoteko s skupno konfiguracijo za vse telefone. V osnovi hrani vse nastavitve, individualna datoteka pa bo odgovorna le za \u0161tevilko telefona in napis na zaslonu. <\/p>\n<p>V dveh blokih, predstavljenih spodaj, se nastavijo parametri \u010dasovne cone in sinhronizacije \u010dasa, za\u010detni vrata za RTP in omogo\u010di se omre\u017eni most med WAN in LAN priklju\u010dki naprave.<\/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>\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u044f \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u044f\u0441\u043d\u044b, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0433\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f.<br \/>\n<b class=\"spoiler_title\">SIP \u0434\u043b\u044f \u043e\u0434\u043d\u043e\u0439 \u043b\u0438\u043d\u0438\u0438<\/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\">\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f<\/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\">\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430<\/b><\/p>\n<pre>\n<menu>123<\/menu>\n123\n\n0\n112\n\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f\n5\n1\n30\n0\n<time>0<\/time>\n1\n0,,1\n0\n0\n1\n\n\nXML-PBook1\n\u0422\u0435\u043b\u0435\u0444\u043e\u043d\u043d\u0430\u044f \u043a\u043d\u0438\u0433\u0430\nhttp:\/\/10.1.1.50\/provisioning\/dlink-phonebook.xml\n:\n0\n0\n\n\n\u0434\u0440\u0443\u0433,\u0434\u043e\u043c,\u0440\u0430\u0431\u043e\u0442\u0430,\u0431\u0438\u0437\u043d\u0435\u0441,\u043e\u0434\u043d\u043e\u043a\u043b\u0430\u0441\u0441\u043d\u0438\u043a,\u043a\u043e\u043b\u043b\u0435\u0433\u0430\n<\/pre>\n<p>\u0412\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043e\u0441\u0442\u0430\u043d\u0443\u0442\u0441\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e. \u0422\u0435\u043f\u0435\u0440\u044c \u043b\u044e\u0431\u043e\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d Dlink, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u044b\u0439 \u043a \u0441\u0435\u0442\u0438, \u0441\u0440\u0430\u0437\u0443 \u043f\u0440\u0438\u043c\u0435\u0442 \u043e\u0431\u0449\u0438\u0439 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043d\u0430\u0431\u043e\u0440 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432. \u0414\u043b\u044f \u0437\u0430\u0434\u0430\u043d\u0438\u044f \u0438\u043d\u0434\u0438\u0432\u0438\u0434\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u0430 \u043d\u0443\u0436\u0435\u043d \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 \u0444\u0430\u0439\u043b, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0434\u043b\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0430\u0431\u043e\u043d\u0435\u043d\u0442\u0430.<br \/>\n<b class=\"spoiler_title\">\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0430\u0431\u043e\u043d\u0435\u043d\u0442\u0430<\/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>\nTi aparati dobivaju postavke prema ne\u0161to druga\u010dijem obrascu. Konfiguracija se pohranjuje u tekstualne datoteke. Maksimalna veli\u010dina konfiguracijske datoteke iznosi 120 KB. Neovisno o broju datoteka, ukupna njihova veli\u010dina ne smije prelaziti 120 KB.<br \/>\nKonfiguracijska datoteka sastoji se od niza redaka, na koje se primjenjuju u sljede\u0107im uvjetima:<\/p>\n<ul>\n<li>Prvi redak uvijek mora biti komentar koji uklju\u010duje sljede\u0107u sekvencu znakova (44 bajta):<br \/>\n# Panasonic SIP Phone Standard Format File #<br \/>\n\u0160esnaestodnevni prikaz ove sekvencije:<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 \/>\nKako biste sprije\u010dili slu\u010dajno mijenjanje utvr\u0111ene sekvence znakova, preporu\u010duje se da konfiguracijsku datoteku zapo\u010dnete redkom:<br \/>\n# Panasonic SIP Phone Standard Format File # DO NOT CHANGE THIS LINE!\n<\/li>\n<li>Konfiguracijske datoteke moraju se zavr\u0161iti praznim redkom.<\/li>\n<li>Vsaka vrstica se mora kon\u010dati s zaporedjem \"\".<\/li>\n<li>Najdalj\u0161a dol\u017eina vrstice je 537 bajtov, vklju\u010dno s zaporedjem \"\".<\/li>\n<li>Sljede\u0107i redovi se ignoriraju:\n<ul>\n<li>redovi koji prema\u0161uju ograni\u010denje od 537 bajta;<\/li>\n<li>prazni redovi;<\/li>\n<li>vrstice komentarjev, ki se za\u010dnejo s simbolom \"#\";<\/li>\n<\/ul>\n<\/li>\n<li>Redak svakog parametra zapisuje se u obliku XXX=\"yyy\" (XXX: naziv parametra, yyy: njegova vrijednost). Vrijednost mora biti stavljena u dvostruke navodnike.<\/li>\n<li>Razbijanje retka parametara na vi\u0161e redaka nije dopu\u0161teno. To \u0107e izazvati gre\u0161ku obrade konfiguracijske datoteke i, posljedi\u010dno, do\u0107i \u0107e do kvara inicijalizacije.<\/li>\n<li>Vrednosti nekaterih parametrov je treba navesti posebej za vsako linijo. Parameter s pripono \"_1\" v imenu pomeni parameter za linijo 1; \"_2\"\u2014 za linijo 2 itd.<\/li>\n<li>Maksimalna duljina naziva parametra iznosi 32 znaka.<\/li>\n<li>Maksimalna duljina vrijednosti parametra iznosi 500 znakova, osim znaka dvostrukih navodnika.<\/li>\n<li>V vrsti ne sme biti presledkov, razen \u010de vrednost vsebuje simbol presledka. <\/li>\n<li>Vrednosti nekaterih parametrov je mogo\u010de dolo\u010diti kot 'prazne', da se nastavi prazna vrednost parametra.<\/li>\n<li>Parametri se dolo\u010dajo brez posebnega reda.<\/li>\n<li>\u010ce je isti parameter v konfiguracijski datoteki naveden ve\u010d kot enkrat, se uporabi vrednost, navedena prva.<\/li>\n<\/ul>\n<p>Taka stroga zahteva za konfiguracijsko datoteko me je, odkrito re\u010deno, razo\u010darala. Po mojem mnenju je implementacija interakcije z <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sl\/server\/dts-prohoster\/\"   title=\"serverom\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2960\">serverom<\/a> upravljanjem telefonov Panasonic izjemno neprakti\u010dna. Po tem parametru telefon bistveno zaostaja za drugimi.<br \/>\nOb prvem vklopu naprave (ali po ponastavitvi na tovarni\u0161ke nastavitve) posku\u0161a nalo\u017eiti tako imenovano datoteko izdelka (v tem primeru je to KX-UT123RU.cfg), v kateri morajo biti navedene poti do drugih konfiguracijskih datotek.<br \/>\n<b class=\"spoiler_title\">Datoteka izdelka<\/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>Nato telefon prika\u017ee sporo\u010dilo o uspe\u0161ni pripravi in \u010daka, da ga ponovno za\u017eenejo. \u0160ele po ponovnem zagonu bo za\u010del obdelovati ustrezne konfiguracijske datoteke.<\/p>\n<p>V datoteki master.cfg se priporo\u010dajo skupne nastavitve za vse telefone. Tako kot pri Dlink, bom navedel le nekatere parametre. Imena ostalih parametrov in njihove vrednosti lahko najdete v dokumentaciji na spletni strani proizvajalca.<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>V individualnem konfiguracijskem datoteke naprave, po tradiciji, ostanejo samo nastavitve naro\u010dnika.<br \/>\n<b class=\"spoiler_title\">aabbccddeeff.cfg<\/b>DISPLAY_NAME_1=\u00abUporabnik #168\u00bb<\/p>\n<p>PHONE_NUMBER_1=\u00ab168\u00bb<br \/>\nSIP_URI_1=\u00ab168\u00bb<br \/>\nLINE_ENABLE_1=\u00abOmogo\u010deno\u00bb<br \/>\nPROFILE_ENABLE_1=\u00abOmogo\u010deno\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>\nParametri teh telefonov se shranjujejo v eni xml-datoteki z imenom cfg{mac}.xml. Ali v navadni besedilni datoteki z imenom cfg{mac}. Ta telefon zahteva samo individualno konfiguracijsko datoteko, zato optimiziranje nastavitev s prenosom v skupno datoteko ne bo delovalo. \u0160e ena zna\u010dilnost nastavitve Grandstreamov je poimenovanje parametrov. Vse so \u0161tevil\u010dene in ozna\u010dene kot P###. Na primer:<\/p>\n<p>P1650 - odgovarja za spletni vmesnik za upravljanje s telefonom (0 - HTTPS, 1 - HTTP)<br \/>\nP47 - naslov SIP stre\u017enika za povezovanje.<\/p>\n<p>\u010ce se konfiguracija hrani v besedilni datoteki, parametri ne zahtevajo nobene skupine in gredo v katerem koli vrstnem redu. Vrstice, ki se za\u010dnejo z #, se obravnavajo kot komentarji.<\/p>\n<p>V primeru, da so nastavitve predstavljene v formatu xml, morajo biti vgrajene v vozli\u0161\u010de , ki mora biti vgrajeno v . Vsi parametri se zapisujejo v obliki ustreznih oznak s vrednostjo parametra znotraj.<br \/>\n<b class=\"spoiler_title\">Primer nastavitev<\/b><\/p>\n<pre>\n1\n    <!-- Ime ra\u010duna. Ne sme biti prazno. -->\n    109\n    <!-- SIP uporabni\u0161ka ID -->\n    109\n    <!-- Avtorizacijska ID -->\n    109\n    <!-- Avtorizacijska geslo -->\n    SIP_PWD\n    <!-- Prikazno ime (John Doe) -->\n    User# 109\n<!-- Skupne nastavitve -->\n        10.1.1.50\n        2\n   10.1.1.50<!-- stre\u017enik sip linije 1 -->\n   0<!-- Linija 2 onemogo\u010di -->\n   ADMIN_PWD<!-- admin geslo -->\n   USER_PWD<!-- geslo za uporabni\u0161ki spletni konzolo -->\n   ru<!-- jezik prikazovanja -->\n        0<!-- Nadgradnja preko TFTP -->\n        10.1.1.50\/grandstream\n   1<!-- zaklepanje konfiguracije preko telefona (samo osnovna) -->\n   TZc-11<!-- \u010dasovna cona -->\n   10.1.1.4<!-- NTP stre\u017enik -->\n        1<!-- Pridobitev PB preko HTTP -->\n        http:\/\/10.1.1.50\/provisioning\/grandstream<!-- osnovni URL za telefon -->\n        30<!-- Samodejna posodobitev PB v 30 min -->\n<\/pre>\n<h4>Yealink T19 in T21<\/h4>\n<p>\nAparati tehni\u0161kih modelov podpirajo individualne konfiguracijske datoteke za naprave in skupne za modele. V mojem primeru sem skupne parametre postavil v datoteke y000000000031.cfg in y000000000034.cfg. Individualne konfiguracijske datoteke se imenujejo v skladu z MAC-naslovom: 00112233aabb.cfg.<\/p>\n<p>Nastavitve za yealink naprave se shranjujejo v tekstovnem formatu. Edina obvezna zahteva je, da prva vrstica vsebuje razli\u010dico datoteke v formatu #!version:1.0.0.1.<\/p>\n<p>Vsi parametri so zapisani v obliki parameter = vrednost. Komentarji se morajo za\u010deti s simbolom \"#\". Imena parametrov in njihove vrednosti so na voljo v dokumentaciji na spletni strani proizvajalca.<br \/>\n<b class=\"spoiler_title\">op\u0161ti parametri<\/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 = Slovenian<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 = Slovenian<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 = Telefonni imenik<br \/>\nfeatures.remote_phonebook.flash_time = 3600<\/p>\n<p>\n<b class=\"spoiler_title\">individualne nastavitve<\/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 = Testni telefon<br \/>\n#Configure the display name of account1.<br \/>\naccount.1.display_name = Uporabnik 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>\nNa koncu, zahvaljujo\u010d odli\u010dni funkciji auto-provision, ki je predvidena v omenjenih telefonih, ni bilo te\u017eav pri povezovanju novih naprav v omre\u017eje. Vse se je zmanj\u0161alo na ugotavljanje MAC-naslova telefona in generiranje konfiguracijske datoteke po predlogi. <\/p>\n<p>Upam, da ste prebrali do konca in izvlekli korist iz prebranega.<\/p>\n<p>Hvala na pa\u017enji.<br \/>\n<br \/>Izvor: <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.4 - 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\/sl\/blog\/news\/voip-zoopark-provisioning\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sl_SI\" \/>\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\/sl\/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 \u017eivalski vrt \u2014 Provisioning | ProHoster","description":"Uvod Enkrat je vodstvo odobrilo eksperiment za uvedbo IP telefonije v na\u0161em podjetju.","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/news\/voip-zoopark-provisioning","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sl_SI","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\/sl\/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\/sl\/wp-json\/wp\/v2\/posts\/30399","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/comments?post=30399"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/30399\/revisions"}],"predecessor-version":[{"id":162001,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/30399\/revisions\/162001"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=30399"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=30399"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=30399"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}