VoIP Zoo - Provisioning

Ynlieding

Op in dei hat it management in eksperimint goedkard om IP-telefony yn ús kantoar yn te fieren. Om't myn ûnderfining op dit mêd skrap wie, wekte de taak in protte belangstelling by my op en die ik my yn it bestudearjen fan ferskate aspekten fan 'e kwestje. Oan 'e ein fan' e dûk besleat ik de kennis dy't ik opdien hie te dielen yn 'e hope dat it nuttich wêze soe foar ien. Sa…

Roald gegevens

Asterisk waard selektearre en ynset as in IP PBX. De telefoan float bestiet út Cisco 7906g, Panasonic UT-KX123B, Grandstream GXP1400 en Dlink DPH-150S (E) / F3, Yealink T19 en T21 apparaten. Dizze fariaasje komt troch it feit dat as ûnderdiel fan it eksperimint besletten is om fan alles in bytsje te besykjen om in miening te foarmjen oer de ferhâlding priis/kwaliteit/gemak.

Objective

Ienfâldigje en ferienigje it proses fan it ynstellen fan nije apparaten safolle mooglik. Alle telefoans moatte tiid syngronisearre, hawwe in telefoan boek laden fan de tsjinner en jouwe tagong ta ynstellings foar de behearder.

De oplossing foar dit probleem is simpel - útfiere automatyske konfiguraasje fan telefoans, de saneamde. Provinsje. Eins sil myn ymplemintaasje fan dizze prachtige funksje besprutsen wurde.

Konfigurearje tftpd, dhcpd

Om ynstellings te fersprieden nei tillefoans, keas ik tftp as in universele opsje, stipe troch alle platfoarms, maklik te konfigurearjen en te behearjen.

Gjin spesifike konfiguraasje wie nedich foar tftp. Ik ynstalleare standert tftpd en pleatste alle nedige bestannen yn syn root-map.
Ik pleatste de ynstellingsbestannen yn mappen yn oerienstimming mei de tillefoanfabrikant. Wier, it Cisco-apparaat gie nea yn syn map, dus ik moast it opslaan yn syn root.

Om de tillefoans nei de lokaasje fan 'e tftp-tsjinner te wizen, brûkte ik opsje-66. Dêrneist ferdielde hy se yn aparte klassen troch fabrikant. Elke klasse krige in eigen adressegment en in yndividuele map foar konfiguraasjebestannen. Trouwens, apparaten fan D-link moasten wurde berekkene troch MAC-adressen, om't se gjin ynformaasje oer de fabrikant leverje yn it dhcp-oanfraach.

Fragmint dhcpd.conf

# Spesifisearje de fereaske opsjes opsje opsje-66 koade 66 = tekst; class "panasonic" { match if substring (option vendor-class-identifier,0,9) = "Panasonic"; opsje opsje-66 "10.1.1.50/panasonic/"; } class "cisco" { match if substring (option vendor-class-identifier,0,36) = "Cisco Systems, Inc. IP-tillefoan CP-7906"; opsje opsje-66 "10.1.1.50/cisco/"; } class "grandstream" { match if substring (option vendor-class-identifier,0,11) = "Grandstream"; opsje opsje-66 "10.1.1.50/grandstream/"; } klasse "dlink" { match if (binary-to-ascii (16,8,":",substring(hardware,1,4)) = "c8:d3:a3:8d") of (binary-to-ascii) (16,8,":",substring(hardware,1,4)) = "90:94:e4:72"); opsje opsje-66 "10.1.1.50/dlink/"; } class "yealink" { match if substring (option vendor-class-identifier,0,7) = "Yealink"; opsje opsje-66 "10.1.1.50/yealink/"; }

Tillefoanen moasten mei geweld útsletten wurde fan it algemiene swimbad. Oars woenen se net nei harren “peaterbad”.
Foarbyld fan subnet ynstellings

subnet 10.1.1.0 netmask 255.255.255.0 { opsje routers 10.1.1.1; pool { wegerje leden fan "cisco"; wegerje leden fan "panasonic"; wegerje leden fan "dlink"; berik 10.1.1.230 10.1.1.240; } pool { tastean leden fan "cisco"; berik 10.1.1.65 10.1.1.69; } pool { tastean leden fan "panasonic"; berik 10.1.1.60 10.1.1.64; } pool { tastean leden fan "dlink"; berik 10.1.1.55 10.1.1.59; } }

Nei it opnij starte fan alle belutsen tsjinsten, gongen de tillefoans mei fertrouwen nei har tawiisde tftp-tsjinner foar ynstellings. It bliuwt allinich om se dêr te pleatsen.

Cisco 7906

Ik krige dizze apparaten yn har orizjinele ferpakking. Ik moast it feroarje om freonen te meitsjen mei asterisk. Mar dat is in oar ferhaal. Yn in spesifyk gefal, om it apparaat te konfigurearjen, neffens de ynstruksjes, haw ik it bestân SEPAABBCCDDEEFF.cnf.xml makke yn 'e root fan' e tftp-tsjinner. Wêr't AABBCCDDEEFF it MAC-adres fan it apparaat is.

It is al skreaun mear as ien kear oer it ynstellen fan telefoans út Cisco, dus ik lit mar in wurkjend triem mei de ynstellings.
Ynstellings foar Cisco

<?xml version="1.0" encoding="UTF-8"?>
<device xsi_type="axl:XIPPhone" ctiid="94">
<fullConfig>true</fullConfig>
<deviceProtocol>SIP</deviceProtocol>
<sshUserId>root</sshUserId>
<sshPassword>ADMIN_PWD</sshPassword>
<devicePool>
<dateTimeSetting>
<dateTemplate>D-M-Y</dateTemplate>
<timeZone>Central Pacific Standard Time</timeZone>
<ntps>
<ntp>
<name>10.1.1.4</name>
<ntpMode>Unicast</ntpMode>
</ntp>
</ntps>
</dateTimeSetting>
<callManagerGroup>
<members> <member priority="0"> <callManager>
<name>10.1.1.50</name>
<ports>
<ethernetPhonePort>2000</ethernetPhonePort>
<sipPort>5060</sipPort>
<securedSipPort>5061</securedSipPort>
</ports>
<processNodeName>10.1.1.50</processNodeName>
</callManager> </member> </members>
</callManagerGroup>
<srstInfo>
<srstOption>Disable</srstOption>
</srstInfo>
<connectionMonitorDuration>120</connectionMonitorDuration>
</devicePool>
<sipProfile>
<sipCallFeatures>
<cnfJoinEnabled>true</cnfJoinEnabled>
<callForwardURI>x-cisco-serviceuri-cfwdall</callForwardURI>
<callPickupURI>x-cisco-serviceuri-pickup</callPickupURI>
<callPickupListURI>x-cisco-serviceuri-opickup</callPickupListURI>
<callPickupGroupURI>x-cisco-serviceuri-gpickup</callPickupGroupURI>
<meetMeServiceURI>x-cisco-serviceuri-meetme</meetMeServiceURI>
<abbreviatedDialURI>x-cisco-serviceuri-abbrdial</abbreviatedDialURI>
<rfc2543Hold>false</rfc2543Hold>
<callHoldRingback>2</callHoldRingback>
<localCfwdEnable>true</localCfwdEnable>
<semiAttendedTransfer>true</semiAttendedTransfer>
<anonymousCallBlock>2</anonymousCallBlock>
<callerIdBlocking>2</callerIdBlocking>
<dndControl>0</dndControl>
<remoteCcEnable>true</remoteCcEnable>
<retainForwardInformation>false</retainForwardInformation>
</sipCallFeatures>
<sipStack>
<sipInviteRetx>6</sipInviteRetx>
<sipRetx>10</sipRetx>
<timerInviteExpires>180</timerInviteExpires>
<timerRegisterExpires>3600</timerRegisterExpires>
<timerRegisterDelta>5</timerRegisterDelta>
<timerKeepAliveExpires>120</timerKeepAliveExpires>
<timerSubscribeExpires>120</timerSubscribeExpires>
<timerSubscribeDelta>5</timerSubscribeDelta>
<timerT1>500</timerT1>
<timerT2>4000</timerT2>
<maxRedirects>70</maxRedirects>
<remotePartyID>true</remotePartyID>
<userInfo>None</userInfo>
</sipStack>
<autoAnswerTimer>1</autoAnswerTimer>
<autoAnswerAltBehavior>false</autoAnswerAltBehavior>
<autoAnswerOverride>true</autoAnswerOverride>
<transferOnhookEnabled>false</transferOnhookEnabled>
<enableVad>false</enableVad>
<preferredCodec>none</preferredCodec>
<dtmfAvtPayload>101</dtmfAvtPayload>
<dtmfDbLevel>3</dtmfDbLevel>
<dtmfOutofBand>avt</dtmfOutofBand>
<kpml>3</kpml>
<alwaysUsePrimeLine>false</alwaysUsePrimeLine>
<alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>
<phoneLabel>Cisco Phone</phoneLabel>
<stutterMsgWaiting>2</stutterMsgWaiting>
<callStats>false</callStats>
<offhookToFirstDigitTimer>15000</offhookToFirstDigitTimer>
<silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>
<disableLocalSpeedDialConfig>true</disableLocalSpeedDialConfig>
<poundEndOfDial>false</poundEndOfDial>
<startMediaPort>16384</startMediaPort>
<stopMediaPort>32766</stopMediaPort>
<sipLines>
<line button="1" lineIndex="1">
<featureID>9</featureID>
<proxy>10.1.1.50</proxy>
<port>5060</port>
<autoAnswer> <autoAnswerEnabled>2</autoAnswerEnabled> </autoAnswer>
<callWaiting>3</callWaiting>
<sharedLine>false</sharedLine>
<messageWaitingLampPolicy>3</messageWaitingLampPolicy>
<messagesNumber></messagesNumber>
<ringSettingIdle>4</ringSettingIdle>
<ringSettingActive>5</ringSettingActive>
<forwardCallInfoDisplay>
<callerName>true</callerName>
<callerNumber>true</callerNumber>
<redirectedNumber>false</redirectedNumber>
<dialedNumber>true</dialedNumber>
</forwardCallInfoDisplay>
<featureLabel></featureLabel>
<displayName>User #103</displayName>
<name>103</name>
<authName>103</authName>
<authPassword>SIP_PWD</authPassword>
</line>
</sipLines>
<externalNumberMask>$num</externalNumberMask>
<voipControlPort>5060</voipControlPort>
<dscpForAudio>184</dscpForAudio>
<ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
<dialTemplate>dialplan.xml</dialTemplate>
</sipProfile>
<commonProfile>
<phonePassword>*0#</phonePassword>
<backgroundImageAccess>true</backgroundImageAccess>
<callLogBlfEnabled>2</callLogBlfEnabled>
</commonProfile>
<loadInformation></loadInformation>
<vendorConfig>
<disableSpeaker>false</disableSpeaker>
<disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
<forwardingDelay>1</forwardingDelay>
<pcPort>0</pcPort>
<settingsAccess>1</settingsAccess>
<garp>0</garp>
<voiceVlanAccess>0</voiceVlanAccess>
<videoCapability>0</videoCapability>
<autoSelectLineEnable>1</autoSelectLineEnable>
<webAccess>0</webAccess>
<daysDisplayNotActive>1,7</daysDisplayNotActive>
<displayOnTime>09:00</displayOnTime>
<displayOnDuration>12:00</displayOnDuration>
<displayIdleTimeout>01:00</displayIdleTimeout>
<spanToPCPort>1</spanToPCPort>
<loggingDisplay>2</loggingDisplay>
<loadServer>10.1.1.50</loadServer>
<recordingTone>0</recordingTone>
<recordingToneLocalVolume>100</recordingToneLocalVolume>
<recordingToneRemoteVolume>50</recordingToneRemoteVolume>
<recordingToneDuration></recordingToneDuration>
<displayOnWhenIncomingCall>0</displayOnWhenIncomingCall>
<rtcp>0</rtcp>
<moreKeyReversionTimer>5</moreKeyReversionTimer>
<autoCallSelect>1</autoCallSelect>
<logServer>10.1.1.50</logServer>
<g722CodecSupport>0</g722CodecSupport>
<headsetWidebandUIControl>0</headsetWidebandUIControl>
<handsetWidebandUIControl>0</handsetWidebandUIControl>
<headsetWidebandEnable>0</headsetWidebandEnable>
<handsetWidebandEnable>0</handsetWidebandEnable>
<peerFirmwareSharing>0</peerFirmwareSharing>
<enableCdpSwPort>1</enableCdpSwPort>
<enableCdpPcPort>1</enableCdpPcPort>
</vendorConfig>
<versionStamp>1143565489-a3cbf294-7526-4c29-8791-c4fce4ce4c37</versionStamp>
<userLocale>
<name>Russian_Russian_Federation</name>
<langCode>ru_RU</langCode>
<version></version>
<winCharSet>utf-8</winCharSet>
</userLocale>
<networkLocale></networkLocale>
<networkLocaleInfo>
<name></name>
<version></version>
</networkLocaleInfo>
<deviceSecurityMode>1</deviceSecurityMode>
<idleTimeout>0</idleTimeout>
<authenticationURL></authenticationURL>
<directoryURL>http://10.1.1.50/provisioning/cisco-services.xml</directoryURL>
<idleURL></idleURL>
<informationURL></informationURL>
<messagesURL></messagesURL>
<proxyServerURL></proxyServerURL>
<servicesURL>http://10.1.1.50/provisioning/cisco-services.xml</servicesURL>
<dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>
<dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>
<dscpForCm2Dvce>96</dscpForCm2Dvce>
<transportLayerProtocol>2</transportLayerProtocol>
<singleButtonBarge>0</singleButtonBarge>
<capfAuthMode>0</capfAuthMode>
<capfList><capf>
<phonePort>3804</phonePort>
<!-- <processNodeName>10.1.1.50</processNodeName> -->
</capf> </capfList>
<certHash></certHash>
<encrConfig>false</encrConfig>
<advertiseG722Codec>1</advertiseG722Codec>
</device>

D-Link DPH-150S/F3

As jo ​​​​gewoan in tillefoan yn dizze searje wolle keapje, wês dan foarsichtich, auto-tuning wurdt allinich stipe yn 150S / F3-apparaten. Op it 150S/F2-apparaat dat yn myn hannen kaam, fûn ik sa'n funksjonaliteit net.

It konfiguraasjetriem kin wêze yn xml- of platte tekstformaat. D'r is ien eask foar xml: de tag moat oan it begjin fan 'e rigel stean, oars sil de parser it negearje en sil de wearde fan 'e oerienkommende parameter net feroarje.

Twa bestannen wurde brûkt om de tillefoan te konfigurearjen. f0D00580000.cfg - foar it bewarjen fan ynstellings foar alle telefoans en 00112233aabb.cfg (MAC-adres yn lytse letters) foar yndividuele ynstellings. Yndividuele ynstellingen hawwe fansels hegere prioriteit.

De folsleine set ynstellings befettet mear as tûzen rigels, om it artikel net te rommeljen, sil ik de minimaal genôch set ynstellings beskriuwe.

It rootknooppunt is ferplicht VOIP_CONFIG_FILE en it knooppunt dêryn nestele ferzje. De ynstellings sille allinich tapast wurde as de triemferzje heger is dan de hjoeddeistige ynstellingen yn it apparaat. Jo kinne fine út dizze wearde fia de telefoan syn web ynterface yn de ûnderhâld seksje (systeem behear). Foar tillefoans mei fabryksynstellingen is it yn beide gefallen 2.0002. Derneist moat de yndividuele triemferzje grutter wêze as de dielde triemferzje.

Earst sil ik in bestân leverje mei in mienskiplike konfiguraasje foar alle tillefoans. Yn feite, it bewarret alle ynstellings de yndividuele triem sil allinnich wêze ferantwurdlik foar it telefoannûmer en de ynskripsje op it skerm.

Yn 'e twa blokken hjirûnder binne de tiidsône en tiidsyngronisaasjeparameters ynsteld, de earste poarte foar RTP en de netwurkbrêge tusken de WAN- en LAN-ferbiningen fan it apparaat is ynskeakele.

Fragmint nr. 1

<GLOBAL_CONFIG_MODULE>
<WAN_Mode>DHCP</WAN_Mode>
<Default_Protocol>2</Default_Protocol>
<Enable_DHCP>1</Enable_DHCP>
<DHCP_Auto_DNS>1</DHCP_Auto_DNS>
<DHCP_Auto_Time>0</DHCP_Auto_Time>
<Host_Name>VOIP</Host_Name>
<RTP_Initial_Port>10000</RTP_Initial_Port>
<RTP_Port_Quantity>200</RTP_Port_Quantity>
<SNTP_Server>10.1.1.4</SNTP_Server>
<Enable_SNTP>1</Enable_SNTP>
<Time_Zone>71</Time_Zone>
<Time_Zone_Name>UCT_011</Time_Zone_Name>
<Enable_DST>0</Enable_DST>
<SNTP_Timeout>60</SNTP_Timeout>
<Default_UI>12</Default_UI>
<MTU_Length>1500</MTU_Length>
</GLOBAL_CONFIG_MODULE>
<LAN_CONFIG_MODULE>
<Enable_Bridge_Mode>1</Enable_Bridge_Mode>
<Enable_Port_Mirror>1</Enable_Port_Mirror>
</LAN_CONFIG_MODULE>

De eigentlike nammen fan 'e konfiguraasjeparameters binne genôch beskriuwend om foar te kommen dat se yn detail beskreaun wurde.
SIP foar ien line

<SIP_CONFIG_MODULE>
<SIP__Port>5060</SIP__Port>
<SIP_Line_List>
<SIP_Line_List_Entry>
<ID>SIP1</ID>
<Register_Addr>10.1.1.50</Register_Addr>
<Register_Port>5060</Register_Port>
<Register_TTL>3600</Register_TTL>
<Enable_Reg>1</Enable_Reg>
<Proxy_Addr>10.1.1.50</Proxy_Addr>
<DTMF_Mode>1</DTMF_Mode>
<DTMF_Info_Mode>0</DTMF_Info_Mode>
<VoiceCodecMap>G711A,G711U,G722</VoiceCodecMap>
</SIP_Line_List_Entry>
</SIP_Line_List>
</SIP_CONFIG_MODULE>

Remote Control Ynstellings

<MMI_CONFIG_MODULE>
<Telnet_Port>23</Telnet_Port>
<Web_Port>80</Web_Port>
<Web_Server_Type>0</Web_Server_Type>
<Https_Web_Port>443</Https_Web_Port>
<Remote_Control>1</Remote_Control>
<Enable_MMI_Filter>0</Enable_MMI_Filter>
<Telnet_Prompt></Telnet_Prompt>
<MMI_Filter>
<MMI_Filter_Entry>
<ID>Item1</ID>
<First_IP>10.1.1.152</First_IP>
<End_IP>10.1.1.160</End_IP>
</MMI_Filter_Entry>
</MMI_Filter>
<MMI_Account>
<MMI_Account_Entry>
<ID>Account1</ID>
<Name>admin</Name>
<Password>ADMIN_PWD</Password>
<Level>10</Level>
</MMI_Account_Entry>
<MMI_Account_Entry>
<ID>Account2</ID>
<Name>guest</Name>
<Password>GUEST_PWD</Password>
<Level>5</Level>
</MMI_Account_Entry>
</MMI_Account>
</MMI_CONFIG_MODULE>

Phone ynstellings

<PHONE_CONFIG_MODULE>
<Menu_Password>123</Menu_Password>
<KeyLock_Password>123</KeyLock_Password>
<Fast_Keylock_Code></Fast_Keylock_Code>
<Enable_KeyLock>0</Enable_KeyLock>
<Emergency_Call>112</Emergency_Call>
<LCD_Title>Company</LCD_Title>
<LCD_Constrast>5</LCD_Constrast>
<LCD_Luminance>1</LCD_Luminance>
<Backlight_Off_Time>30</Backlight_Off_Time>
<Enable_Power_LED>0</Enable_Power_LED>
<Time_Display_Style>0</Time_Display_Style>
<Enable_TimeDisplay>1</Enable_TimeDisplay>
<Alarm__Clock>0,,1</Alarm__Clock>
<Date_Display_Style>0</Date_Display_Style>
<Date_Separator>0</Date_Separator>
<Enable_Pre-Dial>1</Enable_Pre-Dial>
<Xml_PhoneBook>
<Xml_PhoneBook_Entry>
<ID>XML-PBook1</ID>
<Name>Phonebook</Name>
<Addr>http://10.1.1.50/provisioning/dlink-phonebook.xml</Addr>
<Auth>:</Auth>
<Policy>0</Policy>
<Sipline>0</Sipline>
</Xml_PhoneBook_Entry>
</Xml_PhoneBook>
<Phonebook_Groups>friend,home,work,business,classmate,colleague</Phonebook_Groups>
</PHONE_CONFIG_MODULE>

Alle oare ynstellings sille "standert" bliuwe. No sil elke Dlink-tillefoan dy't ferbûn is mei it netwurk fuortendaliks in mienskiplike set parameters foar elkenien akseptearje. Om yndividuele parameters foar it apparaat yn te stellen, is in apart bestân nedich. Dêryn hoege jo allinich de nedige ynstellingen foar in yndividuele abonnee op te jaan.
abonnee ynstellings

<?xml version="1.0" encoding="UTF-8"?>
<VOIP_CONFIG_FILE>
<version>2.0006</version>
<SIP_CONFIG_MODULE>
<SIP_Line_List>
<SIP_Line_List_Entry>
<ID>SIP1</ID>
<Display_Name>User #117</Display_Name>
<Phone_Number>117</Phone_Number>
<Register_Port>5060</Register_Port>
<Register_User>117</Register_User>
<Register_Pswd>SIP_PWD</Register_Pswd>
<Register_TTL>3600</Register_TTL>
<Enable_Reg>1</Enable_Reg>
<Proxy_Port>5060</Proxy_Port>
<Proxy_User>117</Proxy_User>
<Proxy_Pswd>SIP_PWD</Proxy_Pswd>
</SIP_Line_List_Entry>
</SIP_Line_List>
</SIP_CONFIG_MODULE>
</VOIP_CONFIG_FILE>

Panasonic UT-KX123B

Dizze apparaten krije ynstellings neffens in wat oars skema. De konfiguraasje wurdt opslein yn tekstbestannen. De maksimale konfiguraasjetriemgrutte is 120 KB. Nettsjinsteande it oantal bestannen soe har totale grutte net mear wêze as 120 KB.
It konfiguraasjetriem bestiet út in set rigels, dy't ûnderwurpen binne oan de folgjende betingsten:

  • De earste rigel is altyd in opmerkingsrigel, ynklusyf de folgjende folchoarder fan tekens (44 bytes):
    # Panasonic SIP-tillefoan Standertformaat triem #
    Heksadesimale werjefte fan dizze folchoarder:
    23 20 50 61 6E 61 73 6F 6E 69 63 20 53 49 50 20 50 68 6F 6 65 20 53 74 61E 6 64 61 72 64 20 46 6 72 6 61 74 20 46 69
    Om tafallige wizigingen yn 'e fêststelde folchoarder fan tekens te foarkommen, is it oan te rieden om it konfiguraasjetriem te begjinnen mei de rigel:
    # Panasonic SIP-tillefoan Standertformaat-bestân # DIT LINE NET FANDERJE!
  • Konfiguraasjetriemmen moatte einigje mei in lege rigel.
  • Elke rigel moat einigje mei de folchoarder " ".
  • De maksimale tekenrige lingte is 537 bytes, ynklusyf de folchoarder " "
  • De folgjende rigels wurde negearre:
    • rigels dy't de limyt fan 537 byte binne;
    • lege rigels;
    • kommentaar rigels begjinnend mei "#";
  • De tekenrige foar elke parameter wurdt skreaun yn de foarm XXX = "yyy" (XXX: parameter namme, yyy: syn wearde). De wearde moat wurde ynsletten yn dûbele oanhalingstekens.
  • Splitsen fan in parameter line yn ferskate rigels is net tastien. Dit sil resultearje yn in flater by it ferwurkjen fan it konfiguraasjetriem en, as gefolch, inisjalisaasjefout.
  • De wearden fan guon parameters moatte apart wurde opjûn foar elke rigel. De parameter mei it efterheaksel "_1" yn 'e namme is de parameter foar rigel 1; "_2" - foar rigel 2, ensfh.
  • De maksimale lingte fan de parameternamme is 32 karakters.
  • De maksimale lingte fan de parameterwearde is 500 karakters útsein dûbele oanhalingstekens.
  • Gjin spaasjes binne tastien yn 'e tekenrige, útsein as de wearde in spaasjekarakter befettet.
  • Guon parameterwearden kinne wurde opjûn as "leech" om de parameter op in lege wearde yn te stellen.
  • De parameters wurde oantsjutte yn gjin bepaalde folchoarder.
  • As deselde parameter mear as ien kear yn in konfiguraasjetriem oantsjutte is, wurdt de earst opjûne wearde tapast.

Sa'n serieuze set fan easken foar it konfiguraasjetriem, earlik sein, fergriemde my. Yn myn miening is de ymplemintaasje fan ynteraksje mei de kontrôleserver op Panasonic-tillefoans ekstreem ûngemaklik. Yn dizze parameter, de telefoan is gâns inferior oan oaren.
As jo ​​it apparaat foar de earste kear ynskeakelje (of nei it weromsetten nei fabrieksynstellingen), besiket it it saneamde produktbestân te laden (yn dit gefal is it KX-UT123RU.cfg), dat de paden nei de oerbleaune konfiguraasje triemmen.
Produkt triem# Panasonic SIP-tillefoan Standertformaat-bestân # DIT LINE NET FANDERJE!

CFG_STANDARD_FILE_PATH="tftp://10.1.1.50/panasonic/{mac}.cfg"
CFG_PRODUCT_FILE_PATH="tftp://10.1.1.50/panasonic/KX-UT123RU.cfg"
CFG_MASTER_FILE_PATH="tftp://10.1.1.50/panasonic/master.cfg"

Hjirnei sil de tillefoan in berjocht werjaan oer it suksesfolle foltôgjen fan tarieding en sil wachtsje oant it opnij is opstart. En nei it herstarten sil it begjinne mei it ferwurkjen fan de konfiguraasjebestannen dy't deroan binne tawiisd.

It is oan te rieden om algemiene ynstellings op te jaan foar alle tillefoans yn it master.cfg-bestân. Lykas by Dlink, sil ik allinich guon parameters oantsjutte. De nammen fan 'e oerbleaune parameters en har wearden kinne fûn wurde yn' e dokumintaasje op 'e webside fan' e fabrikant.
master.cfg############################################## #########
#Systeem ynstellings#
############################################## #########
## Oanmelde akkountynstellingen
ADMIN_ID="admin"
ADMIN_PASS="ADMIN_PWD"
USER_ID = "brûker"
USER_PASS="USER_PWD"

## Systeemtiidynstellingen
NTP_ADDR="10.1.1.4"
TIME_ZONE="660"
DST_ENABLE="N"
DST_OFFSET="60"
DST_START_MONTH="3"
DST_START_ORDINAL_DAY="2"
DST_START_DAY_OF_WEEK="0"
DST_START_TIME="120"
DST_STOP_MONTH="10"
DST_STOP_ORDINAL_DAY="2"
DST_STOP_DAY_OF_WEEK="0"
DST_STOP_TIME = "120"
LOCAL_TIME_ZONE_POSIX=""

## Syslog-ynstellingen
SYSLOG_ADDR="10.1.1.50"
SYSLOG_PORT="514"
SYSLOG_EVENT_SIP="6"
SYSLOG_EVENT_CFG="6"
SYSLOG_EVENT_VOIP="6"
SYSLOG_EVENT_TEL="6"

## Bestjoeringsynstellingen
OPTION66_ENABLE="Y"
OPTION66_REBOOT="N"
PROVISION_ENABLE="Y"
CFG_STANDARD_FILE_PATH="tftp://10.1.1.50/panasonic/{mac}.cfg"
CFG_PRODUCT_FILE_PATH="tftp://10.1.1.50/panasonic/KX-UT123RU.cfg"
CFG_MASTER_FILE_PATH="tftp://10.1.1.50/panasonic/master.cfg"

############################################## #########
#Netwurkynstellings#
############################################## #########
## IP-ynstellingen
CONNECTION_TYPE="1"
HOST_NAME="UT123"
DHCP_DNS_ENABLE="Y"
STATIC_IP_ADDRESS=""
STATIC_SUBNET=""
STATIC_GATEWAY=""
USER_DNS1_ADDR=""
USER_DNS2_ADDR=""

## DNS-ynstellingen
DNS_QRY_PRLL="Y"
DNS_PRIORITY="N"
DNS1_ADDR="10.1.1.1"
DNS2_ADDR=""

## HTTP-ynstellingen
HTTPD_PORTOPEN_AUTO="Y"
HTTP_VER="1"
HTTP_USER_AGENT="Panasonic_{MODEL}/{fwver} ({mac})"
HTTP_SSL_VERIFY="0"
CFG_ROOT_CERTIFICATE_PATH=""

## Ynstellings foar XML-applikaasje
XML_HTTPD_PORT="6666"
XMLAPP_ENABLE="Y"
XMLAPP_USERID=""
XMLAPP_USERPASS=""
XMLAPP_START_URL=""
XMLAPP_INITIAL_URL=" "
XMLAPP_INCOMING_URL=""
XMLAPP_TALKING_URL=""
XMLAPP_MAKECALL_URL=""
XMLAPP_CALLLOG_URL=""
XMLAPP_IDLING_URL=""
XMLAPP_LDAP_URL="10.1.1.50/provisioning/panasonic-phonebook.xml»
XMLAPP_LDAP_USERID=""
XMLAPP_LDAP_USERPASS=""

Tradysjoneel bliuwe allinich de ynstellings fan 'e abonnee yn it yndividuele apparaatkonfiguraasjetriem.
aabbccddeeff.cfgDISPLAY_NAME_1="Brûker #168"

PHONE_NUMBER_1="168"
SIP_URI_1="168"
LINE_ENABLE_1="Ynskeakele"
PROFILE_ENABLE_1="Ynskeakele"
SIP_AUTHID_1="168"
SIP_PASS_1="SIP_PWD"

Grandstream GXP-1400

De parameters fan dizze tillefoans wurde opslein yn ien xml-bestân mei de namme cfg{mac}.xml. Of yn platte tekst mei de namme cfg{mac}. Dizze tillefoan freget allinich in yndividueel konfiguraasjetriem, dus it optimalisearjen fan de ynstellings troch se te ferpleatsen nei in mienskiplik bestân sil net wurkje. In oar skaaimerk fan it opsetten fan Grandstreams is de nammejouwing fan parameters. Se binne allegear nûmere en oanwiisd as P###. Bygelyks:

P1650 - ferantwurdlik foar de webynterface foar it behearen fan 'e tillefoan (0 - HTTPS, 1 - HTTP)
P47 - SIP-tsjinneradres foar ferbining.

As de konfiguraasje is opslein yn in teksttriem, hawwe de parameters gjin groepearring nedich en binne yn elke folchoarder. Rigels dy't begjinne mei # wurde behannele as opmerkings.

As de ynstellings wurde presintearre yn xml-formaat, moatte se yn in knooppunt wurde nestele , dy't op syn beurt yn nesteled wurde moat . Alle parameters wurde skreaun yn 'e foarm fan oerienkommende tags mei de parameterwearde binnen.
Foarbyld ynstelle

1.0 8 1 1 SIP_PWD Brûker #271 1 271 270 109 ADMIN_PWD USER_PWD ru 270 35 / grandstream 109 TZc-35 36 109 http://36/provisioning/grandstream tritich

Yealink T19 en T21

Apparaten fan dizze modellen stypje yndividuele konfiguraasjebestannen foar apparaten en gewoane foar modellen. Yn myn gefal, ik moast pleatse de algemiene parameters yn de triemmen y000000000031.cfg en y000000000034.cfg, respektivelik. Yndividuele konfiguraasjetriemmen wurde neamd neffens it MAC-adres: 00112233aabb.cfg.

Ynstellings foar yealinks wurde opslein yn tekstformaat. De ienige ferplichte easken binne de oanwêzigens fan de triemferzje yn 'e earste rigel, yn it formaat #!ferzje:1.0.0.1.

Alle parameters wurde skreaun yn 'e foarm parameter = wearde. Opmerkings moatte begjinne mei in "#" karakter. De nammen fan 'e parameters en har wearden kinne fûn wurde yn' e dokumintaasje op 'e webside fan' e fabrikant.
Algemiene ynstellings#!ferzje:1.0.0.1
# Konfigurearje it WAN-poartetype; 0-DHCP (standert), 1-PPPoE, 2-Statysk IP-adres;
network.internet_port.type = 0
# Konfigurearje it type PC-poarte; 0-Router, 1-Bridge (standert);
network.bridge_mode = 1
# Konfigurearje it tagongstype fan 'e webserver; 0-Utskeakele, 1-HTTP & HTTPS (standert), 2-HTTP Allinnich, 3-HTTPS Allinnich;
netwurk.web_server_type = 3
# Konfigurearje de maksimale lokale RTP-poarte. It rint fan 0 oant 65535, de standertwearde is 11800.
network.port.max_rtpport = 10100
# Konfigurearje de minimale lokale RTP-poarte. It rint fan 0 oant 65535, de standertwearde is 11780.
network.port.min_rtpport = 10000
security.user_name.admin = root
security.user_password = root:ADMIN_PWD
security.user_name.user = brûker
security.user_password = brûker:USER_PWD
# Spesifisearje de webtaal, de jildige wearden binne: Ingelsk, Chinese_S, Turksk, Portugeesk, Spaansk, Italiaansk, Frânsk, Russysk, Deutsch en Tsjechysk.
lang.wui = Russysk
# Spesifisearje de LCD-taal, de jildige wearden binne: Ingelsk (standert), Chinese_S, Chinese_T, Dútsk, Frânsk, Turksk, Italiaansk, Poalsk, Spaansk en Portugeesk.
lang.gui = Russysk
# Konfigurearje de tiidsône en tiidsône namme. De tiidsône farieart fan -11 oant +12, de standertwearde is +8.
#De standert tiidsône namme is Sina (Beijing).
# Ferwize nei Yealink IP-tillefoans brûkersgids foar mear beskikbere tiidsônes en tiidsônesnammen.
local_time.time_zone = +11
local_time.time_zone_name = Vladivostok
#Konfigurearje de domeinnamme as it IP-adres fan 'e NTP-tsjinner. De standertwearde is cn.pool.ntp.org.
local_time.ntp_server1 = 10.1.1.4
# Konfigurearje de logomodus fan it LCD-skerm; 0-Utskeakele (standert), 1-Systeemlogo, 2-Oanpaste logo;
phone_setting.lcd_logo.mode = 1
# Konfigurearje de tagongs-URL en de namme fan it tillefoanboek op ôfstân. X fariearret fan 1 oant 5.
remote_phonebook.data.1.url = 10.1.1.50/provisioning/yealink-phonebook.xml
remote_phonebook.data.1.name = Tillefoanboek
features.remote_phonebook.flash_time = 3600

yndividuele ynstellings#!ferzje:1.0.0.1
#Account ynskeakelje of útskeakelje1, 0-Utskeakele (standert), 1-Enabled;
account.1.enable = 1
# Konfigurearje it label werjûn op it LCD-skerm foar account1.
account.1.label = Test telefoan
# Konfigurearje de werjeftenamme fan account1.
account.1.display_name = Meidogger 998
# Konfigurearje de brûkersnamme en wachtwurd foar registraasjeferifikaasje.
account.1.auth_name = 998
account.1.wachtwurd = 998
# Konfigurearje de brûkersnamme fan it register.
account.1.user_name = 998
# Konfigurearje it SIP-tsjinneradres.
account.1.sip_server_host = 10.1.1.50
# Spesifisearje de poarte foar de SIP-tsjinner. De standertwearde is 5060.
account.1.sip_server_port = 5060

As gefolch, tank oan 'e prachtige auto-foarsjenningsfunksje levere yn' e tillefoans dy't ik neamde, wiene d'r gjin problemen mei it ferbinen fan nije apparaten oan it netwurk. It kaam allegear del op it finen fan it MAC-adres fan 'e tillefoan en it generearjen fan in konfiguraasjetriem mei in sjabloan.

Ik hoopje dat jo oant it ein lêze en profitearre hawwe fan wat jo lêze.

Tige tank foar jo oandacht.

Boarne: www.habr.com

Add a comment