Ring groups
A ring group rings several extensions (and external numbers) at the same time or in sequence. Scopes ring_groups:read / ring_groups:write.
Creating a group
curl -s -X POST https://centralino.exovoip.it/api/v1/ring-groups \
-H "X-API-Key: $EXOPBX_API_KEY" -H "Content-Type: application/json" \
-d '{"number":"600","name":"Assistenza","strategy":"simultaneous","ringTimeS":25,
"memberExtensionIds":[12,13,14],"failoverDestination":{"type":"voicemail","extensionId":12}}'await pbx.ringGroups.create({
number: '600',
name: 'Assistenza',
strategy: 'simultaneous',
ringTimeS: 25,
memberExtensionIds: [12, 13, 14],
failoverDestination: { type: 'voicemail', extensionId: 12 },
});$pbx->ringGroups->create([
'number' => '600',
'name' => 'Assistenza',
'strategy' => 'simultaneous',
'ringTimeS' => 25,
'memberExtensionIds' => [12, 13, 14],
'failoverDestination' => ['type' => 'voicemail', 'extensionId' => 12],
]);pbx.ring_groups.create({
"number": "600",
"name": "Assistenza",
"strategy": "simultaneous",
"ringTimeS": 25,
"memberExtensionIds": [12, 13, 14],
"failoverDestination": {"type": "voicemail", "extensionId": 12},
})| Field | Description |
|---|---|
number | The group's short number (dialable from extensions) |
strategy | simultaneous (all at once) or sequential (one at a time) |
ringTimeS, memberRingS | Total ring time and, in sequential mode, ring time per member |
memberExtensionIds, externalNumbers | The group's extensions and external numbers |
skipBusy | Skips extensions already on a call |
callerHears | The caller hears ringing (ring) or music on hold (moh) |
failoverDestination | Where the call goes if nobody answers |
To distribute calls among agents with waiting and announcements, use queues instead.
Endpoints
| Request | Scope | SDK method |
|---|---|---|
GET /v1/ring-groups | ring_groups:read | ringGroups.list() · py: ring_groups.list() |
POST /v1/ring-groups | ring_groups:write | ringGroups.create() · py: ring_groups.create() |
GET /v1/ring-groups/:id | ring_groups:read | ringGroups.get() · py: ring_groups.get() |
PATCH /v1/ring-groups/:id | ring_groups:write | ringGroups.update() · py: ring_groups.update() |
DELETE /v1/ring-groups/:id | ring_groups:write | ringGroups.delete() · py: ring_groups.delete() |
