Status

Version 7.1 by michaely on 2015/07/10 16:20
Warning
For security reasons, the document is displayed in restricted mode as it is not the current version. There may be differences and errors due to this.

Warning

This page is currently being written. Although the information below is probably accurate, it may not be complete or may have errors.

Information

The information on this page applies to iSymphony 3.2+.

Warning

This resource is restricted by licensing. See the resource and action path information below for more details.

 

Description

The live status REST resource allows access to information about the status of a specific user in the system. ThisĀ resourceĀ also provides an action to update the status of a user.

On this page:

The [toc] macro is a standalone macro and it cannot be used inline. Click on this message for details.
 

JSON Representation

{
 "id": "99c6c017-7c86-4d78-89ca-dbc1267ffe76",
 "configurationId": "215734e0-383d-11e2-81c1-0800200c9a66",
 "name": "Went back in time",
 "type": "away",
 "note": "Tell Doc Brown",
 "returnTime": 499132800,
 "userCreated": true
}

Property

Type

Description

id

String

The id of the user status.

configurationId

String

The id of the configuration object that represents the user status.

name

String

The status name.

type

String

The status type. Determines the icon used for the status. See Status Types below.

note

String

The note set for the status.

returnTime

Long

The time the user has set to return, or -1 if no return time has been set. Represented as a unix timestamp, in milliseconds.

userCreated

Boolean

True, if the status is a custom status set by the user; false, if the status is a pre-configured status.

Status Types

The following is a list of accepted status types. These types will be used in the JSON representation of the status, and in the set action when changing the status.

Information

The current status type set on a user does not effect call flow or any other actions in the panel. The status is simply used for informational purposes.

 

  • available
  • unavailable
  • away
  • xa
  • dnd
  • chat
  • altblue
  • altgreen
  • altpink
  • altpurple
  • altred

Instance Resource Paths

Paths used to access a specific instance of the resource.

communication_manager/rest/live/coreServers/[{core_server_id} | getByName/{core_server_slug}]/users/[{user_id} | getByName/{username}]/status

Description

Provides access to the status of the specified user.

Information

This resource will not be available if the user is not licensed/full, or no license is installed on the core server.

Parameters:

  • core_server_id: the id of the parent core server
  • core_server_slug: the slug of the parent core server
  • user_id: the id of the parent user
  • user_name: the username of the parent user

Errors:

  • 404 Not Found: Returned if no core server with the given id or slug exists
  • 404 Not Found: Returned if no user with the given id or username exists, in the specified core server
  • 403 Forbidden: Returned if the user is not licensed/full, or no license is installed on the core server.

GET

Gets the status of the specified user.

Action Paths

Actions that can be performed on this resource.

{instance_resource_path}/set

Description

Updates the status of a user.

Information

This action will not be available if the user is not licensed/full, or no license is installed on the core server.

Parameters:

  • instance_resource_path: One of the instance resource paths for this resource. See Instance Resource Paths above

Errors:

  • 404 Not Found: Returned if any of the ancestors in the instance resource path could not be found
  • 422 Unprocessable Entity: Returned if no JSON name property is given
  • 422 Unprocessable Entity: Returned if no JSON type property is given
  • 422 Unprocessable Entity: Returned if the JSON type property value is not valid
  • 422 Unprocessable Entity: Returned if the JSON returnTime property value is to0 large, or is a non numerical value.
  • 403 Forbidden: Returned if the user is not licensed/full, or no license is installed on the core server.

JSON

{
 "name": "Went back in time",
 "type": "away",
 "note": "Tell Doc Brown",
 "returnTime": 499132800
}

Properties:

Property

Type

Description

name

String

The status name.

type

String

The status type. Determines the icon used for the status. See Status Types above.

note

String

The note for the status.

returnTime

Long

The time the user is returning, or -1 for no return time. Represented as a unix timestamp, in milliseconds.


POST

Updates the status of the user.

Curl Examples

Get the status of a specific user

curl --user manager:manag3rpa55word -i -H "Accept: application/json" http://localhost:58080/communication_manager/rest/live/coreServers/ca5de6c4-17bd-46ce-95a2-8b29c7812ca4/users/status

Set the status of a specific user

curl --user manager:manag3rpa55word -i -H "Content-Type: application/json" -X POST -d '{"name" : "Went back in time", "type" : "away", "note" : "Tell Doc Brown", "returnTime" : 499132800}' http://localhost:58080/communication_manager/rest/live/coreServers/ca5de6c4-17bd-46ce-95a2-8b29c7812ca4/users/status/set