Author Message
Hans.Bluh
Joined: Dec 25, 2013
Messages: 3
Offline
I am trying to pass UUI when making a call in the UserData to another EMC running application and it does not get passed.

Is there a way to do so?

Here is my code that does not work:

ThirdPartyCallController.MakeCallParameters par = new ThirdPartyCallController.MakeCallParameters();
par.CallingDevice = DeviceId;
par.CalledDirectoryNumber = DeviceToBeCalled;
par.PriorityCall = true;
par.UserData = new ThirdPartyCallController.UserData("324324242342232342342323");

serviceProvider.getThirdPartyCallController.MakeCall(par, null);

Thank you,

Hans
CraigJohnson5
Joined: Oct 24, 2013
Messages: 413
Offline
Have you checked the TSAPI logs on AE Services to verify that UUI is not being attached?
Hans.Bluh
Joined: Dec 25, 2013
Messages: 3
Offline
We checked the TSAPI "trace.out" logs and did not see the Userdata (UUI) in it.
Should the code I supplied work? Or is there another way to pass the UUI on a MakeCall in DMCC?

Thank you for the help,
Hans
Hans.Bluh
Joined: Dec 25, 2013
Messages: 3
Offline
Below is a snippet from the g3trace-CM-1.txt file from the DMCC call.
When we tested using EMC to EMC we see that "uudata[info]" would have data.
But when using DMCC it has "uudata[info]" = (null).

My code is either incorrect or some setting is missing in DMCC.

Thank you,
Hans


01/03/2014 12:31:08.229:TSAPI:LinkThread01: oli: hasInfo?(F)value(0)
01/03/2014 12:31:08.229:TSAPI:LinkThread01: ucid: 8 byte dump of 8 bytes of data:
01/03/2014 12:31:08.229:TSAPI:LinkThread01: ucid: hex '000104e2 52c701ec'
01/03/2014 12:31:08.229:TSAPI:LinkThread01: ucid: std format: '00001012501388773868'
01/03/2014 12:31:08.229:TSAPI:LinkThread01: uudata[len,protocol] 0,0x80000000
01/03/2014 12:31:08.229:TSAPI:LinkThread01: uudata[info] (null)
01/03/2014 12:31:08.229:TSAPI:LinkThread01: redir_num (null)

MartinFlynn
Joined: Nov 30, 2009
Messages: 1921
Offline
Your code works for me.

Check your G3 trace file and look for a block starting with "Received CSTA Msg (CSTAREQUEST)(3) (CSTA_MAKE_CALL)". Make sure that this message includes User info data.

What versions of AE Services and the SDK are you using?

Martin
Anonymous

Version 5.2,
Thanks for the help,

Hans
Anonymous

The AES in the lab is 5.2.1.103.0. We have tried different versions of the SDK from 5.2 to 6.3 all of which are producing the same results. In the G3 trace after the make call event we have numerous references to the UserInfo and they all look like this..

01/03/2014 12:31:08.231:TSAPI:LinkThread01: userInfotype(UUI_NONE)(-1)

We know that the AES/CM is allowing apps to set UUI via TSAPI directly in such apps as EMC/CCE. Yet when using this code, although we can control the station just fine using DMCC, the UserInfo is never set. So maybe there is a known issue with this version of AES where TSAPI events being called using the DMCC SDK don't work correctly. I was thinking of deploying a newer version of AES in the lab for testing purposes.

Thanks!
MartinFlynn
Joined: Nov 30, 2009
Messages: 1921
Offline
When you open the DMCC connection from your application to the AE Services, make sure the Protocol Version it at least ServiceProvider.DmccProtocolVersion.PROTOCOL_VERSION_5_2.

Using the DMCC Dashboard, I see that the UUI is not sent when the Protocol Version is PROTOCOL_VERSION_4_2 or older.

Martin
streetsl
Joined: Feb 27, 2015
Messages: 2
Offline
Hi, I have a similar problem when I fill the object:


int error=-1;
string lTemp="123";
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(lTemp);

ThirdPartyCallController.MakeCallParameters par = new ThirdPartyCallController.MakeCallParameters();
par.CallingDevice = DeviceId;
par.CalledDirectoryNumber = DeviceToBeCalled;
par.PriorityCall = true;
par.UserData = new ThirdPartyCallController.UserData(bytes, bytes.Length);

error = serviceProvider.getThirdPartyCallController.MakeCall(par, null);



in the event handler getThirdPartyCallController_OnDeliveredEvent I read the data

lIncomeCallId = e.getUserData.decodeDataToString();
or
lIncomeCallId = System.Text.Encoding.UTF8.GetString(mDate.getUserDataAsByteArray);


but size of byte array in read doesn't equal to size of array in write, it equals [array size in write]*2 and data is broken.
In this example I wrote "123" and got "313233".

Please can tell me what I'm doing wrong
MartinFlynn
Joined: Nov 30, 2009
Messages: 1921
Offline
When an application fills in UUI, there is no guarantee that it will use only printable characters. DMCC can only pass printable characters over the XML interface to/from the AE Services. Therefore, the AE Services and DMCC SDK encodes entered data into ASCII hex numbers. So, "1" (ascii 0x31) becomes "31" etc.

To decode the received data back to its original form, you can use e.getUserData.decodeDataToText();

Martin

streetsl
Joined: Feb 27, 2015
Messages: 2
Offline
Martin,
Thanks for the help, now all works fine!
rangari
Joined: Jun 18, 2015
Messages: 132
Offline
Hi Martin,

How can i pass UUI with call in Engagement Desiner flow. Is there anyway through which i can pass UUI with call in Engagement Desiner flow.

i am waiting for reply.

Thanks,
MartinFlynn
Joined: Nov 30, 2009
Messages: 1921
Offline
You are in the wrong forum for this question. I think you may be able to get help in the Avaya Aura Orchestration Designer forum.

Martin
CraigJohnson5
Joined: Oct 24, 2013
Messages: 413
Offline
There is an Engagement Designer forum under the Breeze Platform section. Please ask your question there.
rangari
Joined: Jun 18, 2015
Messages: 132
Offline
Thanks for your reply. I will ask my question at Engagement Designer forum.
Go to:   
Mobile view