ContactVideoCallActivatedEventArgs
ContactVideoCallActivatedEventArgs
ContactVideoCallActivatedEventArgs
ContactVideoCallActivatedEventArgs
Class
Definition
Provides data when an app is activated to video call a contact.
JavaScript This type appears as WebUIContactVideoCallActivatedEventArgs.
public : sealed class ContactVideoCallActivatedEventArgs : IActivatedEventArgs, IContactActivatedEventArgs, IContactVideoCallActivatedEventArgspublic sealed class ContactVideoCallActivatedEventArgs : IActivatedEventArgs, IContactActivatedEventArgs, IContactVideoCallActivatedEventArgsPublic NotInheritable Class ContactVideoCallActivatedEventArgs Implements IActivatedEventArgs, IContactActivatedEventArgs, IContactVideoCallActivatedEventArgs// You can use this class in JavaScript.
- Attributes
| Device family |
Windows Desktop Extension SDK (introduced v10.0.10240.0)
|
| API contract |
Windows.ApplicationModel.Activation.ContactActivatedEventsContract (introduced v1)
|
Examples
Here is an example of the code you need to handle contact video call activations for Skype Ids:
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(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
}
}
}
}
Remarks
Windows 8.1 allows users to video call their contacts from the Contact Card or Windows Search experience. By implementing the contact video call activation contract, Windows can launch your app to make video calls for the user.
To receive video call activations, your app must register for the "windows.contact" extension category in its manifest. Under this extension, you must include a "LaunchAction" element with the "Verb" attribute equal to "videoCall." You can then specify the "ServiceId" element to specify the domain name of the service that your app can video call over, for example "skype.com."
If multiple apps have registered for this contract, the user can choose one of them as their default for handling video calls.
Here is an example for manifest registration:
<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>
After you register in your manifest, your app can be activated for the contact video call contract. When your app is activated, you can use the event information to identify the video call activation and extract the parameters that help you complete the video call for the user.
Properties
Contact Contact Contact Contact
Gets the contact for the video call.
public : Contact Contact { get; }public Contact Contact { get; }Public ReadOnly Property Contact As Contact// You can use this property in JavaScript.
Remarks
Use the Contact property to collect additional info about the contact that is being video called. The contact can have a name and thumbnail that can be used to represent it in your app’s UI. Or, the contact can have alternative user ids that can be used in case the primary user id is unavailable. The ConnectedServiceAccounts property contains a list of all services available for the contact. You can use the ContactConnectedServiceAccount.ServiceName and ContactConnectedServiceAccount.Id properties on each service to retrieve alternative services and user ids respectively.
Here are possible Contact properties that can be populated during a video call activation:
Kind Kind Kind Kind
Gets the activation type.
public : ActivationKind Kind { get; }public ActivationKind Kind { get; }Public ReadOnly Property Kind As ActivationKind// You can use this property in JavaScript.
The ActivationKind.Contact enumeration value.
PreviousExecutionState PreviousExecutionState PreviousExecutionState PreviousExecutionState
Gets the execution state of the app before it was activated.
public : ApplicationExecutionState PreviousExecutionState { get; }public ApplicationExecutionState PreviousExecutionState { get; }Public ReadOnly Property PreviousExecutionState As ApplicationExecutionState// You can use this property in JavaScript.
ServiceId ServiceId ServiceId ServiceId
Gets the identifier of the service used for the video call.
public : PlatForm::String ServiceId { get; }public string ServiceId { get; }Public ReadOnly Property ServiceId As string// You can use this property in JavaScript.
- Value
- PlatForm::String string string string
The identifier of the service used for the video call.
Remarks
Your app will only receive video call activations for ServiceIds that match the "ServiceId" elements that your app has registered in its manifest.
ServiceUserId ServiceUserId ServiceUserId ServiceUserId
Gets the user identifier of the service used for the video call.
public : PlatForm::String ServiceUserId { get; }public string ServiceUserId { get; }Public ReadOnly Property ServiceUserId As string// You can use this property in JavaScript.
- Value
- PlatForm::String string string string
The user identifier of the service used for the video call.
Remarks
The ServiceUserId property is set to the contact’s user id for the service that is being video called over.
SplashScreen SplashScreen SplashScreen SplashScreen
Gets the splash screen object, which provides information about the transition from the splash screen to the activated app.
public : SplashScreen SplashScreen { get; }public SplashScreen SplashScreen { get; }Public ReadOnly Property SplashScreen As SplashScreen// You can use this property in JavaScript.
The object that provides splash screen information.
Verb Verb Verb Verb
Gets the action to be performed.
public : PlatForm::String Verb { get; }public string Verb { get; }Public ReadOnly Property Verb As string// You can use this property in JavaScript.
- Value
- PlatForm::String string string string
The action to be performed.
Remarks
Use the Verb property to determine the action to perform when your app is activated with ActivationKind.Contact. For video call activations, the Verb property is set to the value of Windows.ApplicationModel.Contacts.ContactLaunchActionVerbs.VideoCall.