Genesys CTI User Forum
Genesys CTI User Forum => Genesys-related Development => Topic started by: jvallejos on November 22, 2016, 12:48:37 PM
-
Hi
???
How i can get ConnID from a WDE Extension?
-
If you cast your interaction to an InteractionVoice you can get the ConnId
[code] if (interaction is IInteractionVoice)
{
IInteractionVoice iiv = interaction as IInteractionVoice;
string connId = interaction.TConnectionId;[/code]
-
Thanks PeteHoyle ,
but dont work form mi
Error 4 'Genesyslab.Desktop.Modules.Core.Model.Interactions.IInteraction' no contiene una definición de 'TConnectionId'(NotFound) ni se encontró ningún método de extensión 'TConnectionId' que acepte un primer argumento de tipo 'Genesyslab.Desktop.Modules.Core.Model.Interactions.IInteraction' (¿falta una directiva de uso o una referencia de ensamblado?)
-
Well, obvious message, you need to add a reference to that DLL module...
-
i have the reference for Genesyslab.Desktop.Modules.Core.Model.Interactions.IInteraction but TConnectionId is the problem
Later i fix do this
public void Initialize()
{
//aca se crea el listener para poder detectar las interaccions al momento de ejecurse
interactionManager.InteractionEvent += new EventHandler<EventArgs<IInteraction>>(interactionManager_InteractionEvent);
}
void interactionManager_InteractionEvent(object sender, EventArgs<IInteraction> e)
{
IInteraction interaction = e.Value;
switch (interaction.EntrepriseLastInteractionEvent.Id)
{
case EventEstablished.MessageId:
if (interaction is IInteractionVoice)
{
IInteractionVoice iiv = e as IInteractionVoice;
//i try next to sentences
MessageBox.Show("El ConnId es:" +iiv.TConnectionId);
// MessageBox.Show("El ConnId es:" +iiv.TConnectionId.ToString());
}
break;
}
}
But i found this Exception
Application.DispatcherUnhandledException
System.Reflection.TargetInvocationException: Se produjo una excepción en el destino de la invocación. ---> System.NullReferenceException: Referencia a objeto no establecida como instancia de un objeto.
en Genesyslab.Desktop.Modules.Custom.CustomModule.interactionManager_InteractionEvent(Object sender, EventArgs`1 e)
en System.EventHandler`1.Invoke(Object sender, TEventArgs e)
-
You would need a reference to 'Genesyslab.Desktop.Modules.Voice'
And then:
using Genesyslab.Desktop.Modules.Voice.Model.Interactions;
-
During a voice call, the event interactionManager_InteractionEvent will be executed several times. Maybe sometimes the value is null, but on next event it´s not null.
You can try to do that:
void interactionManager_InteractionEvent(object sender, EventArgs<IInteraction> e)
{
IInteraction interaction = e.Value;
IInteractionVoice iv = interaction as IInteractionVoice;
if(iv.TconnectionID!=null)
//now you can work
}
I´m assuming, that you are working with Visual Studio, and not with another ide that not trigger some error before compilation.
Regards.
EDIT: what line are launching the error?
-
Thanks Daniel san
With this line if(iv.TconnectionID!=null) work for me