QueryUsers

Metreos.Native.CiscoExtensionMobility.QueryUsers

Summary

Queries one or more users, determining which device(s) each user is logged into.

Usage

Users in Cisco Unified Communications Manager with Extension Mobility profiles can log into one or more devices. QueryUsers is a means to discover this relationship. The action will query the Extension Mobility service to determine which devices one or more users are logged into at that moment in time.

The QueryUsers 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 GetUserDevices action, which will help determine which device(s) a single user is logged into.

The Users 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 11.3. Creating a string[] Dynamically


    new string[] { "user1", "user2" }


Example 11.4. Using ToArray() to convert an ArrayList to a string[]


    (string[]) myArrayListVar.ToArray( typeof(string) ) 


Remarks

This action will invoke the QueryUsers Extension Mobility API method by communicating to the specified Cisco Unified Communications Manager node.

Action Parameters
Parameter Name.NET TypeDefaultDescription
AppId *System.StringThe 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.StringThe password of the user specified by AppId.
Users *System.String[]The ID(s) of the user(s)
UrlSystem.StringThe 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.
CallManagerHostSystem.StringThe 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.
VersionMetreos.Native.CiscoExtensionMobility.CcmVersionUndefinedThe 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:
other

Specifiy other if the Cisco Unified Communications Manager version is anything above 3.3.

v333

Specify v333 if the Cisco Unified Communications Manager version is 3.3.3, 3.3.4, or 3.3.5.

Undefined

This is the default value to when nothing is specified for the Version field. It is strongly recommended that this value not be used because the behavior is undefined as well.

Result Data
Parameter Name.NET TypeDescription
QueryUsersResultMetreos.Types.CiscoExtensionMobility.DeviceResponseA complex variable type containing the data returned by this action. It is populated only on success. It can be parsed easily by using the GetUserDevices action.
ErrorMessageSystem.StringThe descriptive message returned by CallManager. Can be null even if CallManager was contacted

Branch Conditions 

Success

No description.

Failure

No description.