Cisco UC 500

CTI

This chapter describes switching on the telephone system Cisco UC500 at the XPhone Connect Server with the CSTA interface (TR87).

System requirements

Cisco UC 500

  • Software version:

    • Cisco UC 5xx, Version 8.0.4, Software-Image V15.0(1)

    • Optional: Optional tool C4B CME Browser V4.1 Build 878 or higher (can be found on the XPhone Connect Server DVD)

    • Only SCCP IP phones are supported.

XPhone Connect Server

  • Supported from XPhone Connect Server V5.0

Supported functions

The following functions are available at the CSTA interface:

Telephone functions

  • Dialling (MakeCall) with the handset put down

  • Accepting (Answer)

  • Hang up (Drop)

  • Status display: Missed calls

  • Status display: Connect incoming call

  • Status display: Connect outgoing call

  • Telephone number: internal caller (outgoing/incoming)

  • Telephone number: external caller (outgoing/incoming)

  • Telephone number: Called person for pickup (CalledID)

  • Telephone number: When redirected by third person (RedirectionID)

Team function

  • Forward call (Redirect, Deflect)

Second call

  • Waiting call: Call display

  • Accept waiting call (callback is started)

  • Forward waiting call (redirect, deflect)

Callback/Swaphold

  • Callback: Show status

  • Callback (basic functions: consultation, transfer)

  • Transfer call without callback (blind transfer)

  • Swaphold

  • Hold call (Hold/Unhold)

  • Unhold when earpiece was not put down

Call redirecting

  • Show status (forwarding, DoNotDisturb)

  • Forwarding

  • Set DoNotDisturb

  • Fwd: Shows telephone number to which the call is redirected

Restrictions

  • Reject call

  • Detect call status: Busy

  • Called ID is not transferred for direct call

  • RedirectingID is not transferred if the call was forwarded from another connection.

  • Directed pickup

  • Accept/reject second call.

  • Callback when busy

  • Withhold own number

  • Set/show forwarding “internal/external” separately, “after a period”, “when busy”.

  • Display and control of conferences.

Warning

This will lead to erroneous displays in the CTI interface. This is due to the current design of the UC 500 interface and cannot be prevented by the application.

Configuring Cisco UC 500

Configuration of the CSTA interface of the telephone system

You can find detailed information for setting up the CTI interface with CSTA in the Cisco connection documentation of the CME: http://www.cisco.com/en/US/docs/voice_ip_comm/cucme/admin/configuration/guide/cmecti.html

Important settings in Cisco UC 500

Start the terminal for the configuration (Telnet or Hyperterminal) or use the HTTP configuration interface accordingly. First, activate the AXL interface. This allows configuration and diagnostics support with the XPhone Connect Server.

  • An advanced status query of the end devices is also made with the AXL interface:

    enable
    configure terminal
    ip http server
    ixi transport http
    response size 64
    request timeout 10
    no shutdown
    exit
    
    ixi application cme
    response timeout 10
    no shutdown
    exit
    
  • Activate the CTI function:

    voice service voip
    allow-connections sip to sip
    gcid
    no cti shutdown
    cti csta mode basic
    sip
    min-se 120
    exit
    exit
    voice register global
    mode cme
    exit
    
  • Now set up a new SIP session sever if it does not already exists (default configuration).Set the number of the session server to a value between 1 and 8 that is not yet used:

    voice register session-server 1
    keepalive 60
    register-id c4b
    cti-aware
    exit
    
  • Replace the terms <user name> and <password> with the values you favour. Note both down for later reference. They are login information of the AXLUser:

    telephony-service
    xml user <username> password <password> 15
    no shutdown
    end
    
C4B CME Browser

Continue with the configuration using the supplied tool “C4BCMEBrowser.exe”. You can find this programme in the directory “ServerTools” on the DVD. Use at least version 4.1 Build 878.

  • Start the programme and enter the name of the AXL user, his password and the IP address of UC500.

  • Read the configuration of the system with Read configuration. Then, select Activate CTI.

  • The following dialogue shows the command that are necessary to activate the CTI functions. Use the default settings in this dialogue.

  • The button Activate Now sends the commands to UC 500.

  • Running the Activate now function is non-critical.

Hint

Do not forget to save the configuration of UC500 after testing the system, since otherwise the configuration will be lost after restarting the system. If you set the option Save Running-Config to Startup-Config before running the Activate now function, this will be done automatically. Test the CTI function before saving the configuration and, if successful, run the Activate now function with the save option set. Then, run a reload of the system.

Monitoring CTI sessions

You can control and, if necessary, reset the SIP sessions created for call control using the tool C4B CME Browser. To do this, run the CTI Commands… function. After Get CTI Sessions, you will get a list with the present sessions. You can reset sessions individually or completely. It may not be possible to use the CTI functions for a few minutes after resetting. Resetting manually is generally not possible, since the XPhone Connect Server monitors the session automatically. However, the function is useful to detect possible network problems, if SIP sessions are disconnected e.g. by the router.

Making configuration settings manually
  • These settings need only be carried out, if the additional tool C4B CME Browser is not to be used. For every end device that is to be available for CTI, this command sequence must be run: Replace the value for “x” with the corresponding extension ID of the connection and “y” with the extension number. Also add the command “cti notify”, if it is a mobility extension, i.e. if the telephone number to be monitored is not associated permanently with the same physical device:

    ephone-dn x
    number y
    cti watch
    exit
    
Appendix - Additional information - Switching on with TR87

Additional information is not required for standard switch-on. For complex network environments, it may be necessary to change these settings.

Appendix UC 500 - General

CTI connections based on the TR87 protocol (http://www.ecma-international.org/publications/techreports/E-TR-087.htm) are based in the SIP protocol documented in numerous RFCs (http://de.wikipedia.org/wiki/Session_Initiation_Protocol). An important speciality of SIP is that notification exchange is possible via TCP connections, without connection by sending UDP messages and a mixture of both network protocols. In communication without connection, it is necessary that both sides define a port, where they can receive messages. The configuration of the TR87 connection therefore consists of two parts: a local configuration and the configuration with which the target can be reached.

Another speciality of the TR87 switch-on is that the connection is realised for each line, i.e. there is no defined functionality and connection possibility at the telephone system level. The function of the telephone system in the XPhone Connect Server is therefore only dependent on a successful start-up of the local SIP end point. Information about the connectivity to the telephone system can only be obtained after configuration/activation of a line.

Only in certain cases it is necessary that the local SIP end point registers in the target system (e.g. Nortel connection via NRS=network routing service). In this case, the connection status of the telephone system also affect the connectivity to the telephone system.

XPhone Connect configuration

System settings > Telephony & Meetings > Telephony > CTI

Click new landline gateway in the table header. The Create new landline gateway dialogue opens:

PBX type:

Select Cisco UC500/CME (uaCSTA)

Name:

Enter a unique name here.

Dialling parameter:

Select a dialling parameter.

Deactivated:

Set this flag if this gateway is to be pre-configured but not activated.

Connection to the PBX (SIP-URI):

Enter the host name or the IP address of the UC500 system here. Enter the port (default: 5060).

Hint

You can find additional information about the structure of the SIP-URI in the appendix

Local SIP domain:

If you use Unified Messaging functions with IP (XCAPI), the standard SIP port 5060 on the XPhone Connect Server is already occupied.

Therefore, port 5062 is used as default port for the SIP listener.

This setting only affects the SIP port at which the XPhone Connect Server receives SIP messages.

The SIP settings of UC500 do not need to be re-configured for this.

AXL access parameter:

Generally, the host name or IP address of the AXL access is identical to the ones of the SIP access. Also enter the AXL access parameters here.

System settings > Telephony & Meetings > Telephony > CTI > New Landline gateway

../../_images/xc_uc500_pbx_settings_v5.png

Advanced settings

Deactivate SessionTimeout of the XPhone Connect Server. To do this, click on the tab Advanced settings and then Add; enter the following name and value and then click Apply.

  • Name: SIPSessionTimer

  • Value: 0

../../_images/xc_uc500_pbx_settings2_v5.png

When the configuration is completed click Apply and then Save to save the settings.

Diagnostics

You can find information on diagnostics here.

XPhone Connect Line configuration

System settings > Telephony & Meetings > Telephony > Lines

There are no further peculiarities. The corresponding Lines and Users must be set up and configured in the XPhone Connect Server.

If several network cards are to be used

  1. Also create the parameter SIPDomain in the advanced settings of the telephone system. There, enter the network where the network card is active with which your UC500 can be reached.

  2. Klicken Sie unter Lokale SIP Domäne aufErweitert(siehe oben) und tragen folgenden Wert ein: sip:CTIServer@{domain}:5062;transport=tcp,udp.Ersetzen Sie den Port 5062 (lokaler SIP Listener Port) gegebenenfalls durch einen anderen Wert.

Configuring the local end point

In most cases, it is not necessary to change the configuration of the local end point, i.e. the default settings can be applied. Exceptions can be:

  • The default SIP listener port 5062 on the XPhone Connect Server is already used by another service locally (e.g. XCAPI). (see also “FAQ” at the end of the document)

  • Es gibt mehrere IP-Adressen/Netzwerkkarten und das Default-Routing ermöglicht keine Erreichbarkeit des Ziels

Local and remote SIP end points are configured with so-called SIP-URIs (start with sip:). You can use variables in these URIs for simplification (e.g. for later changes):

The SIP-URI is a central configuration parameter in the XPhone Connect Server. It can contain the following variables:

Variable

Description

{domain}

Refers to the PBX parameter “SIPDomain”

{port}

Refers to the PBX parameter “SIPPort”

{localhost_ip}

Refers to the first IP address of the network card

{localhost_name}

Refers to the local host name of the system

Example for SIP-URI: sip:CTIServer@192.168.0.122:{port}

In addition to variables, there are a number of important default parameters that can be used in SIP-URIs. The default parameters can also be used in the variables:

URI default parameter

Description

transport

Favours certain transport protocols.

Values: tcp, udp (separate several values with commas)

maddr

Specifies the IP address for domains that cannot be resolved via DNS. Use this parameter e.g. if the service domain created in Nortel NRS is not known in the network.

grp

Allows authorisation of the CTI access via so-called “customer group”.

pw

Password for authorisation.

Example: sip:grp=Group1;pw=1234;Account@domain.de;maddr=192.168.2.5

The following list of PBX parameters can be set in “Advanced settings” of the telephone system configuration in the XPhone Connect Server. You can find the PBX parameters for the configuration of the local end point in the table:

Name

Description

Value:

SIPDomain

Contains the local SIP domain.

{localhost_ip}

SIPPort

Includes the SIP port used via the variable {port}.

5060

SIPLocal

Configures the local end point used to receive SIP messages (see notes).

sip:CTIServer@*:{port} ;transport=udp,tcp

SIPFlags

+1: Repair UTF8 coding of SIP files

+2: Register in the target system (see notes)

+4: Perform registration without NAT probing

+8: Activate strict sequence verification of events (see following notes under the table)

(see following notes under the table)

0

SIPSessionTimer

Timer (units: seconds) to maintain the connection and control the SIP sessions.

1800

Hint

  • The parameter SIPLocal defines the local end point. “*” is used for linking to all local IP addresses on the specified port. If the local system has several IP addresses with only one of them being linked with the target system, change the value SIPDomain to this IP address (a DNS name can also be used if it can be clearly resolved). Furthermore, change the value of SIPLocal and replace “*” with the value “{domain}”.

  • If another port is to be used locally, only change the settings of SIPPort.

  • The registration in the target system to be activated with``SIPFlags= 2`` is run upon start of the telephone system. See chapter Registration in the target system.

  • CSTA events are often only provided by the target system via UDP. However, the sequence of the transferred messages is not guaranteed with UDP, i.e. the sequence upon receipt can be different from the sending sequence. According to SIP-RFC, messages that were overrun must be discarded. This would result in missing CSTA messages and therefore an erroneous status display. To prevent this, SIP messages with incorrect sequence are also processed in default. A strict sequence verification can be activated with the flag, if required.

Registration in the target system

Registration in the target system may be necessary for different reasons. The local end point then publishes its current availability and status. The target system can dynamically redirect e.g. the SIP communication to another target with the 302:Moved temporarily.

Since the registration is directly related to establishing TR87 connections described below, the parameters configured in default are used there. In the simplest case, it can be sufficient to add the flag “2” to the parameter SIPFlags described above. The registered local system is only described in the parameter SIPDefaultFrom (see next chapter “Connections”).

Name

Description

Value

SIPRegProxy

Overwrites the target for registration. If the parameter is not configured, the first non-empty default value is used.

1. Wert von SIPDefaultTo

2. Wert von SIPDefaultProxy

Configuring the TR87 connection

One TR87 connection to the target system is established for each line. For this purpose, SIP is used as transport mechanism for CSTA messages. Generally speaking, each CSTA session is a “request” that stays in the “connect” status for the entire duration of the session. “Hanging up” the call represents the end of the CSTA session. CSTA messages are swapped using SIP-INFO Message during the session.

The manufacturer specifies how the session or the request must be initiated. The initial SIP-INVITE Message often requires a URI containing data of the affected extension. This information can be included transparently with additional variables:

Example: sip:{extension}@195.10.1.11 contains the dial number of the extension in the address field of the URI. You can find an additional line-specific list of variables for the configuration of URIs below:

Variable

Description

{extension}

Refers to the extension of the line

{address}

Refers to the complete address of the line in canonical form (+49(89)-12345-0)

{device_id}

Refers to the conversion address -> DeviceID (see next chapter)

{device_id_tel}

Like {device_id} but enforces a TEL-URI, i.e. starts with tel:

{device_id_sip}

Like {device_id} but enforces a SIP-URI, i.e. starts with sip:

{destination_id}

Refers to the conversion address -> DestinationID (see next chapter)

{destination_id_tel}

Like {destination_id} but enforces a TEL-URI, i.e. starts with tel:

{destination_id_sip}

Like {destination_id} but enforces a SIP-URI, i.e. starts with sip:

List of all extended PBX parameters for configuration of the TR87 connection:

Name

Description

Value:

SIPDefaultProxy

URI for connection Configured with the entry field of the telephone system, i.e. not as “Advanced setting”.

SIPDefaultTo

Value of the SIP-To Header Determined automatically from SIPDefaultProxy in default.

SIPDefaultFrom

Value of the SIP-From Header.

sip:CTIS erver@{domain}:{port}

SIPDefaultContact

Value of the SIP-Contact Header Determined automatically from SIPDefaultFrom in default.

Hint

The value of SIPDefaultForm consists mainly of the SIPDomain and SIPPort values. That means that it automatically uses the settings of the local end point. The name “CTIServer” used for local addressing is a default value; it may be possible to overwrite it during registration (see previous chapter).

If there are lines require a very particular configuration that deviates from the majority of the other lines, or if the required SIP parameters cannot be met with the variables (e.g. user name/password in URI), then the PBX parameters can be overwritten with line parameters, i.e. for each line. Line parameters for configuring the TR87 connection:

Name

Description

Value:

SIPProxy

Overwrites the PBX parameter SIPDefaultProxy.

SIPTo

Overwrites the PBX parameter SIPDefaultTo.

SIPFrom

Overwrites the PBX parameter SIPDefaultFrom.

SIPContact

Overwrites the PBX parameter SIPDefaultContact.

SIPPrivateData

Private context information with which the TR87 session is initialised (see next chapter)

{device_id}

Hint

The value of SIPPrivateData is part of the initial INVITE messages that starts the session. This is often the only and decisive parameter that defines the relation SIP-Session <=> CSTA-Device. Therefore the definition of SIPPrivateData often depends on the manufacturer. Here, a TEL-URI is used in the standard by analysing the variables {device_id}.

Example: tel:2010;phone-context=logicalDevice

Configuring special extended PBX parameters

Two other important extended PBX parameters are responsible for the conversion of telephone numbers/addresses into the format accepted by the system. There are two types: DeviceID and DestinationID.

  • The DeviceID here always refers to the reference to an extension in the system for which an action is to be carried out.

  • The DestinationID is always the target of an action and can be another extension in the system as well as an externally available telephone number.

Special PBX parameters:

Parameter

Description

SIPFormatDeviceID

Regular printout for formatting the TEL-URI for the CSTA-Device ID parameter. The default value: uses the extension of the line with phone-context=logicalDevice.

SIPFormatDestinationID

Regular printout for formatting the TEL-URI for numbers called. Standard: uses phone-context=dialstring.

The parameters consist of a printout for a match/replace action with regular expressions. The general format is:

<Match1>||<Replace1>||<Match2>||<Replace2>

The entry in SIPFormatDeviceID is always a telephone number in canonical form, e.g. +49(89)12345-922.

The default rule generates from this:

tel:922;phone-context=logicalDevice

The entry in SIPFormatDestinationID is always a telephone number in dialable format, i.e. as it is generated by the associated dialling parameters in the XPhone Connect Server, e.g. 008912345922 (additional 0 for office).

The default rule generates from this:

tel: 008912345922;phone-context=dialstring

FAQ

  1. Which settings must be changed for multiple network cards?

  1. The following procedure is recommended for the settings:

    • PBX:SIPLocal= sip:CTIServer@{domain}:{port};transport=udp,tcp

    • PBX:SIPDomain=<Local IP address that can be reached via the target>

  1. The local SIP port 5060 may be used by another application. How can I check this?

  1. Use the command:

    • netstat –a –n Display of the local listeners on TCP/UDP

    • netstat –a –n –o Also show the process ID.

    To find the name from the process ID, use e.g.

    • tasklist –fi "PID eq <Value of PID>"

  1. How do I change the local SIP port to a value other than the default port 5060?

  1. With the settings PBX:SIPPort=<Portnummer>

Have you found an mistake on this page?

Please send us a hint about this error by mail to doku@c4b.de. Thank you very much!