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.
...Read More

 

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