DS1NMA Blog

1. H/W

   1) Raspberry Pi 3 

   2) Cisco 7975G


2. S/W

   1) Raspbx (http://www.raspberry-asterisk.org/)


3. Method


1) Download OS Image from http://www.raspberry-asterisk.org/

    - http://www.raspberry-asterisk.org/downloads/

    - Raspbian Stretch based

    - PJSIP/Chan_SIP , Chan_SIP is port 5161.


2) Burn image to SD Card


3) Boot


4) Set network static IP to eth0 or wlan0

    - /etc/dhcpcd.conf

    - interface wlan0

      static ip_address=DEVICE_IP/24

      static routers=GATEWAY_ADDRESS

      static domain_name_servers=DNS_SERVER_ADDRESS


5) run raspi-config
    - WI-FI SSID Setting 
    - set time zone to Seoul
    - extend file system for SD Card

6) reboot

7) update OS
   - raspbx-upgrade
   - fwconsole ma upgrade

8) reboot

9) connect FreePBX admin page

10) create extension of Chan_SIP 
     - same insert to Display name , CID, Secret, Password       

 



11) Set Asterisk SIP Setting 

     - NAT Setting from Detect Network Setting

     - IP Configuration of Chan_SIP tab set Dynamic IP, and Insert Dynamic Host

     - Advanced General Setting of Chan_SIP tab, Must set Enable TCP to yes


12) TFTP Install and Samba setting


apt-get install xinetd tftpd tftp

touch /etc/xinetd.d/tftp

nano /etc/xinetd.d/tftp

service tftp

{

protocol        = udp

port            = 69

socket_type     = dgram

wait            = yes

user            = nobody

server          = /usr/sbin/in.tftpd

server_args     = /tftpboot

disable         = no

}


mkdir /tftpboot

chmod -R 777 /tftpboot

chown -R nobody /tftpboot

/etc/init.d/xinetd restart

chmod -R 777 /tftpboot

nano /etc/samba/smb.conf

[TFTP]

   comment = Phone TFTP

   browseable = no

   path = /tftpboot

   guest ok = yes

   read only = no

   create mask = 0644

   directorymaks = 0755


/etc/init.d/samba restart


13) Copy Cisco Phone setting and firmware to TFTP Server

      

tftp-Cisco7975G.zip



14) rename SEPPHONEMACADDRESS.cnf.xml, 

     - PHONEMACADDRESS to your MAC address, (ex, SEP0080CE8E22AE.cnf.xml)

     

15 ) Modify XML 


<device>

    <fullConfig>true</fullConfig>

    <deviceProtocol>SIP</deviceProtocol>

    <sshUserId>admin</sshUserId>

    <sshPassword>cisco</sshPassword>

    <devicePool>

        <dateTimeSetting> 

            <dateTemplate>D/M/YYA</dateTemplate> 

            <timeZone>Tokyo Standard Time</timeZone> 

            <ntps> 

                <ntp>

                    <name>203.12.160.2</name> 

                    <ntpMode>Unicast</ntpMode> 

                </ntp>

            </ntps>

        </dateTimeSetting>

        <callManagerGroup>

            <tftpDefault>true</tftpDefault>

            <members>

                <member priority="0">

                    <callManager>

                        <ports>

                            <ethernetPhonePort>2000</ethernetPhonePort>

                            <sipPort>5160</sipPort>

                            <securedSipPort>5161</securedSipPort>

                        </ports>

                        <processNodeName>YOURPBXADDRESS</processNodeName>

                    </callManager>

                </member>

            </members>

        </callManagerGroup>

    </devicePool>

    <commonProfile>

        <phonePassword></phonePassword>

        <backgroundImageAccess>true</backgroundImageAccess>

        <callLogBlfEnabled>0</callLogBlfEnabled>

    </commonProfile>

    <loadInformation>SIP75.9-4-2SR3-1S</loadInformation>

    <vendorConfig>

        <disableSpeaker>false</disableSpeaker>

        <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>

        <pcPort>0</pcPort>

        <settingsAccess>1</settingsAccess>

        <garp>0</garp>

        <voiceVlanAccess>0</voiceVlanAccess>

        <videoCapability>0</videoCapability>

        <autoSelectLineEnable>0</autoSelectLineEnable>

        <daysDisplayNotActive>1,7</daysDisplayNotActive>

        <displayOnTime>10:30</displayOnTime>

        <displayOnDuration>06:05</displayOnDuration>

        <displayIdleTimeout>00:05</displayIdleTimeout> 

        <displayOnWhenIncomingCall>1</displayOnWhenIncomingCall>

        <webAccess>0</webAccess>

<sshAccess>0</sshAccess>

        <spanToPCPort>1</spanToPCPort>

        <loggingDisplay>1</loggingDisplay>

        <loadServer></loadServer>

    </vendorConfig>

    <userLocale>

        <name>English_United_States</name>

        <uid>1</uid>

        <langCode>en_US</langCode>

        <version>1.0.0.0-1</version>

        <winCharSet>iso-8859-1</winCharSet>

    </userLocale>

    <networkLocale>United_States</networkLocale> 

    <networkLocaleInfo> 

        <name>United_States</name> 

        <uid>64</uid> 

        <version>1.0.0.0-1</version> 

    </networkLocaleInfo> 

    <deviceSecurityMode>1</deviceSecurityMode>

    <authenticationURL>http://YOURPBXADDRESS/xmlservices/authentication.php</authenticationURL>

    <directoryURL>http://YOURPBXADDRESS/xmlservices/PhoneDirectory.php</directoryURL>

    <idleTimeout>0</idleTimeout>

    <idleURL></idleURL>

    <informationURL>http://YOURPBXADDRESS/xmlservices/index.php</informationURL>

    <messagesURL></messagesURL>

    <proxyServerURL></proxyServerURL>

    <servicesURL>http://naraymm.iptime.org/xmlservices/index.php</servicesURL>

    <dscpForSCCPPhoneConfig>96</dscpForSCCPPhoneConfig>

    <dscpForSCCPPhoneServices>0</dscpForSCCPPhoneServices>

    <dscpForCm2Dvce>96</dscpForCm2Dvce>

    <transportLayerProtocol>1</transportLayerProtocol>

    <capfAuthMode>0</capfAuthMode>

    <capfList>

        <capf>

            <phonePort>3804</phonePort>

        </capf>

    </capfList>

    <certHash></certHash>

    <encrConfig>false</encrConfig>

    <sipProfile>

        <sipProxies>

            <backupProxy>YOURPBXADDRESS</backupProxy>

            <backupProxyPort>5160</backupProxyPort>

            <emergencyProxy>YOURPBXADDRESS</emergencyProxy>

            <emergencyProxyPort>5160</emergencyProxyPort>

            <outboundProxy>YOURPBXADDRESS</outboundProxy>

            <outboundProxyPort>5160</outboundProxyPort>

            <registerWithProxy>true</registerWithProxy>

        </sipProxies>

        <sipCallFeatures>

            <cnfJoinEnabled>true</cnfJoinEnabled>

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

        </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>false</remotePartyID>

            <userInfo>None</userInfo>

        </sipStack>

        <autoAnswerTimer>1</autoAnswerTimer>

        <autoAnswerAltBehavior>false</autoAnswerAltBehavior>

        <autoAnswerOverride>true</autoAnswerOverride>

        <transferOnhookEnabled>true</transferOnhookEnabled>

        <enableVad>false</enableVad>

        <preferredCodec>g711u</preferredCodec>

        <dtmfAvtPayload>101</dtmfAvtPayload>

        <dtmfDbLevel>3</dtmfDbLevel>

        <dtmfOutofBand>avt</dtmfOutofBand>

        <alwaysUsePrimeLine>false</alwaysUsePrimeLine>

        <alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>

        <kpml>3</kpml>

        <stutterMsgWaiting>1</stutterMsgWaiting>

        <callStats>false</callStats>

        <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>

        <disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>

        <startMediaPort>16384</startMediaPort>

        <stopMediaPort>32766</stopMediaPort>

        <voipControlPort>5160</voipControlPort>

        <dscpForAudio>184</dscpForAudio>

        <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>

        <dialTemplate>dialplan.xml</dialTemplate>

        <phoneLabel>YOURNAME</phoneLabel>

        <natEnabled>false</natEnabled>

        <sipLines>

            <line button="1">

                <featureID>9</featureID>

                <featureLabel>YOURACCOUNTID</featureLabel>

                <name>YOURACCOUNTID</name>

                <displayName>YOURACCOUNTID</displayName>

                <contact>2003</contact>

                <proxy>USECALLMANAGER</proxy>

                <port>5160</port>

                <autoAnswer>

                    <autoAnswerEnabled>2</autoAnswerEnabled>

                </autoAnswer>

                <callWaiting>3</callWaiting>

                <authName>YOURACCOUNTID</authName>

                <authPassword>YOURACCOUNTPASSWORD</authPassword>

                <sharedLine>false</sharedLine>

                <messageWaitingLampPolicy>1</messageWaitingLampPolicy>

                <messagesNumber>8555</messagesNumber>

                <ringSettingIdle>4</ringSettingIdle>

                <ringSettingActive>5</ringSettingActive>

                <forwardCallInfoDisplay>

                    <callerName>true</callerName>

                    <callerNumber>false</callerNumber>

                    <redirectedNumber>false</redirectedNumber>

                    <dialedNumber>true</dialedNumber>

                </forwardCallInfoDisplay>

            </line>

        </sipLines>

    </sipProfile>

</device>


15) Set Alternate TFTP to On, and Insert TFTP Server address to PBX IP Address


16) Reboot Phone, Phone will upgrade and load XML


17) Enjoy