Update (1/27/2014): We've migrated our community/forum experience to our DevNet Developer community at communities.cisco.com/community/developer.  We've locked the forums here on 1/24 from future entries, but are leaving them open for review for 30 days. To ask a new question or post a new comment please proceed to communities.cisco.com/community/developer and find the corresponding space supporting the technology you're interested in or working with.

To head back to DevNet, click here

Blogs

Cisco is coming out with a new line of phones which will supersede / obsolete the existing 79xx models over the next couple of years. The primary issue with supporting RT/RT Lite phones is with required support for Join Across Line(JAL) and Direct Transfer Across Line (DTAL) features, which requires UCCE to monitor multiple lines on agent devices.

Since UCCE is monitoring all lines on the phone in the Multi Line mode, it is natural to expose Multi Line functionality on the agent device. Multi Line support will apply to legacy phones as well as the new 6900, 8900, and 9900 model phones.

UCCE will continue with the notion of a SINGLE ACD line and that will be determined by the extension agent uses to log in. Other extensions on the same device are referred to as non-ACD or secondary lines.

Single Line mode is still the default UCCE setting, Multi Line is enabled through configuration for the peripheral. It applies to all agents who log into that peripheral.

For Configuration information, refer to the UCCE Administration and Configuration Guide.

Here are the GED-188 CTI Server Protocol v14 changes related to Multi Line:

Added DEVID_NON_ACD_DEVICE_IDENTIFIER and DEVID_SHARED_DEVICE_IDENTIFIER as new DeviceIDType
Added non ACD line types LINETYPE_NON_ACD_IN, and LINETYPE_NON_ACD_OUT as new Line Type
Added calltype CALLTYPE_NON_ACD (38) as new call type
OPEN_CONF: Added NumPeripherals, FltPeripheralID, and MultilineAgentControl
Added (New for V14) new failure code
CF_MAXIMUM_LINE_LIMIT_EXCEEDED
CF_SHARED_LINES_NOT_SUPPORTED
CF_EXTENSION_NOT_UNIQUE
Added to service masks
CTI_SERVICE_ACD_LINE_ONLY


Backwards Compatibility

Connecting clients that use versions prior to GED-188 version 14 is strongly discouraged but not prevented by CTI-Server. An alarm will be raised when Multi Line is enabled on a peripheral and the client connects with older protocol version.

When Multi Line mode is enabled on a peripheral, if a CTI client connects with an protocol revision older than 14, events will still be received for those calls, but, given the new device/subject identifier form, they shouldn't be recognized as calls on that agents primary device. Note however that when doing a SNAPSHOT_DEVICE_REQ, on the SNAPSHOT_DEVICE_CONF calls not on the primary line will not be returned. That is, only calls on the agents primary (ACD) line will be returned. This is the case for < V14 clients, or V14 clients that set the CTI_SERVICE_ACD_LINE_ONLY service mask.

Device ID
The contents of subject DeviceID fields are going to change to include the instrument, extension, and line position. This is being done primarily for serviceability and tracing, but it is believed that it will make other Multi Line features easier to use in the future

Format of the Device ID
Clients will see a string containing the instrument (Agents primary extension), a dot ('.'), then the actual extension of that device, then a dot plus the extension (line) position on the device. Note that this is visible in all versions of the protocol. Non subject device fields (DNIS/ANI) will not have this format. For calls on the primary extension these will be truncated to just the primary extension. (I.E. Instead of seeing 1000.1000.1 you'll see 1000).
ConnectionDeviceID
ConnectionDeviceIDs will use this same format.
Impact to apps that don't care about this new information:
This information will impact all applications if Multi Line is used - If they stay v13 or lower, and the Multi Line Agent feature is enabled, the CTI application will see the enumerations for Line Type, Call Type, Device ID Type, and Device ID fields will contain the new dotted format. If the application does not recognize the device ID type or the dotted format, we expect that these connections will assume to be unmonitored devices, but older applications should test with the new fields to verify.
If new applications do not wish to see these calls on a SNAPSHOT_DEVICE_CONF they should request the CTI_SERVICE_ACD_LINE_ONLY in the OPEN_REQ service mask. Note that this does not effect events, just the visibility of calls on a SNAPSHOT_DEVICE_CONF.
Impact to apps desiring to use this new data:
Apps that want this new data will need to change their implementation code to decode the extension and position suffix in the Device ID to utilize it.
Functionality with third party requests:
This scheme works with third party requests, allowing the clients to specify the extension that an operation (Such as Make Call) should be performed on.


Sample Call Flow and CTI application events

This sample shows some events from a call from Agent 1's second extension (67501-- 66501 is the ACD) to agent 2's secondary extension (67505-- 66505 is the primary).
Note:
In this scheme, agent state events (contents) don't change and the only call events (content wise) that change are BEGIN_CALL_EVENT, AGENT_PRE_CALL_EVENT, CALL_DATA_UPDATE.
Only BOLD highlighted areas have contents that are different than today (aside from monitoring the 2nd line).

09:41:57 cg1A-ctisvr SESSION 1: MsgType:BEGIN_CALL_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC Simplified
09:41:57 cg1A-ctisvr SESSION 1: NumCTIClients:1 NumNamedVariables:0 NumNamedArrays:0 CallType:CALLTYPE_NON_ACD
09:41:57 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:41:57 cg1A-ctisvr SESSION 1: CalledPartyDisposition:CD_INVALID ConnectionDeviceID:"66501.67501.2" ANI:"67501"
09:41:57 cg1A-ctisvr SESSION 1: CTIClientSignature:"CTIOSServer" CTIClientTimestamp:0x4addbe24 (10/20/09 09:41:56) )
09:41:57 cg1A-ctisvr SESSION 1: MsgType:CALL_SERVICE_INITIATED_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC
09:41:57 cg1A-ctisvr SESSION 1: Simplified ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:41:57 cg1A-ctisvr SESSION 1: LineHandle:0 LineType:LINETYPE_NON_ACD_OUT ServiceNumber:N/A ServiceID:N/A
09:41:57 cg1A-ctisvr SESSION 1: SkillGroupNumber:N/A SkillGroupID:N/A SkillGroupPriority:0
09:41:57 cg1A-ctisvr SESSION 1: CallingDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER LocalConnectionState:LCS_INITIATE
09:41:57 cg1A-ctisvr SESSION 1: EventCause:CEC_NONE ConnectionDeviceID:"66501.67501.2" CallingDeviceID:"66501.67501.2" )
09:41:58 cg1A-ctisvr SESSION 1: MsgType:CALL_DATA_UPDATE_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC Simplified
09:41:58 cg1A-ctisvr SESSION 1: NumCTIClients:0 NumNamedVariables:0 NumNamedArrays:0 CallType:CALLTYPE_NON_ACD
09:41:58 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:41:58 cg1A-ctisvr SESSION 1: NewConnectionDeviceIDType:CONNECTION_ID_STATIC NewConnectionCallID:17140323
09:41:58 cg1A-ctisvr SESSION 1: CalledPartyDisposition:CD_INVALID CampaignID:0xffffffff QueryRuleID:0xffffffff
09:41:58 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66501.67501.2" NewConnectionDeviceID:"66501.67501.2"
09:41:58 cg1A-ctisvr SESSION 1: DialedNumber:"67505" )
09:41:58 cg1A-ctisvr SESSION 1: MsgType:CALL_ORIGINATED_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC Simplified
09:41:58 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323 LineHandle:0
09:41:58 cg1A-ctisvr SESSION 1: LineType:LINETYPE_NON_ACD_OUT ServiceNumber:N/A ServiceID:N/A SkillGroupNumber:N/A
09:41:58 cg1A-ctisvr SESSION 1: SkillGroupID:N/A SkillGroupPriority:0 CallingDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER
09:41:58 cg1A-ctisvr SESSION 1: CalledDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER LocalConnectionState:LCS_INITIATE
09:41:58 cg1A-ctisvr SESSION 1: EventCause:CEC_NONE ConnectionDeviceID:"66501.67501.2" CallingDeviceID:"66501.67501.2"
09:41:58 cg1A-ctisvr SESSION 1: CalledDeviceID:"66505.67505.2" )
09:41:58 cg1A-ctisvr SESSION 1: MsgType:CALL_DATA_UPDATE_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC Simplified
09:41:58 cg1A-ctisvr SESSION 1: NumCTIClients:0 NumNamedVariables:0 NumNamedArrays:0 CallType:CALLTYPE_NON_ACD
09:41:58 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:41:58 cg1A-ctisvr SESSION 1: NewConnectionDeviceIDType:CONNECTION_ID_STATIC NewConnectionCallID:17140323
09:41:58 cg1A-ctisvr SESSION 1: CalledPartyDisposition:CD_INVALID CampaignID:0xffffffff QueryRuleID:0xffffffff
09:41:58 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66501.67501.2" NewConnectionDeviceID:"66501.67501.2" DNIS:"67505" )
09:41:58 cg1A-ctisvr SESSION 1: MsgType:CALL_DELIVERED_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC Simplified
09:41:58 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323 LineHandle:N/A
09:41:58 cg1A-ctisvr SESSION 1: LineType:LINETYPE_UNKNOWN ServiceNumber:N/A ServiceID:N/A SkillGroupNumber:N/A
09:41:58 cg1A-ctisvr SESSION 1: SkillGroupID:N/A SkillGroupPriority:0 AlertingDeviceTypeemoticonEVID_DEVICE_IDENTIFIER
09:41:58 cg1A-ctisvr SESSION 1: CallingDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER
09:41:58 cg1A-ctisvr SESSION 1: CalledDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER LastRedirectDeviceTypeemoticonEVID_NONE
09:41:58 cg1A-ctisvr SESSION 1: LocalConnectionState:LCS_INITIATE EventCause:CEC_NEW_CALL NumNamedVariables:0
09:41:58 cg1A-ctisvr SESSION 1: NumNamedArrays:0 ConnectionDeviceID:"66501.67501.2" AlertingDeviceID:""
09:41:58 cg1A-ctisvr SESSION 1: CallingDeviceID:"66501.67501.2" CalledDeviceID:"66505.67505.2" )
09:41:58 cg1A-ctisvr SESSION 1: MsgType:CALL_DELIVERED_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC Simplified
09:41:58 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323 LineHandle:0
09:41:58 cg1A-ctisvr SESSION 1: LineType:LINETYPE_NON_ACD_IN ServiceNumber:N/A ServiceID:N/A SkillGroupNumber:N/A
09:41:58 cg1A-ctisvr SESSION 1: SkillGroupID:N/A SkillGroupPriority:0 AlertingDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER
09:41:58 cg1A-ctisvr SESSION 1: CallingDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER
09:41:58 cg1A-ctisvr SESSION 1: CalledDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER LastRedirectDeviceTypeemoticonEVID_NONE
09:41:58 cg1A-ctisvr SESSION 1: LocalConnectionState:LCS_ALERTING EventCause:CEC_NONE NumNamedVariables:0
09:41:58 cg1A-ctisvr SESSION 1: NumNamedArrays:0 ConnectionDeviceID:"66501.67501.2" AlertingDeviceID:"66505.67505.2"
09:41:58 cg1A-ctisvr SESSION 1: CallingDeviceID:"66501.67501.2" CalledDeviceID:"66505.67505.2" )
09:42:00 cg1A-ctisvr SESSION 1: MsgType:ANSWER_CALL_REQ (InvokeID:0x17a PeripheralID:5000 ConnectionCallID:17140323
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionDeviceID:"66501.67501.2"
09:42:00 cg1A-ctisvr SESSION 1: AgentInstrument:"66505" )
09:42:00 cg1A-ctisvr SESSION 1: MsgType:CALL_ESTABLISHED_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC Simplified
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323 LineHandle:0
09:42:00 cg1A-ctisvr SESSION 1: LineType:LINETYPE_NON_ACD_IN ServiceNumber:N/A ServiceID:N/A SkillGroupNumber:N/A
09:42:00 cg1A-ctisvr SESSION 1: SkillGroupID:N/A SkillGroupPriority:0 AnsweringDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER
09:42:00 cg1A-ctisvr SESSION 1: CallingDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER
09:42:00 cg1A-ctisvr SESSION 1: CalledDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER LastRedirectDeviceTypeemoticonEVID_NONE
09:42:00 cg1A-ctisvr SESSION 1: LocalConnectionState:LCS_CONNECT EventCause:CEC_NONE ConnectionDeviceID:"66505.67505.2"
09:42:00 cg1A-ctisvr SESSION 1: AnsweringDeviceID:"66505.67505.2" CallingDeviceID:"66501.67501.2"
09:42:00 cg1A-ctisvr SESSION 1: CalledDeviceID:"66505.67505.2" )
09:42:00 cg1A-ctisvr SESSION 1: MsgType:RTP_STARTED_EVENT (MonitorID:0 PeripheralID:5000 ClientPort:0x43da RTPDirection:0
09:42:00 cg1A-ctisvr SESSION 1: RTPType:0 BitRate:1 EchoCancellation:1 PacketSize:20 payloadType:4
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66501.67501.2" ClientAddress:"10.86.142.64" AgentID:"102"
09:42:00 cg1A-ctisvr SESSION 1: AgentExtension:"66501" AgentInstrument:"66501" )
09:42:00 cg1A-ctisvr SESSION 1: MsgType:RTP_STARTED_EVENT (MonitorID:0 PeripheralID:5000 ClientPort:0x43da RTPDirection:1
09:42:00 cg1A-ctisvr SESSION 1: RTPType:0 BitRate:1 EchoCancellation:1 PacketSize:20 payloadType:4
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66505.67505.2" ClientAddress:"10.86.142.64" AgentID:"104"
09:42:00 cg1A-ctisvr SESSION 1: AgentExtension:"66505" AgentInstrument:"66505" )
09:42:00 cg1A-ctisvr SESSION 1: MsgType:RTP_STARTED_EVENT (MonitorID:0 PeripheralID:5000 ClientPort:0x724c RTPDirection:0
09:42:00 cg1A-ctisvr SESSION 1: RTPType:0 BitRate:1 EchoCancellation:1 PacketSize:20 payloadType:4
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66505.67505.2" ClientAddress:"10.86.142.199" AgentID:"104"
09:42:00 cg1A-ctisvr SESSION 1: AgentExtension:"66505" AgentInstrument:"66505" )
09:42:00 cg1A-ctisvr SESSION 1: MsgType:RTP_STARTED_EVENT (MonitorID:0 PeripheralID:5000 ClientPort:0x724c RTPDirection:1
09:42:00 cg1A-ctisvr SESSION 1: RTPType:0 BitRate:1 EchoCancellation:1 PacketSize:20 payloadType:4
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:00 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66501.67501.2" ClientAddress:"10.86.142.199" AgentID:"102"
09:42:00 cg1A-ctisvr SESSION 1: AgentExtension:"66501" AgentInstrument:"66501" )
09:42:01 cg1A-ctisvr SESSION 1: MsgType:CLEAR_CONNECTION_REQ (InvokeID:0x17b PeripheralID:5000 ConnectionCallID:17140323
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionDeviceID:"66505.67505.2"
09:42:01 cg1A-ctisvr SESSION 1: AgentInstrument:"66505" )
09:42:01 cg1A-ctisvr SESSION 1: MsgType:RTP_STOPPED_EVENT (MonitorID:0 PeripheralID:5000 ClientPort:0x724c RTPDirection:0
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66505.67505.2" ClientAddress:"10.86.142.199" AgentID:"104"
09:42:01 cg1A-ctisvr SESSION 1: AgentExtension:"66505" AgentInstrument:"66505" )
09:42:01 cg1A-ctisvr SESSION 1: MsgType:RTP_STOPPED_EVENT (MonitorID:0 PeripheralID:5000 ClientPort:0x43da RTPDirection:1
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66505.67505.2" ClientAddress:"10.86.142.64" AgentID:"104"
09:42:01 cg1A-ctisvr SESSION 1: AgentExtension:"66505" AgentInstrument:"66505" )
09:42:01 cg1A-ctisvr SESSION 1: MsgType:CALL_CONNECTION_CLEARED_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC
09:42:01 cg1A-ctisvr SESSION 1: Simplified ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:01 cg1A-ctisvr SESSION 1: ReleasingDeviceTypeemoticonEVID_NON_ACD_DEVICE_IDENTIFIER LocalConnectionState:LCS_NONE
09:42:01 cg1A-ctisvr SESSION 1: EventCause:CEC_NONE ConnectionDeviceID:"66505.67505.2" ReleasingDeviceID:"66505.67505.2" )
09:42:01 cg1A-ctisvr SESSION 1: MsgType:CALL_CONNECTION_CLEARED_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC
09:42:01 cg1A-ctisvr SESSION 1: Simplified ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:01 cg1A-ctisvr SESSION 1: ReleasingDeviceTypeemoticonEVID_DEVICE_IDENTIFIER LocalConnectionState:LCS_NULL
09:42:01 cg1A-ctisvr SESSION 1: EventCause:CEC_NONE ConnectionDeviceID:"66501.67501.2" ReleasingDeviceID:"66501" )
09:42:01 cg1A-ctisvr SESSION 1: MsgType:CALL_CLEARED_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC Simplified
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:01 cg1A-ctisvr SESSION 1: LocalConnectionState:LCS_NULL EventCause:CEC_NONE ConnectionDeviceID:"66501.67501.2" )
09:42:01 cg1A-ctisvr SESSION 1: MsgType:END_CALL_EVENT (MonitorID:0 PeripheralID:5000 PeripheralType:IPCC Simplified
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66501.67501.2" )
09:42:01 cg1A-ctisvr SESSION 1: MsgType:RTP_STOPPED_EVENT (MonitorID:0 PeripheralID:5000 ClientPort:0x43da RTPDirection:0
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66501.67501.2" ClientAddress:"10.86.142.64" AgentID:"102"
09:42:01 cg1A-ctisvr SESSION 1: AgentExtension:"66501" AgentInstrument:"66501" )
09:42:01 cg1A-ctisvr SESSION 1: MsgType:RTP_STOPPED_EVENT (MonitorID:0 PeripheralID:5000 ClientPort:0x724c RTPDirection:1
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceIDType:CONNECTION_ID_STATIC ConnectionCallID:17140323
09:42:01 cg1A-ctisvr SESSION 1: ConnectionDeviceID:"66501.67501.2" ClientAddress:"10.86.142.199" AgentID:"102"
09:42:01 cg1A-ctisvr SESSION 1: AgentExtension:"66501" AgentInstrument:"66501" )

 

Showing 1 result.

Forums

« Back to CTI Server Protocol Questions

RE: New Message from simon atkins in CTI Server Protocol (GED-188) - CTI Se

Combination View Flat View Tree View
Threads [ Previous | Next ]
Hi,

Regarding the ClientID and ClientPassword in the OPEN_REQ message, it is true that these fields are not used by the CTI Server to authenticate the application (yet) ?

So, can we put anything in these fields?

Frederic Paquet:
Hi,

Regarding the ClientID and ClientPassword in the OPEN_REQ message, it is true that these fields are not used by the CTI Server to authenticate the application (yet) ?

So, can we put anything in these fields?
I'd like to know about this too. And in what context will this "ClientId' be used? Thanks.

Yes you can put anything. Password is ignored.

David Lender:
Yes you can put anything. Password is ignored.


Username/password is not really required for OPEN_REQ? Then where is the security here? It seems that anyone on the network can write a client (or use CTITest) and control agents/phones?

Correct.

I'm sending an open-req message which is being received by the message is ignored with the error:

Invalid Enterprise CTI message received from session 14 (new client
at (10.x,y,z:51668)), type OPEN_REQ, error
E_CTI_INVALID_TAG_FOR_MSG_TYPE, field AgentPassword
.
I'm not aware of any field called AgentPassword in an open_req message
any ideas greatly appreciated
Simon

Post a snippet of your CTI Server log showing the OPEN_REQ received. It may be that you have the wrong tag set for one of the fields in the OPEN_REQ.

Many thanks for responding. Sure ok :
 1
 2Dim byteData As New List(Of Byte())
 3'FIXED
 4byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(3)))    'open_req
 5byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(createNewInvokeID())))
 6byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(13)))    'protocol
 7byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(30)))    'idle timeout
 8byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(1)))     'peripheral ID
 9byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(10)))    'services requested
10byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(&Hfffffff)))  'callmask
11byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(0)))   'agent mask
12byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(0)))   'config mask
13byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(0)))   'reserved 1
14byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(0)))   'reserved 2
15byteData.Add(BitConverter.GetBytes(Net.IPAddress.HostToNetworkOrder(0)))   'reserved 3
16
17'FLOATING
18byteData.Add(Encoding.ASCII.GetBytes("14test"))  'tag 1=Client_ID, 4 bytes, password=test
19byteData.Add(Encoding.ASCII.GetBytes("24test"))  'tag 2=Client Password, 4 bytes, password=test
20
21I'm only insterested in all call events hence agent and config mask is 0
22The Server Log Side looks like this:12:18:49:571 unknown-ctisvr Invalid Enterprise CTI message received from session 10 (new client at (10.x.y.z:54414)), type OPEN_REQ, error E_CTI_INVALID_TAG_FOR_MSG_TYPE, field AgentPassword.
23
2412:18:49:571 unknown-ctisvr Trace: #################################################
2512:18:49:571 unknown-ctisvr Trace: ###!!!Invalid Message INGORE and CONTINUE !!!###
2612:18:49:571 unknown-ctisvr Trace: #################################################
2712:18:49:571 unknown-ctisvr SESSION 10: 00 00 00 38 00 00 00 03 00 00 00 64 00 00 00 0d | ...8.......d....
2812:18:49:571 unknown-ctisvr SESSION 10: 00 00 00 1e 00 00 00 01 00 00 00 0a 0f ff ff ff | ................
2912:18:49:571 unknown-ctisvr SESSION 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
3012:18:49:571 unknown-ctisvr SESSION 10: 00 00 00 00 31 34 74 65 73 74 32 34 74 65 73 74 | ....14test24test

thanks
Simon

I've spent several more hours trying all sorts of things with this open_req message, but must admit I find CISCO CTI utterly baffling - and I've spent more years than I care to remember coding CTI across many platforms and have even created my own complete enterprise SIP Contact Centre.

It just doesn't make sense that it's giving me an error for a tag that doesn't even exist in this message set.
Does anyone have a working OPEN_REQ/OPEN_CONF connection?

thanks and rgds
Simon

I looked at your OPEN_REQ

2712:18:49:571 unknown-ctisvr SESSION 10: 00 00 00 38 00 00 00 03 00 00 00 64 00 00 00 0d | ...8.......d....
2812:18:49:571 unknown-ctisvr SESSION 10: 00 00 00 1e 00 00 00 01 00 00 00 0a 0f ff ff ff | ................
2912:18:49:571 unknown-ctisvr SESSION 10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
3012:18:49:571 unknown-ctisvr SESSION 10: 00 00 00 00 31 34 74 65 73 74 32 34 74 65 73 74 | ....14test24test


The first 8 bytes are length 56 and message type = 3
InvokeID x64
Version Number x0d = 13
Idle timeout = 1e = 30
PeripheralID = 01 = 1 (is this the right peripheral ID?)
Services Requested = 0a = 10
Call Message mask = 0f ff ff ff
Agent State mask = 00 00 00 00
Config Message mask 00 00 00 00
Reserved 00 00 00 00
Reserved 00 00 00 00
Reserved 00 00 00 00
Tag 31 = 49 = agent password tag
Length 34?



Looks to me like your floating tag and length fields are not correct. You are using char ‘1’ (31) instead of an int value of 1.

David, Many thanks - ascii/byte conversion problem. Looks like I'm on my way now.
cheers
Simon

Collateral


No files available