Page tree
Skip to end of metadata
Go to start of metadata

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

The information on this page applies to iSymphony 3.2+.

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:

 


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
}
PropertyTypeDescription
id
StringThe id of the user status.
configurationId
StringThe id of the configuration object that represents the user status.
name
StringThe status name.
typeString

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

noteStringThe note set for the status.
returnTimeLongThe time the user has set to return, or -1 if no return time has been set. Represented as a unix timestamp, in milliseconds.
userCreatedBooleanTrue, 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.

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.

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

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:

PropertyTypeDescription
name
StringThe status name.
typeString

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

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


POSTUpdates 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/f038bbb9-8950-42fb-a4f7-b57a805dd5de/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/f038bbb9-8950-42fb-a4f7-b57a805dd5de/status/set
  • No labels