Busy Lamp Field Services

Display busy lamp field’s monitored users

GET /api/v1/tenants/(string: tenant_id)/groups/(string: group_id)/users/(string: user_id)/services/busy_lamp_field/

Retrieve the settings of the Busy Lamp Field service of the user.

Authorization rights: minimum End User.

Example request:

GET /api/v1/tenants/foo/groups/foogroup/users/foouser/services/busy_lamp_field/ HTTP/1.1
Host: example.com

Example response:

HTTP/1.1 200 OK
Content-Type: "application/json"

{
     "monitoredUsers": [
         {
             "userId": "ApioDummyUserTest@sip.netaxis.be",
             "firstName": "Test",
             "lastName": "Dummy",
             "extension": "",
             "phoneNumber": "",
             "department": {
                  "tenantId": "ApioSpTest",
                  "groupId": "ApioGrpTest",
                  "departmentName": "test_department_initial",
                  "fullPathName": "test_department_parent_1 \\ test_department_initial"
             },
             "emailAddress": "",
             "impId": ""
         }
     ]
}
Response JSON Object:
  • monitoredUsers (list) – a list of monitored users as defined as User summary attributes.

  • uri (string) – The BLF URI List.

  • enableCallParkNotification (boolean) – if the notification about Call Park activity is enabled or disabled.

Status Codes:

Update a busy lamp field’s monitored users

PUT /api/v1/tenants/(string: tenant_id)/groups/(string: group_id)/users/(string: user_id)/services/busy_lamp_field/

Update the settings of the Busy Lamp Field service of the user.

Authorization rights: minimum End User.

Example request:

PUT /api/v1/tenants/foo/groups/foogroup/users/foouser/services/busy_lamp_field/ HTTP/1.1
Host: example.com
Content-Type: "application/json"

{
    "monitoredUserIds": [
        "ApioDummyUserTest@sip.netaxis.be",
        "ApioUserTest1@sip.netaxis.be",
    ]
}

Example response:

HTTP/1.1 200 OK
Request JSON Object:
  • monitoredUserIds (array) – the list of user IDs to be monitored. Empty list to delete.

  • uri (string) – The BLF URI List. If not provided and not set yet, the uri will be auto-generated.

  • enableCallParkNotification (boolean) – if the notification about Call Park activity is enabled or disabled.

Status Codes:

The APIO behaviour for the Busy Lamp Field uri generation is controlled by the following setting:

"AUTOMATIC_ID_RULES": {
    "URI_BLF_AUTO_GENERATE": True,
    "URI_BLF_RULE": "{{user_id}}_BLF@{{domain}}"
}
Settings description:
  • URI_BLF_AUTO_GENERATE: APIO will enable the auto-generation of BLF uri. Default is False, it must be set to have this feature working.

  • URI_BLF_RULE: the formatting rule for the BLF uri. Default is “{{user_id}}_BLF@{{domain}}”.

Display busy lamp field’s available users

GET /api/v1/tenants/(string: tenant_id)/groups/(string: group_id)/users/(string: user_id)/services/busy_lamp_field/available_users/

Retrieve the list of available users to be used for the Busy Lamp Field service of the user.

Authorization rights: minimum End User.

Example request:

GET /api/v1/tenants/foo/groups/foogroup/users/foouser/services/busy_lamp_field/available_users/ HTTP/1.1
Host: example.com
Content-Type: "application/json"

{
    'extended_info': false,
    'own_group_only': true
}
Response JSON Object:
  • extended_info (boolean) – (Enterprise Only) Provides the Group Id of the returned users (default is False).

  • own_group_only (boolean) – (Enterprise Only) Specify if to get only the available users within the group (default is True).

In case of a Service Provider, the parameters will not have any effect. In case of Enterprise and both parameters set to true, only the users of the same group will be displayed (with the additional parameter ‘groupId’).

Example response:

HTTP/1.1 200 OK
Content-Type: "application/json"

{
     "users": [
         {
             "userId": "ApioUserTest2@sip.netaxis.be",
             "firstName": "Test2",
             "lastName": "Test2",
             "extension": "",
             "phoneNumber": "",
             "department": {
                  "tenantId": "ApioSpTest",
                  "groupId": "ApioGrpTest",
                  "departmentName": "test_department_initial",
                  "fullPathName": "test_department_parent_1 \\ test_department_initial"
             },
             "emailAddress": "",
             "impId": "",
             "groupId": "foogroup"
         }
     ]
}
Response JSON Object:
Status Codes:

User summary attributes

Name

Type

Method

Description

GET

userId

String

A

The unique user Id

firstName

String

A

The user first name. (see First / Last name)

lastName

String

A

The user last name. (see First / Last name)

department

String

A

The department the user belongs to, an object as defined as Group department key attributes.

phoneNumber

String

A

The user’s phone number (if configured, empty or absent otherwise) (see Phone Number)

extension

String

A

The user extension. (see Extension)

emailAddress

String

A

The user email address

impId

String

A

TODO

groupId

String

C

The user’s group ID, presett if extended_info was asked.