Native
Synchronous
No Custom Parameters
Queries one or more devices, determining which user, if any, is currently logged into it.
Devices in Cisco Unified Communications Manager can potentially be logged into by a single, Extension Mobility-enabled user. QueryDevices is a means to discover this relationship. The action will query the Extension Mobility service to determine which user, if any, is logged into the specified device(s) at that moment in time.
The QueryDeviceProfiles action returns a complex data type that, without any help, requires a substantial amount of C# to parse. To alleviate the demand for repetitive C#, you can use the GetDeviceStatus action, which will help determine if a user is logged into a particular device.
The Devices action parameter is of type string[], which does not map to a native type. There are two options for creating this type within a Cisco Unified Application Designer-based application. One is to create the string[] in a C# snippet in the action parameter, the other is to use the System.Collections.ArrayList.ToArray(System.Type) in a C# action parameter (which allows one to use an ArrayList variable). Both samples are listed below:
Example 13.2. Using ToArray() to convert an ArrayList to a string[]
(string[]) myArrayListVar.ToArray( typeof(string) )
This action will invoke the QueryDeviceProfiles Extension Mobility API method by communicating to the specified Cisco Unified Communications Manager node.
| Parameter Name | .NET Type | Default | Description |
|---|---|---|---|
| AppId * | System.String | The name of a user configured in Cisco Unified Communications Manager that has the necessary permissions to invoke methods on the Extension Mobility service. | |
| AppCertificate * | System.String | The password of the user specified by AppId. | |
| UserId * | System.String[] | The names of one or more Users | |
| Url | System.String | The URL for the Extension Mobility Service. This field should only be specified if the Extension Mobility Service is in a non-default location. This field is also completely ignored if any non-null value is specified as the CallManagerHost. | |
| CallManagerHost | System.String | The IP address and port of a CallManager node with the Extension Mobility service running, in the form '[IP]:[Port]'. Note that the Extension Mobility service is on port 80 by default in 3.x/4.x, and on port 8080 by default in 5.x/6.x. | |
| Version | Metreos.Native.CiscoExtensionMobility.CcmVersion | Undefined | The version of Cisco Unified Communications Manager. This version is used in conjuction with CallManagerHost to build the URL of the Extension Mobility Service. The possible values are described below:
|
| Parameter Name | .NET Type | Description |
|---|---|---|
| QueryDeviceProfileResult | Metreos.Types.CiscoExtensionMobility.DeviceProfileResponse | A complex variable type containing the data returned by this action. It is populated only on success. It can be parsed easily by using the GetDeviceStatus action. |
| ErrorMessage | System.String | This error message maps almost exactly to the standard Cisco Unified Communications Manager Extension Mobility API error messages. The one exception is if the service returns null, which is returned by this action if the Extension Mobility service did not respond back to the Cisco Unified Application Server with response XML or if the action was unable to communication with the service. |
Branch Conditions
No description.
No description.