Author Message
Anonymous

Hi,

I'm facing the following issue, I'm making a simple Call (cf. code below), and I use a ConnectionLister.
The problem is that I receive a ConnectedConnectionEvent in connectionconnected method, before the phone had picked up.
According Javadoc, this event should be fire when the two people are able to talk.
I must miss a point, but I don' understand why this event is sent. Do I use the good APIs or shoud I use another event?

Here is the code use
[code]
public class MyCallControl {
...
private void connect(String number) throws Exception {
Provider provider = jtapiPeer.getProvider(providerString.toString());
Address addressOfficier = provider.getAddress(callingFrom);
Terminal terminalOfficier = provider.getTerminal(callingFrom);

CallControlCall mainCall = (CallControlCall) provider.createCall();
MyCallListenerME myCallListener = new MyCallListenerME(this);

((LucentCall) mainCall).connect((LucentTerminal) terminalOfficier, (LucentAddress) addressOfficier, number, false, userInfo);
}
...
}


public class MyCallListenerME implements ConnectionListener {
...
@Override
public void connectionConnected(ConnectionEvent ce) {
try {
Address address = ce.getConnection().getAddress();
String addressName = address.getName();
...
}

} catch (Exception e) {
LOG.error("Exception in connection connected event", e);
}
}
...
}

Thanks,
Yann
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
According to the Javadocs:
The connectionConnected method is called to report that the state of the Connection object has changed to Connection.CONNECTED.

In your case, terminalOfficier is making a call and so his connection is in a state of CONNECTED.

I would expect that you would get a second connectionConnected event for the far-end's connection when it answers.

Martin
romaingrimault
Joined: Dec 2, 2013
Messages: 4
Offline
Thanks for you reply.
Sorry I haven't been precise enough.

I received the first ConnectedConnectionEvent when the caller pick up.
But I received the seconds ConnectedConnectionEvent before that the callee had picked up.
when should this event occurs ?

I was expecting that this event come after the callee pick up.
How I can catch the seconds event when the callee pick up ?
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
What you have written is:

1. A calls B using connect()
2. A picks up the handset.
3. Your monitor receives a connectionConnected event
4. Your monitor receives another connectionConnected event
5. B picks up the handset.
6. Your monitor does not receive any more connectionConnected events.

This does not make sense to me so I presume you meant to say:

1. A calls B using connect()
2. B picks up the handset.
3. Your monitor receives a connectionConnected event
4. Your monitor receives another connectionConnected event
5. A picks up the handset.
6. Your monitor does not receive any more connectionConnected events.

This does make sense to me and is the behaviour that I would expect.

When you make a call using the connect() method, the Caller is automatically added to the call - he does not have to pick up his handset to complete the call. Once the Callee picks up, the connection is completed and you will get a connectionConnected event for each party in the call. The Caller is on the call in Speakerphone mode.

When the Caller later picks up his handset, it has no effect on the call.

Martin
romaingrimault
Joined: Dec 2, 2013
Messages: 4
Offline
I agree with you, I expected :

1. A calls B using connect()
2. A is automatically added to the call
3. The monitor receives a connectionConnected event
4. B picks up the handset.
5. The monitor receives another connectionConnected event

6. The monitor does not receive any more connectionConnected events.


But i have :

1. A calls B using connect()
2. A is automatically added to the call
3. The monitor receives a connectionConnected event :
Log : phone number : 1111 connected
4. The monitor receives another connectionConnected event :
Log : phone number : T9282#2
5. B picks up the handset.

6. The monitor does not receive any more connectionConnected events.


I have automatic Avaya Recorder. The full scenario with all events is :

1. A calls B using connect()
2. A is automatically added to the call
3. The monitor receives a connectionConnected event :
Log : phone number : 1111 connected
4. The monitor receives another connectionConnected event :
Log : phone number : T9282#2 connected
5. B picks up the handset.
6. The monitor receives another connectionConnected event :
Log : phone number : 2222 connected

7. The monitor does not receive any more connectionConnected events.

Where 1111 is the A phone number, 2222 is the recorder number and I suppose T9282#2 is B phone number.


Do you have any idea ? Could be possible that come from the Avaya’s configuration ?
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
It looks like B auto-answers. Therefore it is added to the call immediately too.

If you need further help with this, you should open a Tech Support ticket. Please note, if you are a Registered member, there is a fee for this.

Martin
Go to:   
Mobile view