" /> EventAttachedDataChanged (Unsolicited event from Genesys T-Server)- What to do ? - Genesys CTI User Forum

Author Topic: EventAttachedDataChanged (Unsolicited event from Genesys T-Server)- What to do ?  (Read 4472 times)

Offline angshuman

  • Newbie
  • *
  • Posts: 6
  • Karma: 0
Advertisement
Hi,
I am a newbie to Genesys and I am working on Outbound Call Campaign. I am using the Genesys Simulator (v 6.5.100) and Outbound Contact Manager (v. 7.6.101.2) & using the .Net SDK v8 apis.

My scenario is like this -

1. There is a Calling List Database where all the contact info has been set up.
2. I load the Campaign and hit Start
3. I get an unsolicited event called "[b]EventRinging[/b]"
4. But, before I respond to [b][i]EventRinging[/i][/b] by "[b]AcceptCall[/b]", I get one more unsolicited event "[b]EventAttachedDataChanged [/b]" & I have no control over this event. Its like two async responses coming almost concurrently from Genesys.

Sequence should be something like this. It works fine then. I did a Thread.Sleep(1000); in the EventAttachedDataChanged handler to achieve the  state below (which is not a correct way, but to isolate the problem, its fine). [u]Kindly advice what should be done with the unsolicited EventAttachedDataChanged event. How should I handle that and what should I do with that. I do not even know whether it is of any use and why Genesys is firing that event at all[/u]

[b][This sequence works][/b]                                                          [color=red][b][Error Scenario][/b][/color]

EventRinging
<--------------------------                                                              EventRinging
                                                                                                <--------------------------                                                                                                     

AcceptCall                                                                                [color=purple][b]EventAttachedDataChanged [/b][/color](comes in after few milli secs of EventRinging)
--------------------------->                                                            <-------------------------------------

EventEstablished
<----------------------------

[color=purple][b]EventAttachedDataChanged[/b][/color]
<----------------------------------

Thanks in advance
Angshuman
« Last Edit: July 30, 2012, 01:36:43 PM by angshuman »

Offline Kubig

  • Hero Member
  • *****
  • Posts: 2755
  • Karma: 44
EventAttachedDataChanged event may comes before the call is accepted. IE. is driving by OCS,GVP or other components.

Offline angshuman

  • Newbie
  • *
  • Posts: 6
  • Karma: 0
But, how we handle the situation. When I get the EventAttachedDataChanged , I send a AcceptCall and it returns error saying "User Busy". But as I said, if EventAttachedDataChanged  is the last one, then there are no issues.

Offline René

  • Administrator
  • Hero Member
  • *****
  • Posts: 1832
  • Karma: 62
Hi angshuman,

EventAttachedDataChanged represents a notification that User Data related to call has changed. Recommended handling would be updating your application internal variable that holds User Data related to call. However, you can even omit this event if you are not interested in updated data as you should get up-to-date User Data with EventEstablished event once call is answered.

[quote] I send a AcceptCall and it returns error saying "User Busy". [/quote]
This looks strange to me and I don't think it's related to EventAttachedDataChanged event. Do you have T-Server log (debug level) showing this issue?

R.

Offline angshuman

  • Newbie
  • *
  • Posts: 6
  • Karma: 0
Hi ,
Thanks for the reply. Do you mean that I need to update the user data variable and send back with "AcceptCall" request (because as mentioned earlier, I am getting the EventRinging & EventAttachedDataChanged almost [u]simultaneously[/u] & by the time I try to RequestAnswerCall, the control goes to  EventDataAttachedChanged & then comes back to RequestAnswerCall and this results in a UserBusy event error. Its exactly like a typical Multithreaded scenario -- where multiple async requests comes and its difficult to analyze generically which one to process first. But since all my code is in Javascript, its difficult to handle this. [b]Javascript [/b]talks to a [b]Winforms ActiveX control[/b] which in turn talks to [b]Genesys T-Server[/b])?


[color=red][size=10pt]One more question is :- What should one typically search in AttachedDataChanged event ? What are the parameters which change and why and when is it important for the client to update such data (as per Platform SDK v8.0 chm help file documentation)?[/size][/color]

I will send the log shortly.
« Last Edit: July 30, 2012, 07:53:24 PM by angshuman »

Offline René

  • Administrator
  • Hero Member
  • *****
  • Posts: 1832
  • Karma: 62
Hi,

EventAttachedDataChanged informs clients of T-Server that User Data attached to a call have changed. As I wrote, the best practice would be to update internal data structure of your app so it holds current set of User Data. However, you can ignore this message if your app doesn't work with User Data.

EventAttachedDataChanged provides full set of User Data keys in UserData property.

About your error - I can't help you without seeing T-Server log.

R.