Cisco Corner‎ > ‎Cisco Voice‎ > ‎CP-7941G SIP setup‎ > ‎


Every phone needs its own file, where the 12 X is replaced with the phones MAC address
in this setup:
3CX server IP:
Username: 100
Password: secretpassword
Phone name: Cisco_Phone


<timeZone>Central European Time</timeZone>
<member priority="0">
<!—Note – This following may need to be just g711 in later firmware versions -->
<line button="1">
<line button="2">
on i found the following witch helps explain what the different parts of the file means, the bellow list is copied from, and all credit goes to them.
The file should be named appropriately (i.e. SEP[MAC address].cnf.xml) and ASCII encoded. This is where your SIP proxy information goes.

General configuration

The following settings are particularly important and referenced elsewhere in this write up:

Sets local time zone (values described elsewhere). The SIP RFC requires that all dates be transmitted in UTC, so this setting enables the phone to convert to local time for the on-screen display

Must be either an IP address or a DNS name that resolves. In a CallManager PBX scenario, this would be the name of the CallManager server. works fine

outboundProxy, outboundProxyPort
Configure a local outbound SIP proxy (e.g. siproxd, OpenSER). If you have one VOIP provider and they require you to register using a different SIP domain than their SIP proxy's FQDN, then you may be able to add the SIP proxy's FQDN here and the SIP domain in the proxy setting for the SIP line. Otherwise leave this setting empty

true is a good choice as it instructs the phone to register with configured SIP lines

true enables voice activity detection (VAD), which reduces bandwidth requirements but causes errors with Asterisk SIP proxies and may cause the beginning and end of the user's words to sound clipped

Choices are g711ulaw, g711alaw, or g729a, though the phone will use a non-preferred codec when required

If true the phone will use the "Received" header from the SIP proxy (usually 401 Authentication Required) to masquerade its contact information. It works for some people but not others, and might be a way to avoid hard-coding your router's external address into the configuration if you can make it work

If true the phone will use the value of the natAddress option instead of its own IP address for SIP, SDP, and RTP messages. If natReceivedProcessing is true it will (reportedly) override the value of the natAddress setting. The documentation for the 79x0 equivalent nat_enable parameter describes how the various NAT settings are used

Public IP address or DNS name of your router. You could use a dynamic DNS registration to ensure that this always matches your router's public IP address (e.g., though configuring dynamic DNS is outside the scope of this write up. The value UNPROVISIONED is equivalent to an empty value

As many as 11 characters to show in the upper right of the phone's display, if not set it defaults to the value of the name setting for the lowest number line button (i.e. button closest to top of phone)

First UDP port to use for RTP audio streams (defaults to 16384). This should match your router's NAT mapping

Last UDP port to use for RTP audio streams (defaults to 32768), should be greater than startMediaPort. This should match your router's NAT mapping

UDP port to listen for incoming SIP messages (defaults to 5060). Note that this is not the port the phone uses to send SIP messages. This odd behavior is RFC compliant but highly non-standard and breaks symmetric NAT traversal workarounds commonly deployed by VOIP providers

Value should match name of dial plan file on TFTP server where the configuration file is found. The 79x1 can use 79x0 dial plan configuration files.

Name of firmware to load, which should match the name of a file on the TFTP server where the configuration file is found without the .loads extension. (e.g. SIP41.8-0-2SR1S.loads corresponds to a value of SIP41.8-0-2SR1S for loadInformation in the configuration)

Configuring SIP lines for your VOIP provider

Each line button on the phone can be configured as a SIP line by setting the appropriate featureID value

button attribute value identifies the button to configure, 1 is the top button and either 2 (7941G) or 6 (7961G) is the bottom button

Should be 9 for a SIP line

Text to display next to the line button, if not set the value of the name setting will be displayed. This is reported as shortName in the SSH debug console, which is the equivalent setting for the 79x0

FQDN or realm to use in SIP registration request (the latter if outboundProxy is set)

UDP port on proxy to send SIP messages, normally 5060

Username value for SIP registration request

Username value used in response to an authentication challenge

Password value used in response to an authentication challenge

Number to dial when Messages button is pressed

Username value for SIP contact in registration request. If your SIP username is scott and you have an incoming DID of 15555551212 then your settings may be name=scott, and contact=15555551212 or the phone will ignore incoming SIP invitations (incoming calls)