📜 ⬆️ ⬇️

Asterisk + FreePBX + 7937G

Hello!

The other day I had to very quickly solve the Asterisk + FreePBX + Cisco 7937G friendship problem.

I think not everyone will immediately remember what the 7937G is, let me remind you - this is a conference station from Cisco.
')
image

She has 2 "little features":




Immediately make a reservation, the following example was made on CentOS 5.8 (i386).

Let's start the setup:

tftp (optional if not installed)

 yum install tftp-server.i386
 chkconfig xinetd on
 chmod 777 / tftpboot
 service xinetd start


In the directory / tftpboot you need to create the file XMLDefault.cnf.xml:
 <Default>
   <callManagerGroup>
      <members>
         <member priority = "0">
            <callManager>
               <ports>
                  <ethernetPhonePort> 2000 </ ethernetPhonePort>
                  <mgcpPorts>
                     <listen> 2427 </ listen>
                     <keepAlive> 2428 </ keepAlive>
                  </ mgcpPorts>
               </ ports>
               <processNodeName> </ processNodeName>
            </ callManager>
         </ member>
      </ members>
   </ callManagerGroup>
 <loadInformation431 model = "Cisco Phone 7937"> apps37sccp.1-4-1-0 </ loadInformation431>
   <authenticationURL> </ authenticationURL>
   <directoryURL> </ directoryURL>
   <idleURL> </ idleURL>
   <informationURL> </ informationURL>
   <messagesURL> </ messagesURL>
   <servicesURL> </ servicesURL>
 </ Default>


Here, it is very important to specify the correct version of the piece of software, in my case, apps37sccp.1-4-1-0 . You can view the software version by logging into the 7937G via the web.

Asterisk

By default, there is no SCCP support in Asterisk (chan_skinny is supported, but I really wanted to do it on SCCP), it is better to build it, not to play through RPM:

 wget http://downloads.sourceforge.net/project/chan-sccp-b/V3/Chan_SCCP-3.1.2_STABLE.tar.gz
 tar zxf Chan_SCCP-3.1.2_STABLE.tar.gz 
 cd Chan_SCCP-3.1.2_STABLE /
 make clean
 ./configure
 make && make install 

Enable the download of chan_sccp.so when booting Asterisk:
  nano /etc/asterisk/modules.conf 

Add the lines:

 noload => chan_skinny.so
 load => chan_sccp.so
 load => res_features.so


After that, we configure sccp.conf in / etc / asterisk (I did the minimal configuration, leaving everything I needed):

 ; ================================================ ========================================
 ;
 ;  general definitions
 ;
 ; ================================================ ========================================
 [general]
 servername = MyOfficePBX
 keepalive = 60
 debug = 0
 context = from-internal-xfer
 dateformat = DMY
 bindaddr = 0.0.0.0
 port = 2000
 disallow = all
 allow = alaw
 allow = ulaw
 allow = g729
 firstdigittimeout = 16
 digittimeout = 8
 autoanswer_ring_time = 1
 autoanswer_tone = 0x32
 remotehangup_tone = 0x32
 transfer_tone = 0
 callwaiting_tone = 0x2d
 musicclass = default
 language = en
 deny = 0.0.0.0 / 0.0.0.0
 permit = 10.10.1.0 / 255.255.255.0
 dnd = on
 sccp_tos = 0x68
 sccp_cos = 4
 audio_tos = 0xB8
 audio_cos = 6
 video_tos = 0x88
 video_cos = 5
 echocancel = on
 silencesuppression = off
 trustphoneip = no
 private = on
 callanswerorder = oldestfirst
 protocolversion = 17

 hotline_enabled = yes; can devices without configuration register
 hotline_context = from-internal-xfer;  context for hotline
 hotline_extension = 11111;  extension will be dialed on offHook

 ; ================================================ ========================================
 ;
 ;  actual definitions
 ;
 ; ================================================ ========================================

 [SEPXXXXXXXXXXXXX];  MAC of 7937G
 description = Conference Room
 devicetype = 7937
 type = device
 button = line, 200
 deny = 0.0.0.0 / 0.0.0.0;  Same as general
 permit = 10.10.1.0 / 255.255.255.0;  Same as general
 imageversion = apps37sccp.1-4-1-0
 pickupcontext = from-internal-xfer
 tzoffset = +0
 transfer = on
 trustphoneip = no
 directrtp = off
 earlyrtp = progress
 private = on
 mwilamp = on
 mwioncall = off
 setvar = testvar = value
 cfwdall = on
 imageversion = apps37sccp.1-4-1-0


 [310]
 id = 1001
 type = line
 label = Phone 200
 description = Line 200
 cid_name = CONFROOM
 cid_num = 200
 echocancel = off
 context = from-internal-xfer
 transfer = on
 vmnum = 600
 trnsfvm = 1000
 secondary_dialtone_digits = 9
 secondary_dialtone_tone = 0x22
 musicclass = default
 language = en
 echocancel = on
 silencesuppression = off



I will give a strongly abbreviated description: there are 3 sections [general] - the global configuration of the channel driver, [SEPXXXXXXXXXXXXX] - the hardware configuration, [310] - the configuration of the line. Note that the SEPXXXXXXXXXXXXX is also easily accessible via the web 7937.

It is very desirable to restart the asterisk kernel (core restart now) after creating the configuration.

After that you can request:

 pbx * CLI> sccp show version 
 Skinny Client Control Protocol (SCCP).  Release: 3.1.2 STABLE 

 pbx * CLI> sccp show devices 

 NAME ADDRESS MAC Reg.  State Reg.  Time           
 ================================================= ================================ ========= ======== =================
 Conference Room -: 0 SEPXXXXXXXXXXXXX None Sat Mar 24 17:29:55 2012 



Freepbx

To fully integrate with the 7937G with FreePBX, you need to create (register) in FreePBX, what we have defined in the configs.

Create a new extension: Extensions-> Other (custom) device:
User Extension: 200
Display Name: Conference Room
SIP Alias: 200
dial: SCCP / 200
(the minimum and sufficient set of fields is given to completion)

Cisco 7379G

Everything is quite simple here, you need to set the network settings (IP address, mask, gateway) and the server's IP address from the “buttons”. I’ll make a reservation, changing the settings is locked (there is a closed narsovan lock there) and you must enter ** # to unlock before starting the configuration.

Actually, that's all!

References:

Asterisk
FreePPX
Cisco 7937G

PS: By tradition: this is my first post, do not hit hard)))

Source: https://habr.com/ru/post/140645/


All Articles