ContactVideoCallActivatedEventArgs Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Proporciona datos cuando se activa una aplicación para llamar por vídeo a un contacto.
Javascript Este tipo aparece como WebUIContactVideoCallActivatedEventArgs.
public ref class ContactVideoCallActivatedEventArgs sealed : IActivatedEventArgs, IContactVideoCallActivatedEventArgs
/// [Windows.Foundation.Metadata.ContractVersion(Windows.ApplicationModel.Activation.ContactActivatedEventsContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class ContactVideoCallActivatedEventArgs final : IActivatedEventArgs, IContactVideoCallActivatedEventArgs
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.ApplicationModel.Activation.ContactActivatedEventsContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class ContactVideoCallActivatedEventArgs : IActivatedEventArgs, IContactVideoCallActivatedEventArgs
Public NotInheritable Class ContactVideoCallActivatedEventArgs
Implements IActivatedEventArgs, IContactVideoCallActivatedEventArgs
- Herencia
- Atributos
- Implementaciones
Requisitos de Windows
Familia de dispositivos |
Windows Desktop Extension SDK (se introdujo en la versión 10.0.10240.0)
|
API contract |
Windows.ApplicationModel.Activation.ContactActivatedEventsContract (se introdujo en la versión v1.0)
|
Ejemplos
Este es un ejemplo del código que necesita para controlar las activaciones de videollamadas de contacto para los identificadores de Skype.
protected override void OnActivated(IActivatedEventArgs args)
{
if (args.Kind == ActivationKind.Contact)
{
var contactArgs = args as IContactActivatedEventArgs;
if (contactArgs.Verb == Windows.ApplicationModel.Contacts.ContactLaunchActionVerbs.VideoCall)
{
IContactVideoCallActivatedEventArgs videoCallArgs = contactArgs as IContactVideoCallActivatedEventArgs;
//get contact display info
var contactName = videoCallArgs.Contact.DisplayName;
var contactThumbnail = videoCallArgs.Contact.Thumbnail;
if (videoCallArgs.ServiceId == "skype.com")
{
var userId = videoCallArgs.ServiceUserId;
//add video calling logic for Skype Ids
}
}
}
}
void App::OnActivated(Windows::ApplicationModel::Activation::IActivatedEventArgs const& args)
{
if (args.Kind() == Windows::ApplicationModel::Activation::ActivationKind::Contact)
{
auto contactArgs{ args.as<Windows::ApplicationModel::Activation::IContactActivatedEventArgs>() };
if (contactArgs.Verb() == Windows::ApplicationModel::Contacts::ContactLaunchActionVerbs::VideoCall())
{
auto videoCallArgs{ contactArgs.as<Windows::ApplicationModel::Activation::ContactVideoCallActivatedEventArgs>() };
// Get contact display info.
auto contactName{ videoCallArgs.Contact().DisplayName() };
auto contactThumbnail{ videoCallArgs.Contact().Thumbnail() };
if (videoCallArgs.ServiceId() == L"skype.com")
{
auto userId = videoCallArgs.ServiceUserId();
//add messaging logic for Skype Ids
}
}
}
}
void App::OnActivated(IActivatedEventArgs^ args)
{
if (args->Kind == ActivationKind::Contact)
{
auto contactArgs = dynamic_cast<IContactActivatedEventArgs^>(args);
if (contactArgs->Verb == Windows::ApplicationModel::Contacts::ContactLaunchActionVerbs::VideoCall)
{
auto videoCallArgs = dynamic_cast<ContactVideoCallActivatedEventArgs^>(contactArgs);
//get contact display info
auto contactName = videoCallArgs->Contact->DisplayName;
auto contactThumbnail = videoCallArgs->Contact->Thumbnail;
if (videoCallArgs->ServiceId == "skype.com")
{
auto userId = videoCallArgs->ServiceUserId;
//add video calling logic for Skype Ids
}
}
}
}
Comentarios
Windows 8.1 permite a los usuarios llamar a sus contactos desde la tarjeta de contacto o la experiencia de Windows Search. Al implementar el contrato de activación de videollamadas de contacto, Windows puede iniciar la aplicación para realizar videollamadas para el usuario.
Para recibir activaciones de videollamadas, la aplicación debe registrarse para la categoría de extensión "windows.contact" en su manifiesto. En esta extensión, debe incluir un elemento "LaunchAction" con el atributo "Verb" igual a "videoCall". A continuación, puede especificar el elemento "ServiceId" para especificar el nombre de dominio del servicio en el que la aplicación puede realizar videollamadas, por ejemplo, "skype.com".
Si varias aplicaciones se han registrado para este contrato, el usuario puede elegir una de ellas como valor predeterminado para controlar las videollamadas.
Este es un ejemplo para el registro de manifiestos.
<m2:Extension Category="windows.contact" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest">
<m2:Contact>
<m2:ContactLaunchActions>
<m2:LaunchAction Verb="videoCall" DesiredView="useHalf">
<m2:ServiceId>skype.com</m2:ServiceId>
</m2:LaunchAction>
</m2:ContactLaunchActions>
</m2:Contact>
</m2:Extension>
Después de registrarse en el manifiesto, la aplicación se puede activar para el contrato de videollamadas de contacto. Cuando se activa la aplicación, puedes usar la información del evento para identificar la activación de videollamadas y extraer los parámetros que te ayudan a completar la llamada de vídeo para el usuario.
Propiedades
Contact |
Obtiene el contacto de la videollamada. |
Kind |
Obtiene el tipo de activación. |
PreviousExecutionState |
Obtiene el estado de ejecución de la aplicación antes de activarla. |
ServiceId |
Obtiene el identificador del servicio usado para la llamada de vídeo. |
ServiceUserId |
Obtiene el identificador de usuario del servicio usado para la llamada de vídeo. |
SplashScreen |
Obtiene el objeto de pantalla de presentación, que proporciona información sobre la transición de la pantalla de presentación a la aplicación activada. |
Verb |
Obtiene la acción que se va a realizar. |