I took a look at the SetVariable sample but it generates a transfer from the gadget itself.
I just tried this out on my system. I notice that when I Transfer a call to another Agent (either Consult Transfer or Single-Step Transfer), the callType of the Dialog changes to "TRANSFER" just before it is DELETE'd. So, you can use this. Experiment with this, it should be what you need.
Calls in Finesse are represented by "Dialog" objects. When you do actions to a Dialog, you get Update events that represent the changes to the data representing the call. If you TRANSFER a Dialog, you will ultimately get a DELETE (as the Dialog leaves the Agent's Desktop). What specifically are you looking at doing with the "Transfer Events" you are asking about?
I need to know that the dialog has been closed for a transfer. When I get a delete I know that a call has been closed but I cannot say It has been transferred or just hung.
Unfortunately there is nothing really in that Dialog that you can tell directly. Even if we found a way to enhance the Dialog events with this information, I am not sure we'd be able to implement it 100% accurately as Agents can also use their real phone to do this operation as well. I am not sure what your end requirement is, nor what scenarios your Agents do Transfers, but you may be able to infer Transfer based on the other events around the DELETE (like the DELETE of the Consult call, etc...). This is still not a foolproof solution though.
my end requirement is marking on an external system the call as closed or transferred (i.e. a CRM). About your suggestion on DELETE, how can I differenciate a Consult call drop from a Conference initialization call drop?
The problem here is that differently from CTIOS where I could make transfer or conference invoking particular methods and receiving appropriate events (received also if real phone buttons were used), in finesse I just get events from the dialogs without possibly knowing which was the button (and then the reason why) originating the new dialog and mark it properly.
Any hint will be appreciated.
It worked. A bit strange to me that a calltype changes after call drop...but It works!
This comes from the underlying system (CCE/CCX). My guess is that it changes because it is important for the receiving Agent to know the difference. Not completely sure, but the view of the Dialog (Call) is universal to the System, so as it is being transferred, it changes. Glad it works though.
Retrieving data ...