Author Message
Narsimha
Joined: Jan 31, 2017
Messages: 15
Offline
Hi,

I was trying to capture agent login/logout events on the Avaya-extension using DMCC-java api.

While researching, I've noticed that ch.ecma.csta.binding.ConnectionClearedEvent is being triggered when I login/logout using avaya-id.
I have verified the same behavior on the .NET dashboard.

If I understand correctly ConnectionCleared event is triggered
1) Whenever either parties involved in the call drops the call
2) When someones logs-in/logs-out of an Avaya-extension

If this is the case we are wondering why this method is named as ConnectionClearedEvent?
Can someone shed light on this.
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
How are you logging in the agent? If you use a feature access code or a feature button, the phone will be off-hook while you are logging in and then go on-hook at the end of the process. This will generate a ConnectionCleared event.

BTW. To capture agent login/logout events, you will need to monitor a hunt group, not a station. This monitor will not receive any call control events, such as Connection Cleared. This makes me think that you are not setting up your monitor correctly.

For more information on getting Agent Login/Logout events, you can find several threads in this forum.

Martin
Narsimha
Joined: Jan 31, 2017
Messages: 15
Offline
Thanks for the quick response Martin.

We are using feature button to login into extensions. All our call center agents login in the same way.

That being said, I am just wondering handling log-in/logout events using connectionCleared event and then calling physical-device services is handling our use-case.
Do you see any drawback in this mechanism? I am just wondering if this is working fine, why do we need to monitor huntsgroup which will add extra monitors to the program?
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
The approved method of getting Agent Login/Logout events is to monitor the Hunt Group for Agent events. This should be described in the JTAPI programmers guide. I also suggest you get a copy of the TSAPI programmers reference, "TSAPI for Avaya Communication Manager Programmer's Reference" which is usually more comprehensive.

I do not understand how you would be able to infer that an agent has logged in/out using ConnectionCleared events.

Martin
Narsimha
Joined: Jan 31, 2017
Messages: 15
Offline
Thanks for the prompt reply.

I forgot the fact that an agent can login into any extension. you are correct, I cannot handle the login/logout using connectionCleared event.

I am confused about hunt's group monitoring and what is JTAPI. I am new to DMCC.

Can you help me with how to monitor hunt's group in DMCC java API.
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
Monitoring a hunt group is exactly the same as monitoring a station. You should find examples in the sample applications and by searching this forum.

Martin
SujathaS
Joined: Jul 5, 2017
Messages: 12
Offline
Hi,

Even i have the requirement to logout from the extensions..Kindly share sample code if anyone have done.

Regards,
Sujatha
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
>to logout from the extensions

Do you mean you want to:
1. Log an Agent out of a phone,
2. Unregister a Deskphone/Softphone or
3. Unregister a DMCC terminal?
Ahmadqadri
Joined: Oct 8, 2018
Messages: 54
Offline
2. Unregister a Deskphone/Softphone or
3. Unregister a DMCC terminal?

Whats the difference beween these two?

I want to stop receiving events from a particular extension when user logout.
I tried unregistring a terminal as
public void Logout(string deviceId)
{
var device = serviceProvider.GetDevice(deviceId);
device.getPhone.UnregisterTerminal(null);
}

No response received.
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online

By option 2, I mean is are you trying to use DMCC to logout a user from a physical deskphone or a softphone (e.g. One-X Communicator). This is not directly possible.

By option 3, I mean is the application calling UnregisterTerminal() for a terminal for which it previously called RegisterTerminal()?

Have you setup a UnregisterTerminalResponseHandler? Was the terminal successfully unregistered?

In order to stop receiving events for a monitor, you should stop each monitor before unregistering the terminal.

Martin
Ahmadqadri
Joined: Oct 8, 2018
Messages: 54
Offline
Yes I have setup all the handlers and yes RegisterTerminal() is sucessfull.
"In order to stop receiving events for a monitor, you should stop each monitor before unregistering the terminal. "
When using Dashboard application one does not have to stop monitors before unregistring. Thats what I have observed.
Ill now try stopMonitors before unregistring the terminal.
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
Can you paste in the code you use to setup the UnregisterTerminalResponseHandler?

I did think that the 1st party monitors would be destroyed when the terminal is unregistered. However, when I checked this on my dashboard, the monitors stayed in place. If I register the terminal again, I get events from them. Call Control monitors will definitely stay in place unless they are stopped. In any case, best practice is to always stop monitors when they are no longer wanted.

Martin
Ahmadqadri
Joined: Oct 8, 2018
Messages: 54
Offline

deviceBeingMonitored.getPhone.OnTerminalUnregisteredEvent += new TerminalUnregisteredEventHandler(Terminal_OnTerminalUnregisteredEvent);


This is the event handler I have registered for catching the response of
public void Logout(string deviceId)
{
var device = serviceProvider.GetDevice(deviceId);
device.getPhone.UnregisterTerminal(null);
}

Is this correct ?
This event is triggered when I manually logout from the one x but not when I try through dmcc.
Ahmadqadri
Joined: Oct 8, 2018
Messages: 54
Offline
Any Updates MartinFlynn ?
MartinFlynn
Joined: Nov 30, 2009
Messages: 1922
Online
I cannot reproduce your problem. I can only suggest that you:

1. Make sure you are not using a very old version of the SDK.

2. Make sure that deviceBeingMonitored and the deviceId going into Logout() represent the same phone.

Martin
Go to:   
Mobile view