Cisco 8851 doesn't register on Asterisk 13

Hello!

Yes it’s a big todo to get a Cisco IP phone working on Asterisk.

But I’m struggling now.

My 8861 shows always “Phone registering”. On the other side Asterisk logs nothing (Verbose on max). Tried a softphone as dummy and yes there are incoming request and they would be logged from Asterisk, but the Cisco does nothing.

Got the following things ready:

  • Cisco 8861 (with sip88xx.11-5-1-18 firmware)
  • Asterisk 13 with patch (cisco-usecallmanager-13.10.0.patch) … all compiled, installed fine on CentOS7
  • TFTP Server on CentOS7 (working, logs verified, phone grabbing relevant files SEP1CDEA7DB8E58.cnf.xml, dialtemplate.xml, AppDialRules.xml, softkeys.xml)

My SIP—.cnf.xml:

<?xml version="1.0" encoding="utf-8"?>
<device>
    <versionStamp>c1b05fde-ef64-11e5-9ce9-5e5517507c99</versionStamp>
    <fullConfig>true</fullConfig>
    <deviceProtocol>SIP</deviceProtocol>
    <sshUserId>cisco</sshUserId>
    <sshPassword>cisco</sshPassword>
    <transportLayerProtocol>1</transportLayerProtocol>
    <dndCallAlert>5</dndCallAlert>
    <featurePolicyFile></featurePolicyFile>
    <missedCallLoggingOption>0</missedCallLoggingOption>
    <commonProfile>
        <backgroundImageAccess>true</backgroundImageAccess>
        <phonePassword></phonePassword>
        <callLogBlfEnabled>0</callLogBlfEnabled>
    </commonProfile>
    <advertiseG722Codec>1</advertiseG722Codec>
    <authenticationURL></authenticationURL>
    <messagesURL></messagesURL>
    <informationURL></informationURL>
    <servicesURL></servicesURL>
    <directoryURL></directoryURL>

    <loadInformation>sip88xx.11-5-1-18</loadInformation>
    <devicePool>
        <dateTimeSetting>
            <dateTemplate>D/M/YY</dateTemplate>
            <timeZone>Central Europe Standard/Daylight Time</timeZone>
            <ntps>
                <ntp>
                    <name>0.de.pool.ntp.org</name>
                    <ntpMode>unicast</ntpMode>
                </ntp>
            </ntps>
        </dateTimeSetting>
        <callManagerGroup>
            <members>
                <member>
                    <callManager>
                        <processNodeName>192.168.4.56</processNodeName>
                        <ports>
                            <sipPort>5060</sipPort>
                        </ports>
                   </callManager>
                </member>
            </members>
        </callManagerGroup>
    </devicePool>
    <sipProfile>
        <alwaysUsePrimeLine>true</alwaysUsePrimeLine>
        <phoneLabel>051180602028</phoneLabel>
        <sipProxies>
            <registerWithProxy>true</registerWithProxy>
        </sipProxies>
        <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>0</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>true</remotePartyID>
            <userInfo>Phone</userInfo>
        </sipStack>
        <transferOnhookEnabled>true</transferOnhookEnabled>
        <enableVad>false</enableVad>
        <preferredCodec>none</preferredCodec>
        <dtmfAvtPayload>101</dtmfAvtPayload>
        <dtmfDbLevel>3</dtmfDbLevel>
        <dtmfOutofBand>avt</dtmfOutofBand>
        <stutterMsgWaiting>0</stutterMsgWaiting>
        <callStats>true</callStats>
        <offhookToFirstDigitTimer>15000</offhookToFirstDigitTimer>
        <silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>
        <startMediaPort>10000</startMediaPort>
        <stopMediaPort>20000</stopMediaPort>
        <natEnabled>false</natEnabled>
        <natReceivedProcessing>false</natReceivedProcessing>
        <natAddress></natAddress>
        <kpml>0</kpml>
        <voipControlPort>5060</voipControlPort>
        <dscpForAudio>184</dscpForAudio>
        <dscpVideo>136</dscpVideo>
        <ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>
        <dialTemplate>dialtemplate.xml</dialTemplate>
        <softKeyFile>softkeys.xml</softKeyFile>
        <sipLines>
            <line button="1" lineIndex="1">
                <featureID>9</featureID>
                <featureLabel>OfficeOne</featureLabel>
                <callWaiting>3</callWaiting>
                <proxy>USECALLMANAGER</proxy>
                <port>5060</port>
                <name>043886611</name>
                <authName>043886611</authName>
                <authPassword>verysecret</authPassword>
                <sharedLine>false</sharedLine>
                <messageWaitingLampPolicy>3</messageWaitingLampPolicy>
                <messageWaitingAMWI>0</messageWaitingAMWI>
                <messagesNumber>*97</messagesNumber>
                <ringSettingIdle>4</ringSettingIdle>
                <ringSettingActive>2</ringSettingActive>
                <autoAnswer>
                    <autoAnswerEnabled>2</autoAnswerEnabled>
                </autoAnswer>
                <forwardCallInfoDisplay>
                    <callerName>true</callerName>
                    <callerNumber>true</callerNumber>
                    <redirectedNumber>false</redirectedNumber>
                    <dialedNumber>true</dialedNumber>
                </forwardCallInfoDisplay>
                <maxNumCalls>3</maxNumCalls>
                <busyTrigger>3</busyTrigger>
            </line>
            <line button="2">
                <featureID>130</featureID>
                <featureLabel>DND</featureLabel>
            </line>
            <line button="3">
                <featureID>21</featureID>
                <featureLabel>OfficeTwo</featureLabel>
                <speedDialNumber>043886622</speedDialNumber>
                <featureOptionMask>1</featureOptionMask>
            </line>
            <line button="5">
                <featureID>159</featureID>
                <featureLabel>Record</featureLabel>
            </line>
            </sipLines>
        </sipProfile>
    <vendorConfig>
        <disableSpeaker>false</disableSpeaker>
        <disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>
        <pcPort>0</pcPort>
        <settingsAccess>1</settingsAccess>
        <garp>1</garp>
        <voiceVlanAccess>0</voiceVlanAccess>
        <videoCapability>1</videoCapability>
        <ciscoCamera>1</ciscoCamera>
        <autoSelectLineEnable>1</autoSelectLineEnable>
        <webAccess>0</webAccess>
        <spanToPCPort>1</spanToPCPort>
        <daysDisplayNotActive>1,7</daysDisplayNotActive>
        <displayOnTime>08:00</displayOnTime>
        <displayOnDuration>01:00</displayOnDuration>
        <displayIdleTimeout>00:30</displayIdleTimeout>
        <displayOnWhenIncomingCall>1</displayOnWhenIncomingCall>
        <simplifiedNewCall>0</simplifiedNewCall>
        <phoneBookWebAccess>1</phoneBookWebAccess>
        <handsetWidebandEnable>2</handsetWidebandEnable>
        <headsetWidebandEnable>2</headsetWidebandEnable>
        <headsetWidebandUIControl>1</headsetWidebandUIControl>
        <handsetWidebandUIControl>1</handsetWidebandUIControl>
        <separateMute>0</separateMute>
        <sshAccess>1</sshAccess>
        <sshPort>22</sshPort>
        <autoCallSelect>1</autoCallSelect>
        <incomingCallToastTimer>5</incomingCallToastTimer>
        <joinAndDirectTransferPolicy>1</joinAndDirectTransferPolicy>
        <bluetooth>1</bluetooth>
        <bluetoothProfile>0,1</bluetoothProfile>
        <btpbap>1</btpbap>
        <usb1>1</usb1>
        <usb2>1</usb2>
        <usbClasses>0,1,2</usbClasses>
        <g722CodecSupport>2</g722CodecSupport>
        <softkeyControl>1</softkeyControl>
    </vendorConfig>
    <userLocale>
        <name>de-DE</name>
        <uid>1</uid>
        <langCode>de-DE</langCode>
        <version>1.0.0.0-1</version>
        <winCharSet>iso-8859-1</winCharSet>
    </userLocale>
    <networkLocaleInfo>
        <name>de-DE</name>
        <uid>1</uid>
        <langCode>de-DE</langCode>
        <version>1.0.0.0-1</version>
    </networkLocaleInfo>
    <phoneServices>
        <provisioning>0</provisioning>
        <phoneService type="1" category="0">
            <name>Missed Calls</name>
            <url>Application:Cisco/MissedCalls</url>
            <vendor></vendor>
            <version></version>
        </phoneService>
        <phoneService type="2" category="0">
            <name>Voicemail</name>
            <url>Application:Cisco/Voicemail</url>
            <vendor></vendor>
            <version></version>
        </phoneService>
        <phoneService type="1" category="0">
            <name>Received Calls</name>
            <url>Application:Cisco/ReceivedCalls</url>
            <vendor></vendor>
            <version></version>
        </phoneService>
        <phoneService type="1" category="0">
            <name>Placed Calls</name>
            <url>Application:Cisco/PlacedCalls</url>
            <vendor></vendor>
            <version></version>
        </phoneService>
        <phoneService type="1" category="0">
            <name>Contacts</name>
            <url></url>
            <vendor></vendor>
            <version></version>
        </phoneService>
        <phoneService type="0" category="0">
            <name>Visual Voicemail</name>
            <url></url>
            <vendor></vendor>
            <version></version>
        </phoneService>
    </phoneServices>
</device>

Any idea welcome!

Best regards
Sebastian

What is the configuration in Asterisk for it?

Which configuration file exactly? (I’m new to Asterisk)

Got the registration solved - just enabled TCP Bind in Asterisk.

But after this I’got a new problem - another registration problem. I’ve setup my 8861 via sip.conf:

[sebastian]
type=friend
context=extensions
host=dynamic
nat=no
trustrpid=no
sendrpid=rpid
rpid_update=yes
rpid_immediate=yes
allowsubscribe=yes
notifyhold=yes
callcounter=yes
videosupport=no
disallow=all
allow=ulaw
allow=alaw
allow=g729
allow=g722
transport=tcp
cisco_usecallmanager=yes
cisco_pickupnotify_alert=from,to
cisco_pickupnotify_timer=5
cisco_keep_conference=no
cisco_multiadmin_conference=yes
dndbusy=yes
huntgroup_default=yes
secret=verysecret

This above code works until I try to configure PJSIP.conf and add the following lines into it:

[global]
type=global
user_agent=any-name
endpoint_identifier_order=ip,username
default_from_user=xxx

[transport-udp]
type=transport
protocol=udp
bind=0.0.0.0

[transport-tcp]
type=transport
protocol=tcp
bind=0.0.0.0

[telekom_xxx]
type=registration
transport=transport-udp
outbound_auth=telekom_xxx_auth
server_uri=sip:tel.t-online.de
client_uri=sip:+49xxx@tel.t-online.de
contact_user=xxx
retry_interval=60
forbidden_retry_interval=300
expiration=480
auth_rejection_permanent=false
dtmfmode=rfc4733

[telekom_xxx_auth]
type=auth
auth_type=userpass
password=xxx
username=xxx
realm=tel.t-online.de

[telekom_out]
type=endpoint
transport=transport-udp
context=unspecified
disallow=all
allow=g722
allow=alaw
outbound_auth=telekom_xxx_auth
aors=telekom_out
callerid=xxx
from_user=xxx
from_domain=tel.t-online.de

[telekom_out]
type=aor
contact=sip:+49xxx@tel.t-online.de

[telekom_in]
type=endpoint
transport=transport-udp
context=telekom_in
disallow=all
allow=g722
allow=alaw
outbound_auth=telekom_xxx_auth

[telekom_in]
type=identify
endpoint=telekom_in

After a Asterisk restart, my 8861 went into “Phone registering” and does nothing … hmm …

BR
Sebastian

You can’t have both chan_sip and chan_pjsip configured for TCP on the same port. Depending on the order in which they load one will get it first, in this case it’s likely chan_pjsip. You have to run it on a different port - such as 5062:

bind=0.0.0.0:5062

Ah okay! but if I understand …

  • the 8861 connects via TCP to Asterisk (chan_sip)
  • can I leave my Provider (DTAG) connects through Asterix via UDP (pjsip)?

Many thanks!

Yes, you can. You’ll need to disable UDP in chan_sip though or change it also to a different port just to be sure.