Why did EventAttachedDataChanged happen after EventReleased?

An agent A received a call, and then it transfered to another agent B.B agreed the transfer,then happened the EventAttachedDataChanged.
After B agreed the transfer,A would released the call. So was the fact. In the axTEventsLog i can see two EventReleased, the other DN of one is inbound call,another one is cousult call.But the question is that after EventReleased there was a EventOnHook and a EventAttachedDataChanged.would someone tell me why did this happen? Thank you very much.

Sorry magic balls are out of service…therefore we can’t look at your system logs from our desks

1 Like

Well, according to the system logs, in my project, RequestInitiateTransfer and RequestCompleteTransfer has been sent twice. I solve the problem about RequestInitiateTransfer, but i still don’t know why RequestCompleteTransfer has been sent twice.
When i debug my project, attacheddatachanged happened four times, the first time the calltype is CallTypeInBound, the second time is CallTypeConsult and meanwhile RequestCompleteTransfer has been sent the first time, the third time is as the first time, the four time is as the second time. So RequestCompleteTransfer do have been sent twice.
Who can tell me why attacheddatachanged happened four time and the last two times are as the previous two times?
The attacheddatachanged event is as follow
private void axTConnection1_TEventAttachedDataChanged(object sender, AxDesktopToolkitX._DConnectionEvents_TEventAttachedDataChangedEvent e)
{
String tempdata, tempflag;
if (e.eventInfo.ThisDN == ā€œ6900ā€)
{
if (e.eventInfo.CallType == DesktopToolkitX.TCallType.CallTypeConsult)
{
tempdata = this.getAttachedData(ā€œtranā€, e);
if (tempdata == ā€œagreeā€)
{
this.insertAttachedData(ā€œtrancallidā€, this.tempcallid);
this.doTrans(ā€œtransCompleteā€, ā€œā€);
}
else if (tempdata == ā€œdisagreeā€)
{
this.doReconnect();
MessageBox.Show(ā€œAttachedDataChanged tran disagreeā€);
}
this.tSBinittrans.ToolTipText = ā€œē”³čÆ·č½¬ęŽ„ā€;
}
else if (e.eventInfo.CallType == DesktopToolkitX.TCallType.CallTypeInbound)
{
tempdata = this.getAttachedData(ā€œtranā€, e);
if (tempdata == ā€œleavemeetā€)
{
this.doHangup();
this.tSBinittrans.ToolTipText = ā€œē”³čÆ·č½¬ęŽ„ā€;
}
}
}
//组长
else
{
if (e.eventInfo.CallType == DesktopToolkitX.TCallType.CallTypeConsult)
{
///č½¬ęŽ„
tempdata = this.getAttachedData(ā€œtrancallidā€, e);
if (tempdata == ā€œā€)
{

                }
                else if (tempdata == "userleave")
                {
                    MessageBox.Show("ē”Øęˆ·ęŒ‚ęœŗļ¼");
                }
                else
                {

                }
            }               
        }
    }
1 Like