ContactCallActivatedEventArgs ContactCallActivatedEventArgs ContactCallActivatedEventArgs ContactCallActivatedEventArgs Class

Definition

Provides data when an app is activated to call a contact.

JavaScript This type appears as WebUIContactCallActivatedEventArgs.

public : sealed class ContactCallActivatedEventArgs : IActivatedEventArgs, IContactActivatedEventArgs, IContactCallActivatedEventArgspublic sealed class ContactCallActivatedEventArgs : IActivatedEventArgs, IContactActivatedEventArgs, IContactCallActivatedEventArgsPublic NotInheritable Class ContactCallActivatedEventArgs Implements IActivatedEventArgs, IContactActivatedEventArgs, IContactCallActivatedEventArgs// You can use this class in JavaScript.
Attributes
Windows 10 requirements
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 call activations for PSTN numbers and 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.Call)
        { 
            IContactCallActivatedEventArgs callArgs = contactArgs as IContactCallActivatedEventArgs;

     //get contact display info
     var contactName = callArgs.Contact.DisplayName;
            var contactThumbnail = callArgs.Contact.Thumbnail;

            if (callArgs.ServiceId == "telephone")
            {
                var phoneNumber = callArgs.ServiceUserId;
                //add calling logic for PSTN numbers
            }
            else if (callArgs.ServiceId == "skype.com")
            {
                var userId = callArgs.ServiceUserId;
                //add 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::Call)
  {
   auto callArgs = dynamic_cast<ContactCallActivatedEventArgs^>(contactArgs);

       //get contact display info
auto contactName = callArgs->Contact->DisplayName;
   auto contactThumbnail = callArgs->Contact->Thumbnail;


   if (callArgs->ServiceId == "telephone")
   {
    auto phoneNumber = callArgs->ServiceUserId;
    //add calling logic for PSTN numbers
   }
   else if (callArgs->ServiceId == "skype.com")
   {
    auto userId = callArgs->ServiceUserId;
    //add calling logic for Skype Ids
   }
  }
 }
}

Remarks

Windows 8.1 allows users to call their contacts from the Contact Card or Windows Search experience. By implementing the contact call activation contract, Windows can launch your app to make calls for the user.

To receive 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 "call." You can then specify the "ServiceId" element to specify the type of calling you support. For example, if your app handles standard PSTN calls, you can specify a "ServiceId" of "telephone." If your app handles calling over a web based service, like Skype, you can specify the domain name of that service, for example "skype.com."

If multiple apps have registered for this contract, the user can choose one of them as their default for handling calls.

Note

To enable a user to set your app as their default calling app for PSTN numbers, your app must also support the “tel” URI scheme.

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="call" DesiredView="useLess">
        <m2:ServiceId>telephone</m2:ServiceId>
        <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 call contract. When your app is activated, you can use the event information to identify the call activation and extract the parameters that help you complete the call for the user.

For info about how to handle app activation through contact actions, see Quickstart: Handling contact actions and Quickstart: Handling contact actions .

Properties

Contact Contact Contact Contact

Gets the contact for the call.

public : Contact Contact { get; }public Contact Contact { get; }Public ReadOnly Property Contact As Contact// You can use this property in JavaScript.
Value
Contact Contact Contact Contact

The contact for the call.

Remarks

Use the Contact property to collect additional info about the contact that is being 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 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.

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 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 call.

Remarks

For PSTN calls, the ServiceId property is set to "telephone." For web-based services, the ServiceId property is set to the domain name of the service to be used for calling, for example “skype.com”. Your app will only receive call activations for ServiceIds that match the "ServiceId" elements that your app has registered in its manifest.

For info about how to handle app activation through contact actions, see Quickstart: Handling contact actions and Quickstart: Handling contact actions .

See Also

ServiceUserId ServiceUserId ServiceUserId ServiceUserId

Gets the user identifier of the service used for the 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 call.

Remarks

For PSTN calls, the ServiceUserId property is set to the PSTN number for the contact. For web-based services, the ServiceUserId property is set to the contact’s user id for that particular service.

For info about how to handle app activation through contact actions, see Quickstart: Handling contact actions and Quickstart: Handling contact actions .

See Also

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.
Value
SplashScreen SplashScreen SplashScreen SplashScreen

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 call activations, the Verb property is set to the value of Windows.ApplicationModel.Contacts.ContactLaunchActionVerbs.Call.

For info about how to handle app activation through contact actions, see Quickstart: Handling contact actions and Quickstart: Handling contact actions .

See Also

See Also