Message |
[+]
DMCC APIs
» Get AgentId dhe corresponding DeviceId from GetPhysicalDeviceInformation, 07/03/2019 05:09:25
» Go to message
|
|
Okay, it was so simple like this.
Thank you very much Martin, as always very helpful.
|
|
[+]
DMCC APIs
» Get AgentId dhe corresponding DeviceId from GetPhysicalDeviceInformation, 07/03/2019 04:20:50
» Go to message
|
|
Yes Martin, that's exactly what i am doing.
I do receive the agent ID from server's response.
The point is that i am monitoring several VDNs. When a call is answered, i get the "OnDeliveredEvent" and on that event i can get the device ID. Using that device ID i send a request to the server to give me the agent ID for that device ID.
When server responds and i get the agent ID i also want to have the device ID, to which this agent ID belongs to..
And the GetPhysicalDeviceInformationResponseArgs doesn't return the device ID so this is where it gets complicated ..
|
|
[+]
DMCC APIs
» Get AgentId dhe corresponding DeviceId from GetPhysicalDeviceInformation, 06/03/2019 10:50:40
» Go to message
|
|
Hello,
I am using the GetPhysicalDeviceInformation(deviceId, null) request, to request the Agents Id(s) loggedin in an extension.
When server sends response, i want to also get the device id for the list of agents.
Is there any way i can take it from the this response?
I need to make a mapping between deviceId and agentId and in my scenario, this could be the only solution to make the mapping.
Thank you in advance.
|
|
[+]
Server Platform
» Communication with Avaya Server, background or foreground threads?, 20/12/2018 09:07:06
» Go to message
|
|
Hello everyone :)
I was wondering, by default when we start a connection with Avaya Server, we send requests and receive events, do they all happen in background or foreground threads? Or does it depend on how you write your application that connects to it?
I already know that when on managed code(code written in .NET), the main application thread is a foreground thread, unless specified as a background thread.
Thanks in advance :)
Ps. Happy holidays :)
|
|
[+]
DMCC APIs
» OnEstablishedEvent triggered too many times, 06/12/2018 07:43:47
» Go to message
|
|
Hello,
Can anybody help with what could be the reason/s that i receive OnEstablishedEvent from Avaya, for one call, multiple times?
How can i debug this?
Thank you!
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 09/11/2018 11:42:06
» Go to message
|
|
Hi John, i'm currently reading the docs from Java .net sdk. and there is a part where i am reading :
ServerSessionNotActiveEvent. This event is sent if a message was
received by the AE Services server but the session has timed out and been
placed in the inactive state. A session enters the inactive state if the
Application Session Duration expires before a
ResetApplicationSessionTImer message is received. Upon receiving
this event, an application must first call disconnect on the application’s
ServiceProvider instance, then take the same recovery actions as for
ServerConnectionDownEvent.
Does this mean :
1. Disconnect
2. Try to reconnect
when getting ServerSessionNotActiveEvent? Because the recovery actions from ServerConnectionDownEvent start with reconnecting..
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 06/11/2018 10:17:37
» Go to message
|
|
Hi John, thanks for explaining and yes i have read the docs a thousand times but it always seems to miss something, probably need any example in documentation.
I am using .NET for developing the service.
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 05/11/2018 04:24:34
» Go to message
|
|
Hi John, you are right, i am reacting for each of the 3 events : ServerConnectionDownEvents, ServerConnectionNotActiveEvents, and MissedAtLeastOneKeepAliveEvents , trying to reconnect for each of those events.
And when i receive the StartApplicationSessionNegResponse i stop the current session and i initiate a new ServiceProvider.StartApplicationSession request.
Now im thinking that i should handle each negative response from server in different way.
When getting MissedAtLeastOneKeepAlive i shouldn't react to it?
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 31/10/2018 05:23:51
» Go to message
|
|
MartinFlynn wrote:Hi Esmeralda,
Please take a look at the code in your callback/listener methods that receive events from AE Services. If these methods perform significant processing (e.g. make database accesses, send DMCC requests to AE Services, make file accesses etc.) then this is almost certainly the cause of your problems.
It is very important that applications exit the callback/listener methods as quickly as possible. Otherwise the SDK will not be able to process other incoming events and, eventually, AE Services outgoing buffers will overflow and it will be forced to bring down the connection.
Make sure that all listeners/callbacks take the incoming event and place it on an internal queue. You should perform the actual event processing using your own, internal, threads.
Martin
Hi Martin, thanks for your advices.
The only thing i am doing is file accessing for logging, maybe i should take care of logging when handling those events later on. Would you suggest making different processings in diferent threads? so as not to block the threads communicating with the server?
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 31/10/2018 03:56:24
» Go to message
|
|
1) no i don't unfortunately, i will try to use the remote lab session you specified , thank you very much
2) but i am creating a new session (new ServiceProvider instance), i am not trying to reconnect to the last one, that's why it doesn't make sense to me
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 30/10/2018 12:15:02
» Go to message
|
|
Now when i try to disconnect and then reconnect , i get the following error :
<StartApplicationSessionNegResponse xmlns="http://www.ecma-international.org/standards/ecma-354/appl_session"><errorCode><applError>Terminated session can not be reconnected. Reason: Client socket closed</applError></errorCode></StartApplicationSessionNegResponse>
Why do i get that, if im actually creating a new session and trying to connect to it?
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 30/10/2018 07:11:39
» Go to message
|
|
I enabled sdk logging, it logs all xml messages exchanged betweenmy application and server, but isn't it going to load my application too much when it goes in production? I can see a huge flow of data being written, considering we are monitoring 100 VDNs.
A session failure and recovery can be simulated in a lab environment by disconnecting the LAN connection at the AES (don't have to wait 2 days) to prove you code is sound. ---> You mean to disconnect the server from the LAN? I can't do it since it is being used in production for different products..
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 29/10/2018 11:04:22
» Go to message
|
|
you can use newer versions of the SDK with older releases of AE Services at least for a test to make sure there isnt an SDK issue.
=> i will try to do it
yes the sessionCleanupDelay is what I was referring to. How do you know you are initiating recovery in that 1 minute window? are you reacting to the SDK informing you that it didnt get responses to the KA messages? How do you know the recovery request made it to AE Services (you need the AES side logging).
=> I am actually reacting to OnMissedAtLeastOneKeepAliveEvent event and OnServerConnectionNotActiveEvent.
I know i am making the request in those 60 seconds before the session gets cleaned up because i saw from the logs that for 1 minute my application was sending Reconnect requests.
Is it ok to handle the OnMissedAtLeastOneKeepAliveEvent by trying to reconnect to the session? from documentation that's how i understood it should be done.
Would it be possible, that when connection is down, to disconnect and connect again (new session), without stopping my console application?
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 29/10/2018 10:17:46
» Go to message
|
|
1. I am using verison 6.3.3. Anything wrong with using this version?
2. I am not using any packet sniffer to see the requests being sent
3. I am not logging the keep alives being sent since it is something the sdk takes care off. is there any example how can i log those requests?
1. Unfortunately i have no access to server logs but i asked to have them so i believe i will have them soon so i can study them
2. No i have't done that
3. When you say window of time, you're talking about SessionCleanupDelay and SessionDuration? And yes i believe i am doing the request in that time intreval. i have set SessionCleanupDelay = 60 secs and SessionDuration = 180 secs
|
|
[+]
DMCC APIs
» Server connection problem. MissedAtLeastOneKeepAlive and ServerConnectionDown, 29/10/2018 03:39:44
» Go to message
|
|
Hello,
I have developed an application where i monitor incoming calls and events for 100 VDNs. I'm using DMCC version 6.3.3
I am having an issue where once in 48 hours the connection to server goes down.
from my application logs:
2018-10-27 09:32:00.322 +02:00 [ERR] AES Server connection error. Error: Number of Consecutive keep alives missed: 1. Error type: Missed At Least One Keep Alive Event
2018-10-27 09:32:00.323 +02:00 [INF] Trying to reconnect to the session with ID = 3C1452555FDE19F95B0AD6AE139D635F-9100
2018-10-27 09:32:00.351 +02:00 [ERR] AES Server connection error. Error: Unable to read from socket. Socket to server has been closed.. Error type: Server Connection Down Event
2018-10-27 09:32:00.352 +02:00 [INF] Trying to reconnect to the session with ID = 3C1452555FDE19F95B0AD6AE139D635F-9100
2018-10-27 09:32:00.353 +02:00 [ERR] AES Server connection error. Error: Unable to read from socket. Socket to server has been closed.. Error type: Server Connection Down Event
2018-10-27 09:32:00.355 +02:00 [INF] Trying to reconnect to the session with ID = 3C1452555FDE19F95B0AD6AE139D635F-9100
2018-10-27 09:32:00.415 +02:00 [INF] Number Returned From Reconnectiog = 767
2018-10-27 09:32:00.417 +02:00 [ERR] AES Server connection error. Error: Unable to read from socket. Socket to server has been closed.. Error type: Server Connection Down Event
2018-10-27 09:32:00.418 +02:00 [INF] Trying to reconnect to the session with ID = 3C1452555FDE19F95B0AD6AE139D635F-9100
2018-10-27 09:32:00.509 +02:00 [INF] Number Returned From Reconnectiog = 769
And this happens endlessly until the session gets cleaned up (after 60 secs).
I am trying to reconnect using the Reconnect method, passing to it the current session ID. My method looks something like this :
private void Dmcc_OnConnectionError(object sender, ConnectionErrorArgs e)
{
logger.Write($"AES Server connection error. Error: {e.Message}. Error type: {e.ErrorType}", LogEventLevel.Error);
dmcc.Reconnect(e.SessionId);
}
And how i am trying to reconnect to the current instance of service provider:
public void Reconnect(string sessionId)
{
logger.Write($"Trying to reconnect to the session with ID = {sessionId}", LogEventLevel.Information);
var numberReturnedFromReconnectiog = serviceProvider?.Reconnect(sessionId, null);
logger.Write($"Number Returned From Reconnectiog = {numberReturnedFromReconnectiog}", LogEventLevel.Information);
}
I want to understand 2 things:
1. Why do i get this connection error so often?
2. Why isn't the reconnect method working? Am i using it wrong?
Thank you in advance.
Esmeralda
|
|