VoIP зоопаркы – камсыздоо

кирүү

Бир күнү жетекчилик биздин кеңсеге IP телефонияны киргизүү боюнча экспериментти жактырды. Бул жаатта тажрыйбам аз болгондуктан, тапшырма менде чоң кызыгууну жаратып, маселенин ар кандай аспектилерин изилдөөгө кириштим. Сууга түшүүнүн аягында кимдир бирөөгө пайдалуу болот деген үмүттө алган билимим менен бөлүшүүнү чечтим. Ошентип…

алгачкы маалыматтар

Жылдызча тандалган жана IP АТС катары жайгаштырылды. Телефон паркы Cisco 7906g, Panasonic UT-KX123B, Grandstream GXP1400 жана Dlink DPH-150S(E)/F3, Yealink T19 жана T21 түзмөктөрүнөн турат. Бул вариация эксперименттин бир бөлүгү катары баа/сапат/ынгайлуулук катышы боюнча пикир түзүү үчүн бардыгын бир аз сынап көрүү чечими кабыл алынгандыгына байланыштуу.

маселе

Мүмкүн болушунча жаңы түзмөктөрдү орнотуу процессин жөнөкөйлөтүңүз жана унификациялаңыз. Бардык телефондор убакыт синхрондолуп, серверден жүктөлгөн телефон китепчеси болушу керек жана администратор үчүн орнотууларга мүмкүнчүлүк бериши керек.

Бул маселени чечүү жөнөкөй - телефондордун автоматтык конфигурациясын ишке ашыруу. Камсыздоо. Чынында, менин бул сонун функцияны ишке ашыруу талкууланат.

tftpd, dhcpd конфигурацияланууда

Телефондорго орнотууларды жайылтуу үчүн мен tftpди универсалдуу вариант катары тандадым, бардык платформалар колдогон, конфигурациялоо жана башкаруу оңой.

tftp үчүн атайын конфигурация талап кылынган эмес. Мен стандарттуу tftpd орнотуп, бардык керектүү файлдарды анын түпкү каталогуна жайгаштырдым.
Мен жөндөө файлдарын телефондун өндүрүүчүсүнө ылайык каталогдорго жайгаштырдым. Ырас, Cisco түзмөгү эч качан анын папкасына кирчү эмес, ошондуктан мен аны тамырында сактоого туура келди.

Телефондорду tftp серверинин жайгашкан жерине көрсөтүү үчүн мен опция-66 колдондум. Мындан тышкары, аларды өндүрүүчүсү боюнча өзүнчө класстарга бөлгөн. Ар бир класс өзүнүн дарек сегментин жана конфигурация файлдары үчүн жеке папканы алган. Айтмакчы, D-link түзмөктөрү MAC даректери боюнча эсептелиши керек болчу, анткени алар dhcp сурамында өндүрүүчү жөнүндө маалымат бербейт.

Fragment dhcpd.conf

# Керектүү опцияларды көрсөтүү опциясы опция-66 код 66 = текст; class "panasonic" { дал келсе substring (опция vendor-class-identifier,0,9) = "Panasonic"; опцион-66 "10.1.1.50/panasonic/"; } class "cisco" { match if substring (option vendor-class-identifier,0,36) = "Cisco Systems, Inc. IP Phone CP-7906"; опцион-66 "10.1.1.50/cisco/"; } class "grandstream" { match if substring (option vendor-class-identifier,0,11) = "Grandstream"; опцион-66 "10.1.1.50/grandstream/"; } класс "dlink" { дал келсе (binary-to-ascii (16,8,":",substring(hardware,1,4)) = "c8:d3:a3:8d") же (binary-to-ascii (16,8,":", substring(жабдык,1,4)) = "90:94:e4:72"); опцион-66 "10.1.1.50/dlink/"; } class "yealink" { match if substring (option vendor-class-identifier,0,7) = "Yealink"; опцион-66 "10.1.1.50/yealink/"; }

Телефондорду жалпы бассейнден мажбурлап чыгарууга туура келди. Болбосо, алар өздөрүнүн “калак бассейнине” баргылары келген жок.
Субнет орнотууларынын мисалы

subnet 10.1.1.0 networkmask 255.255.255.0 { роутер опциясы 10.1.1.1; pool { "cisco" мүчөлөрүн жокко чыгаруу; "panasonic" мүчөлөрүн жокко чыгаруу; "dlink" мүчөлөрүн четке кагуу; диапазон 10.1.1.230 10.1.1.240; } pool { "cisco" мүчөлөрүнө уруксат берүү; диапазон 10.1.1.65 10.1.1.69; } pool { "panasonic" мүчөлөрүнө уруксат берүү; диапазон 10.1.1.60 10.1.1.64; } pool { "dlink" мүчөлөрүнө уруксат берүү; диапазон 10.1.1.55 10.1.1.59; } }

Бардык тартылган кызматтарды өчүрүп күйгүзгөндөн кийин, телефондор орнотуулар үчүн өздөрүнө дайындалган tftp серверине жөнөштү. Аларды ошол жерге жайгаштыруу гана калды.

Cisco 7906

Мен бул аппараттарды оригиналдуу таңгагында алдым. Жылдызча менен достошуш үчүн аны өзгөртүүгө туура келди. Бирок бул башка окуя. Белгилүү бир учурда, аппаратты конфигурациялоо үчүн, нускамаларга ылайык, мен tftp серверинин тамырында SEPAABBCCDDEEFF.cnf.xml файлын түздүм. Бул жерде AABCCCDDEEFF аппараттын MAC дареги болуп саналат.

Cisco'дон телефондорду орнотуу жөнүндө буга чейин бир нече жолу жазылган, ошондуктан мен жөндөөлөрү менен жумушчу файлды калтырам.
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

Эгер сиз бул сериядагы телефонду сатып алганы жатсаңыз, абайлаңыз, автотюнинг 150S/F3 түзмөктөрүндө гана колдоого алынат. Менин колума келген 150S/F2 аппаратында мен мындай функцияны тапкан жокмун.

Конфигурация файлы xml же жөнөкөй текст форматында болушу мүмкүн. xml үчүн бир талап бар: тег саптын башында болушу керек, антпесе талдоочу аны этибарга албайт жана тиешелүү параметрдин мааниси өзгөрбөйт.

Телефонду конфигурациялоо үчүн эки файл колдонулат. f0D00580000.cfg - бардык телефондор үчүн орнотууларды сактоо үчүн жана жеке жөндөөлөр үчүн 00112233aabb.cfg (MAC дареги кичине тамга менен). Жеке орнотуулар табигый түрдө жогорураак артыкчылыкка ээ.

Орнотуулардын толук топтому миңден ашык саптарды камтыйт, ошондуктан макаланы баш аламандыкка салбоо үчүн, мен орнотуулардын минималдуу жетиштүү топтомун сүрөттөп берем.

Түпкү түйүн талап кылынат VOIP_CONFIG_FILE жана түйүн анын ичинде жайгашкан версия. Орнотуулар файлдын версиясы түзмөктөгү учурдагы орнотуулардан жогору болсо гана колдонулат. Бул маанини телефондун веб-интерфейси аркылуу тейлөө бөлүмүндө (системаны башкаруу) биле аласыз. Заводдук орнотуулары бар телефондор үчүн эки учурда тең 2.0002. Мындан тышкары, жеке файл версиясы жалпы файл версиясынан чоңураак болушу керек.

Алгач мен бардык телефондор үчүн жалпы конфигурациялуу файлды берем. Чынында, ал бардык орнотууларды сактайт, жеке файл телефон номери жана экрандагы жазуу үчүн гана жооптуу болот.

Төмөнкү эки блокто, убакыт алкагы жана убакыт синхрондоштуруу параметрлери коюлган, RTP үчүн баштапкы порт жана аппараттын WAN жана LAN туташтыргычтарынын ортосундагы тармак көпүрөсү иштетилген.

№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>

Конфигурация параметрлеринин чыныгы аталыштары аларды майда-чүйдөсүнө чейин сүрөттөп жибербөө үчүн жетиштүү сыпаттоо болуп саналат.
бир линия үчүн SIP

<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>

Алыстан башкаруу орнотуулары

<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_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>

Бардык башка орнотуулар "демейки" бойдон калат. Эми тармакка туташкан каалаган Dlink телефону дароо бардыгы үчүн жалпы параметрлер топтомун кабыл алат. Аппараттын жеке параметрлерин коюу үчүн өзүнчө файл керек. Анда сиз жеке абонентке керектүү орнотууларды гана көрсөтүшүңүз керек.
абонент орнотуулары

<?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

Бул түзмөктөр бир аз башкача схема боюнча орнотууларды алышат. Конфигурация текст файлдарында сакталат. Конфигурация файлынын максималдуу өлчөмү 120 КБ. Файлдардын санына карабастан, алардын жалпы көлөмү 120 КБ ашпоого тийиш.
Конфигурация файлы төмөнкү шарттарга ылайык келген саптардын жыйындысынан турат:

  • Биринчи сап ар дайым комментарий сабы болуп саналат, анын ичинде символдордун төмөнкү ырааттуулугу (44 байт):
    # Panasonic SIP телефонунун стандарттык формат файлы #
    Бул ырааттуулуктун он алтылык өкүлчүлүгү:
    23 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 6 72D C 6 61 74
    Белгиленген белгилердин ырааттуулугун кокусунан өзгөртүүгө жол бербөө үчүн, конфигурация файлын сызык менен баштоо сунушталат:
    # Panasonic SIP телефонунун стандарттык формат файлы # БУЛ САПТЫ ӨЗГӨРТПӨ!
  • Конфигурация файлдары бош сызык менен бүтүшү керек.
  • Ар бир сап ырааттуулук менен аякташы керек " ".
  • Саптын максималдуу узундугу 537 байт, анын ичинде ырааттуулук " "
  • Төмөнкү саптар этибарга алынбайт:
    • 537 байт чегинен ашкан саптар;
    • бош сызыктар;
    • "#" менен башталган комментарий саптары;
  • Ар бир параметр үчүн сап XXX=“yyyy” (XXX: параметр аты, жж: анын мааниси) түрүндө жазылат. Маани кош тырмакчага алынышы керек.
  • Параметр сызыгын бир нече сапка бөлүүгө жол берилбейт. Бул конфигурация файлын иштетүүдө катага алып келет жана натыйжада инициализация иштебей калат.
  • Кээ бир параметрлердин маанилери ар бир сап үчүн өзүнчө көрсөтүлүшү керек. Аталышында "_1" суффикси бар параметр 1-сап үчүн параметр болуп саналат; "_2" — 2-сап үчүн ж.б.
  • Параметр аталышынын максималдуу узундугу - 32 белги.
  • Параметр маанисинин максималдуу узундугу кош тырмакчаны кошпогондо 500 символду түзөт.
  • Сапта боштукка жол берилбейт, эгерде мааниде боштук белгиси камтылбаса.
  • Кээ бир параметр маанилери параметрди бош мааниге коюу үчүн "бош" катары көрсөтүлүшү мүмкүн.
  • Параметрлер эч кандай тартипте көрсөтүлгөн.
  • Эгерде бир эле параметр конфигурация файлында бир нече жолу көрсөтүлсө, биринчи көрсөтүлгөн маани колдонулат.

Конфигурация файлына коюлган мындай олуттуу талаптар, ачык айтканда, мени капа кылды. Менимче, Panasonic телефондорунда башкаруу сервери менен өз ара аракеттенүүнү ишке ашыруу өтө ыңгайсыз. Бул параметр боюнча, телефон башкаларга караганда бир кыйла төмөн.
Аппаратты биринчи жолу күйгүзгөндө (же аны заводдук жөндөөлөргө кайтаргандан кийин) ал өнүм файлы деп аталган файлды жүктөөгө аракет кылат (бул учурда ал KX-UT123RU.cfg) калган конфигурация файлдары.
Продукт файлы# Panasonic SIP телефонунун стандарттык формат файлы # БУЛ САПТЫ ӨЗГӨРТПӨ!

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"

Андан кийин, телефон даярдыктын ийгиликтүү аяктагандыгы жөнүндө билдирүүнү көрсөтөт жана ал кайра жүктөлгөнгө чейин күтөт. Жана кайра жүктөөдөн кийин, ал ага дайындалган конфигурация файлдарын иштете баштайт.

Master.cfg файлында бардык телефондор үчүн жалпы орнотууларды көрсөтүү сунушталат. Dlink сыяктуу эле, мен кээ бир параметрлерди гана көрсөтөм. Калган параметрлердин аталыштары жана алардын баалуулуктары өндүрүүчүнүн веб-сайтындагы документтерден тапса болот.
master.cfg##################################################### ##########
#Система орнотуулары#
##################################################### ##########
## Кирүү каттоо эсебинин жөндөөлөрү
ADMIN_ID = "админ"
ADMIN_PASS="ADMIN_PWD"
USER_ID="колдонуучу"
USER_PASS="USER_PWD"

## Системанын убакыт орнотуулары
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 Орнотуулары
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"

## Камсыздоо жөндөөлөрү
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"

##################################################### ##########
#Тармак орнотуулары#
##################################################### ##########
## IP орнотуулары
CONNECTION_TYPE="1"
HOST_NAME="UT123"
DHCP_DNS_ENABLE="Y"
STATIC_IP_ADDRESS=""
STATIC_SUBNET=""
STATIC_GATEWAY=""
USER_DNS1_ADDR=""
USER_DNS2_ADDR=""

## DNS орнотуулары
DNS_QRY_PRLL="Y"
DNS_PRIORITY="N"
DNS1_ADDR="10.1.1.1"
DNS2_ADDR=""

## HTTP орнотуулары
HTTPD_PORTOPEN_AUTO="Y"
HTTP_VER="1"
HTTP_USER_AGENT="Panasonic_{MODEL}/{fwver} ({mac})"
HTTP_SSL_VERIFY="0"
CFG_ROOT_CERTIFICATE_PATH=""

## XML Колдонмонун Орнотуулары
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=""

Адаттагыдай эле, жеке түзмөк конфигурация файлында абоненттин жөндөөлөрү гана калат.
aabbccddeeff.cfgDISPLAY_NAME_1="Колдонуучу #168"

PHONE_NUMBER_1="168"
SIP_URI_1="168"
LINE_ENABLE_1="Иштелет"
PROFILE_ENABLE_1="Иштирилген"
SIP_AUTHID_1="168"
SIP_PASS_1="SIP_PWD"

Grandstream GXP-1400

Бул телефондордун параметрлери cfg{mac}.xml деп аталган бир xml файлында сакталат. Же cfg{mac} аты менен жөнөкөй текстте. Бул телефон жеке конфигурация файлын гана сурайт, ошондуктан аларды жалпы файлга жылдыруу менен орнотууларды оптималдаштыруу иштебейт. Grandstreams орнотуунун дагы бир өзгөчөлүгү - бул параметрлердин аталышы. Алардын баары номерленген жана P### катары белгиленген. Мисалы:

P1650 – телефонду башкаруу үчүн веб-интерфейс үчүн жооптуу (0 – HTTPS, 1 – HTTP)
P47 – туташуу үчүн SIP сервер дареги.

Эгер конфигурация текст файлында сакталса, параметрлер эч кандай топтоого муктаж эмес жана каалаган тартипте болот. # менен башталган саптар комментарий катары каралат.

Орнотуулар xml форматында берилсе, алар түйүнгө уя салынышы керек , ал өз кезегинде уячага салынышы керек . Бардык параметрлер ичиндеги параметр мааниси менен тиешелүү тегдер түрүндө жазылат.
Үлгү коюу

1.0 8 1 1 SIP_PWD Колдонуучу № 271 1 271 270 109 ADMIN_PWD USER_PWD ru 270 35/grandstream 109 TZc-35 36 109 http://36/provisioning/grandstream отуз

Yealink T19 жана T21

Бул моделдердин түзмөктөрү түзмөктөр үчүн жеке конфигурация файлдарын жана моделдер үчүн жалпы файлдарды колдойт. Менин учурда, мен жалпы параметрлерди y000000000031.cfg жана y000000000034.cfg файлдарына жайгаштырууга туура келди. Жеке конфигурация файлдары MAC дарегине ылайык аталат: 00112233aabb.cfg.

Yealinks үчүн орнотуулар текст форматында сакталат. Жалгыз милдеттүү талаптар биринчи сапта #!version:1.0.0.1 форматындагы файлдык версиянын болушу.

Бардык параметрлер параметр = маани формасында жазылган. Пикирлер "#" белгиси менен башталышы керек. Параметрлердин аталыштары жана алардын баалуулуктары өндүрүүчүнүн веб-сайтындагы документтерден тапса болот.
Жалпы орнотуулар#!версия:1.0.0.1
#WAN портунун түрүн конфигурациялоо; 0-DHCP (демейки), 1-PPPoE, 2-Статикалык IP дареги;
network.internet_port.type = 0
#Компьютер портунун түрүн конфигурациялоо; 0-роутер, 1-көпүрө (демейки);
network.bridge_mode = 1
#Веб сервердин кирүү түрүн конфигурациялоо; 0-Өчүрүлгөн, 1-HTTP & HTTPS(демейки), 2-HTTP гана, 3-HTTPS гана;
network.web_server_type = 3
#Максималдуу жергиликтүү RTP портун конфигурациялаңыз. Ал 0дөн 65535ке чейин, демейки мааниси 11800.
network.port.max_rtpport = 10100
# Минималдуу жергиликтүү RTP портун конфигурациялаңыз. Ал 0дөн 65535ке чейин, демейки мааниси 11780.
network.port.min_rtpport = 10000
security.user_name.admin = root
security.user_password = root:ADMIN_PWD
security.user_name.user = колдонуучу
security.user_password = колдонуучу:USER_PWD
# Веб тилин көрсөтүңүз, жарактуу маанилер: англисче, кытайча, түркчө, португалча, испанча, италияча, французча, орусча, немисче жана чехче.
lang.wui = орус
# ЖК тилин көрсөтүңүз, жарактуу маанилер: Англисче (демейки), Chinese_S, Chinese_T, немис, француз, түрк, италия, поляк, испан жана португал.
lang.gui = орус
#Убакыт алкагын жана убакыт алкагын конфигурациялаңыз. Убакыт алкагы -11ден +12ге чейин, демейки мааниси +8.
#Демейки убакыт алкагынын аталышы Кытай (Пекин).
#Көбүрөөк жеткиликтүү убакыт алкактары жана убакыт алкагынын аталыштары үчүн Yealink IP телефондорунун Колдонуучу колдонмосун караңыз.
local_time.time_zone = +11
local_time.time_zone_name = Владивосток
#NTP серверинин домен атын же IP дарегин конфигурациялаңыз. Демейки маани cn.pool.ntp.org болуп саналат.
local_time.ntp_server1 = 10.1.1.4
# ЖК экрандын логотип режимин конфигурациялоо; 0-Өчүрүлгөн (демейки), 1-Системанын логотиби, 2-Өзгөчө логотип;
phone_setting.lcd_logo.mode = 1
#Алыскы телефон китепчесинин кирүү URL дарегин жана дисплей атын конфигурациялаңыз. X 1ден 5ке чейин.
remote_phonebook.data.1.url = 10.1.1.50/provisioning/yealink-phonebook.xml
remote_phonebook.data.1.name = Телефон китепчеси
features.remote_telefonbook.flash_time = 3600

жеке орнотуулар#!версия:1.0.0.1
#Аккаунтту иштетүү же өчүрүү1, 0-Өчүрүлгөн (демейки), 1-Ишкиндүү;
account.1.enable = 1
# Account1 үчүн ЖК экранында көрсөтүлгөн энбелгисин конфигурациялаңыз.
account.1.label = Сыноо телефону
#Каттоо эсебинин дисплей атын конфигурациялаңыз1.
account.1.display_name = Колдонуучу 998
#Рестрдин аныктыгын текшерүү үчүн колдонуучунун атын жана паролду конфигурациялаңыз.
account.1.auth_name = 998
эсеп.1.парол = 998
#Колдонуучунун атын конфигурациялаңыз.
account.1.user_name = 998
#SIP сервердин дарегин конфигурациялаңыз.
account.1.sip_server_host = 10.1.1.50
#SIP сервери үчүн портту көрсөтүңүз. Демейки маани - 5060.
account.1.sip_server_port = 5060

Натыйжада, мен айткан телефондордо берилген сонун авто-камсыздоо функциясынын аркасында жаңы түзмөктөрдү тармакка туташтырууда эч кандай көйгөйлөр болгон жок. Мунун баары телефондун MAC дарегин табуу жана шаблон аркылуу конфигурация файлын түзүү үчүн келди.

Аягына чейин окуп, окуганыңыздан пайда алдыңыз деп ишенем.

Конул бурганын учун рахмат.

Source: www.habr.com

Комментарий кошуу