Function Keys
Function keys can be used as shortcuts for dialing a number, or accomplishing other menial tasks, by pushing a button on the phone. A function key’s action is determined by its destination.
Function keys can be added directly on a user, or in a template. Templates are useful for creating a set of common function keys that can be used by the same group of people.
This page only describes the data models used by the REST API. Consult the API documentation for further details on URLs.
Function Key Template
Parameters
Field |
Type |
Required |
Description |
name |
string |
No |
A name for the template. |
keys |
Function Key |
No |
A collection of function keys under the form {"position": "funckey"} .
See the example for more details. |
Example
{
"name": "Example template",
"keys": {
"1": {
"destination": {
"type": "user",
"user_id": 34
}
},
"2": {
"blf": true,
"label": "Call mom",
"destination": {
"type": "custom",
"exten": "5551234567"
}
}
}
}
Function Key
Description
Field |
Type |
Required |
Description |
blf |
boolean |
No |
Turn on BLF when there is activity on the destination |
label |
string |
No |
Label to display next to the function key |
destination |
Destination |
Yes |
Destination to call |
Example
{
"blf": True,
"label": "Call john",
"destination": {
"type": "user",
"user_id": 34
}
}
Destination
A destination determines the number to dial when using a function key. Destinations are composed of a parameter named
type
and any additional parameters required by its type.
Available destination types:
- agent
- An agent
- bsfilter
- Boss/Secretary filter
- conference
- Conference room
- custom
- A custom number to dial
- forward
- Forward a call towards another number
- group
- A group
- onlinerec
- Record a conversation during a call
- paging
- A paging
- park
- Park a call
- park_position
- Pick up a parked call
- queue
- Call queue
- service
- A call service
- transfer
- Transfer a call
- user
- A User
Here are the parameters required for each destination:
Agent
Field |
Type |
Value |
agent_id |
numeric |
Agents’s id |
BSFilter
Field |
Type |
Value |
filter_member_id |
numeric |
ID of the filter member |
Conference
Field |
Type |
Value |
conference_id |
numeric |
Conference’s id |
Custom
Field |
Type |
Value |
exten |
string |
Number to dial |
Forward
Field |
Type |
Value |
forward |
string |
Type of forward. Possible values: busy, noanswer, unconditional |
exten |
string |
Number to dial (optional) |
Group
Field |
Type |
Value |
group_id |
numeric |
Group’s id |
Online call recording
No parameters are required for this destination
Paging
Field |
Type |
Value |
paging_id |
numeric |
Pagings’s id |
Parking
No parameters are required for this destination
Parking Position
Field |
Type |
Value |
position |
numeric string |
Position of the parking to pick up |
Queue
Field |
Type |
Value |
queue_id |
numeric |
User’s id |
Service
Field |
Type |
Value |
service |
string |
Name of the service |
Currently supported services:
- phonestatus
- Phone Status
- recsnd
- Sound Recording
- callrecord
- Call recording
- incallfilter
- Incoming call filtering
- enablednd
- Enable “Do not disturb” mode
- pickup
- Group Interception
- calllistening
- Listen to online calls
- directoryaccess
- Directory access
- fwdundoall
- Disable all forwaring
- enablevm
- Enable Voicemail
- vmusermsg
- Consult the Voicemail
- vmuserpurge
- Delete messages from voicemail
Transfer
Field |
Type |
Value |
transfer |
string |
Type of transfer. Possible values: blind, attended |
User
Field |
Type |
Value |
user_id |
numeric |
User’s id |