CRM CCA integration with Avaya Server

Jun 22, 2011 at 8:29 PM

Hi Matt,

 I am quite new to CRM-CCA. In one of our current implementation, we would require to integrate CCA with Avaya server.

Customer says that they have AES(CTI Server). Customer asked us to provide the prerequisite to connect CCA with CTI Server which we are not sure. Can you please help us to get the required info?


Also client has given us two approaches to connect CTI Server,

Communication Manager -> CTI Server -> Agent Desktop

Communication Manager -> CTI Server -> TSAPI Client -> Agent Desktop

Please guide us which method of integration would be feasible from CCA?


Thanks in advance.


Jun 23, 2011 at 1:12 PM

There are several ways to do this..

The preferred way is using the CTI Integration layer inside UII to integrate with the Avaya TSAPI Lib, which then handles connectivity to the Avaya System.

Microsoft Consulting has some IP built up around working with Avaya TSAPI if you’re looking to get it done faster, however you can also do it yourself as we provide all the API bits to talk to UII’s CTI layer.

If you look here :

At the bottom you will find a link to a set of solution starters that include a CTI adapter solution template. This template lays out the bits you need to create your own Vendor specific CTI Adapter for UII.


Jun 23, 2011 at 5:09 PM

Thanks for your reply.

I would like to get some more info. On top of CTI Connection layer, do we need to write custom code to connect to an upstream CTI interaction source and poll that source for updates and events?
Because in the agent desktop code, i am not sure where to mention the "CTI Sever Name". Do i need to add "TSAPIWrapper" reference? So please guide me.



Jun 24, 2011 at 12:10 PM

Hi Matt,

I got the place to write code. it is ,

//Initialize Connection to CTI Service           


This is available under BaseCtiConnector.CtiConnector class.



Jun 28, 2011 at 5:33 AM

There are a number of things you need to do, you also need to implement the eventing model, the Call Manager, Agent State manager, and Desktop Manager.

The CTI framework in UII is made up for 3 distinct parts.

The CTI connector, of which the class you see there is a part of , the Desktop manager, and the call and agent state managers ( these are general one assembly ) .

I would heavy encourage you to download and install the solution starters I indicated in my previous post, that will give you a CTI Adapter Solution template that will lay out the structure you need for the CTI Connector.


Jun 28, 2011 at 8:13 PM

Yes Matt, done that...

thanks for your information...

when i try to simulate softphone incoming call i am getting the below error,

"A call to PInvoke function 'TapiWrapper!Microsoft.Uii.QuickStarts.Cti.TapiWrapper::GetDeviceSwitchInfoCti' has unbalanced the stack. This is likely because the managed PInvoke signature does not match the unmanaged target signature. Check that the calling convention and parameters of the PInvoke signature match the target unmanaged signature."

Any guess, what would be the problem?