WebUIContactMessageActivatedEventArgs Clase

Definición

Proporciona datos cuando se activa una aplicación para enviar un mensaje a un contacto.

public ref class WebUIContactMessageActivatedEventArgs sealed : IActivatedEventArgs, IContactMessageActivatedEventArgs, IActivatedEventArgsDeferral
/// [Windows.Foundation.Metadata.ContractVersion(Windows.ApplicationModel.Activation.ContactActivatedEventsContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
class WebUIContactMessageActivatedEventArgs final : IActivatedEventArgs, IContactMessageActivatedEventArgs, IActivatedEventArgsDeferral
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.ApplicationModel.Activation.ContactActivatedEventsContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
public sealed class WebUIContactMessageActivatedEventArgs : IActivatedEventArgs, IContactMessageActivatedEventArgs, IActivatedEventArgsDeferral
Public NotInheritable Class WebUIContactMessageActivatedEventArgs
Implements IActivatedEventArgs, IActivatedEventArgsDeferral, IContactMessageActivatedEventArgs
Herencia
Object Platform::Object IInspectable WebUIContactMessageActivatedEventArgs
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

JavaScript

function activated(eventObject) {
    if (eventObject.detail.kind === Windows.ApplicationModel.Activation.ActivationKind.contact) {
        if (eventObject.detail.verb === Windows.ApplicationModel.Contacts.ContactLaunchActionVerbs.message) {

     //get contact display info
            var contactName = eventObject.detail.contact.displayName;
            var contactThumbnail = eventObject.detail.contact.thumbnail;

            if (eventObject.detail.serviceId === "telephone") {
                var phoneNumber = eventObject.detail.serviceUserId;
  //add messaging logic for PSTN numbers
            }
     else if (eventObject.detail.serviceId === "skype.com") {
                var userId = eventObject.detail.serviceUserId;
  //add messaging logic for Skype Ids
            }
        }
    }
}

Comentarios

Se obtiene acceso a este objeto cuando se implementa un controlador de eventos para los eventos WinJS.Application.Onactivated o Windows.UI.WebUI.WebUIApplication.activated cuando Se contactaActivationKind.

Nota

Esta clase no es ágil, lo que significa que debe tener en cuenta su modelo de subprocesos y el comportamiento de serialización. Para obtener más información, consulta Subprocesos y serialización (C++/CX).

Windows 8.1 permite a los usuarios enviar mensajes a sus contactos desde la tarjeta de contacto o la experiencia de Windows Search. Al implementar el contrato de activación de mensajes de contacto, Windows puede iniciar la aplicación para enviar mensajes al usuario.

Para recibir activaciones de mensajes, 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 "message". A continuación, puede especificar el elemento "ServiceId" para especificar el tipo de mensajería que admite. Por ejemplo, si la aplicación controla los mensajes de texto estándar, puede especificar un "ServiceId" de "teléfono". Si la aplicación controla la mensajería a través de un servicio basado en web, como Skype, puede especificar el nombre de dominio de ese servicio, 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 los mensajes.

Este es un ejemplo de registro de manifiesto:

<m2:Extension Category="windows.contact" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest">
  <m2:Contact>
    <m2:ContactLaunchActions>
      <m2:LaunchAction Verb="message" DesiredView="useLess">
        <m2:ServiceId>telephone</m2:ServiceId>
      </m2:LaunchAction>
      <m2:LaunchAction Verb="message" DesiredView="useLess">
        <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 mensaje de contacto. Cuando se activa la aplicación, puedes usar la información del evento para identificar la activación del mensaje y extraer los parámetros que te ayudarán a completar el escenario de mensajería del usuario.

Este es un ejemplo del código que necesita para controlar las activaciones de mensajes de contacto para números RTC e identificadores de Skype:

Propiedades

ActivatedOperation

Obtiene la operación activada de la aplicación.

Contact

Obtiene el contacto del mensaje.

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 utilizado para el mensaje.

ServiceUserId

Obtiene el identificador de usuario del servicio utilizado para el mensaje.

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.

Se aplica a

Consulte también