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 сұрауында өндіруші туралы ақпаратты бермейді.

dhcpd.conf фрагменті

# Қажетті опцияларды көрсетіңіз опция опциясы-66 код 66 = мәтін; class "panasonic" { сәйкес келсе ішкі жол (опция вендор-класс-идентификатор,0,9) = "Panasonic"; опция опциясы-66 "10.1.1.50/panasonic/"; } class "cisco" { сәйкес келетін ішкі жол (опция сатушы-сынып идентификаторы,0,36) = "Cisco Systems, Inc. IP телефоны CP-7906"; опция опциясы-66 "10.1.1.50/cisco/"; } class "grandstream" { сәйкес келсе ішкі жол (опция 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,":", ішкі жол(аппараттық құрал,1,4)) = "90:94:e4:72"); опция опциясы-66 "10.1.1.50/dlink/"; } class "yealink" { сәйкес келсе ішкі жол (опция vendor-class-identifier,0,7) = "Yealink"; опция опциясы-66 "10.1.1.50/yealink/"; }

Телефондарды жалпы бассейннен мәжбүрлеп шығаруға тура келді. Әйтпесе, олар өздерінің «қалақшасына» барғысы келмеді.
Ішкі желі параметрлерінің мысалы

ішкі желі 10.1.1.0 желі маскасы 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 = түбір
security.user_password = түбір:ADMIN_PWD
security.user_name.user = пайдаланушы
security.user_password = пайдаланушы:USER_PWD
#Веб тілін көрсетіңіз, жарамды мәндер: ағылшын, қытайша, түрікше, португалша, испанша, итальянша, французша, орысша, немісше және чех тілдері.
lang.wui = орыс
#СКД тілін көрсетіңіз, жарамды мәндер: ағылшын (әдепкі), Chinese_S, Chinese_T, неміс, француз, түрік, итальян, поляк, испан және португал тілдері.
lang.gui = орыс
#Уақыт белдеуі мен уақыт белдеуі атын конфигурациялаңыз. Уақыт белдеуі -11 мен +12 аралығында, әдепкі мән +8.
#Әдепкі уақыт белдеуінің атауы - Қытай (Пекин).
#Қосымша қол жетімді уақыт белдеулері мен уақыт белдеуі атаулары үшін Yealink IP телефондарының пайдаланушы нұсқаулығын қараңыз.
жергілікті_уақыт.уақыт_белдеуі = +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_phonebook.flash_time = 3600

жеке параметрлер#!нұсқа:1.0.0.1
#Тіркелгіні қосу немесе өшіру1, 0-Ажыратылған (әдепкі), 1-Қосылған;
account.1.enable = 1
#Тіркелгі1 үшін СКД экранында көрсетілген белгіні конфигурациялаңыз.
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 мекенжайын білуге ​​және үлгіні пайдаланып конфигурация файлын жасауға келді.

Соңына дейін оқып, оқығандарыңыздың пайдасы тиді деп үміттенемін.

Назарларыңызға рахмет.

Ақпарат көзі: www.habr.com

пікір қалдыру