Author Message
FelixAyala
Joined: Dec 2, 2013
Messages: 5
Offline
I am implementing ServiceObserving to a security client with Communication Manager 6 and AES 5.2

I have implemented the next cases:

Intrusion: A supervisor can hear a conversation betwenn an agent and a client, but they cant listening to him.

Conference: A supervisor can participate in a conversation between and agent and a client. All three can hear to others.

I implemented both with the class LucentV5Call.addParty(Address, boolean).

The last one function that i need is one called Coaching where an agent is calling with a client, and a supervisor can participate but only the agent can hear to him. This with the intention of get improve the attention to the client.

I tried to implement this getting a intrusion first, then try to do a LucentV5TerminalConnection.listenUnhold(LucentV5TerminalConnection);

but I got the next error: CSTA Error 41.

I would like to know whats wrong with the configuration of the CM or with the AES or with my code.

Thanks in advanced

Felix Ayala
sagardhemre
Joined: Oct 21, 2009
Messages: 0
Offline
CSTA error 41 informs that "This service(Selective Conference Party) has not been administratively enabled on the switch."

Please refer the following document: -
http://support.avaya.com/css/P8/documents/100089836
and refer to the service "Selective Conference Party" to understand the administrative configuration to be done on Avaya Communication Manager.
FelixAyala
Joined: Dec 2, 2013
Messages: 5
Offline
Ok, Saga, Let me check that document and I reply it if I could solved it.

Thanks
FelixAyala
Joined: Dec 2, 2013
Messages: 5
Offline
Sagar, do me a favor, please.

Cold uou post the name of the document or the documentID to download it?

thank you
FelixAyala
Joined: Dec 2, 2013
Messages: 5
Offline
I found thx.

It's Avaya Aura CM Feature Description and Implementation.
Document ID: 555-245-205

I will review it.
FelixAyala
Joined: Dec 2, 2013
Messages: 5
Offline
I've read the part about Conference and Service Observing.

But, my question now would be... Anybody has implemented this kind of mixture between Intrusion and Conference? As I mention in my first post, I need that the user and the agent can be in a conversation but the supervisor can hear the call and he could give some tips to the agent about the way he is giving the service to the customer, and the customer would not be hearing to him. All at the same time. It would be a kind of training to the agent.

Thanks again
sagardhemre
Joined: Oct 21, 2009
Messages: 0
Offline
Yes. The mixture of Intrusion and Conference has been implemented.

You will require TSAPI Advanced License to use this feature.

After you conference the supervisor in the call, use the LucentV5TerminalConnection.listenHold(LucentConnection partyToHold) API. This API should be invoked on the supervisor's TerminalConnection where the partyToHold will represent the customer's Connection.
FelixAyala
Joined: Dec 2, 2013
Messages: 5
Offline
Do you know if listenHold, mutes completely the customer connection? Because if It does, then It doesn´t work for me.

Is it a way to test before buying the license?
sagardhemre
Joined: Oct 21, 2009
Messages: 0
Offline
To achieve the scenario that you mentioned, you need to use the LucentV5Connection.listenHold(LucentTerminalConnection partyToHold).
Invoke the listenHold function on the customer's Connection object where the partyToHold will be the supervisor's TerminalConnection object.

This will NOT completely mute the customer. Only the customer will not be able to listen to whatever the supervisor speaks.

Without the TSAPI Advanced User License, there is no way to test this feature.
FelixAyala
Joined: Dec 2, 2013
Messages: 5
Offline
OK Sagar. Let me ask for the license and I let you know the result.

Thank you
SudeeraJayasekara
Joined: Apr 8, 2011
Messages: 0
Offline
Sorry to Reply to an old thread. I wish to do the same, and came up with the following code.

Here callManager object is an instance of the com.avaya.aes.agenttest.callcontrol.CallManager
which is from the sample app https://devconnect.avaya.com/public/dyn/d_dyn.jsp?fn=672

My code is as follows,

LucentTerminal t;
try {
t = (LucentTerminal) callManager.getJtapi().getTerminal(calledDeviceID);
System.out.println("LucentV5TerminalConnection count " + t.getTerminalConnections().length);
LucentV5TerminalConnection tx= (LucentV5TerminalConnection)t.getTerminalConnections()[0];
tx.listenHold(tx);      
} catch (Exception e) {
e.printStackTrace();
}

I'm ending up with the following exception,

com.avaya.jtapi.tsapi.TsapiPlatformException: listenHold failure
at com.avaya.jtapi.tsapi.impl.core.TSConnection.listenHold(TSConnection.java:732)
at com.avaya.jtapi.tsapi.impl.TsapiTerminalConnection.listenHold(TsapiTerminalConnection.java:238)


Any help is greatly appreciated to troubleshoot.
ShantanuJoshi
Joined: Dec 12, 2013
Messages: 21
Offline
You are trying to listen-hold a connection from itself -
tx.listenHold(tx);

You need to either provide thee terminal connection of a different party, or pass null to place the party on listen-hold with respect to all other parties on the call.
JongMoon
Joined: Apr 4, 2012
Messages: 3
Offline
I am implementing the selective listening fuction with CM 6.1 and AES 6.1 and JTAPI 6.0.1.94.

Agent is talking to customer and supervisor is observing agent.

In this situation, customer should not listen to supervisor's voice but agent should listen to supervisor's voice.

My code is as follows.

=====================================
String agent = "5001";
String customer = "243538420";
String supervisor = "5002";

Terminal supervisorT = provider.getTerminal(supervisor);
Address supervisorA = provider.getAddress(supervisor);

Call call = supervisorA.getConnections()[0].getCall();
Connection[] connections = call.getConnections();

if(connections.length == 3){
for(Connection con : connections){
String customer = con.getAddress().getName();
if(!customer.equals(supervisor) && !customer.equals(agent)){
LucentV5Connection customerC = (LucentV5Connection) con;
LucentV5TerminalConnection supervisorTC = (LucentV5TerminalConnection)supervisorT.getTerminalConnections()[0];
customerC.listenHold(supervisorTC)
}
}
}
=====================================

I got the same exception.

com.avaya.jtapi.tsapi.TsapiPlatformException: listenHold failure
   at com.avaya.jtapi.tsapi.impl.core.TSConnection.listenHold(TSConnection.java:732)
   at com.avaya.jtapi.tsapi.impl.TsapiConnection.listenHold(TsapiConnection.java:331)

I would like to know whats wrong with my code.

Thanks in advance.
ShantanuJoshi
Joined: Dec 12, 2013
Messages: 21
Offline
There is no obvious issue in the code you have pasted here.
Try enabling JTAPI trace logging with debugLevel=6 (see the FAQ entry - How can the JTAPI libraries be configured to log the trace output from a JTAPI client application to a file (tsapi.pro, JTAPI, CTIConnector)?https://devconnect.avaya.com/secure/faq/d_faq.jsp?f=1&s=500#q1411).

The log should show you if the request is sent to AES and what response is received, or if the error is on application side only.
Go to:   
Mobile view