~.pbx.kazoo.name.~ Conexión #
El ~.pbx.kazoo.name.~ proporciona un servicio de recopilación de datos para el ~.pbx.kazoo.name.~ Plataforma UCaaS/CPaaS.
En la tabla siguiente se describen los ajustes necesarios al configurar un ~.pbx.kazoo.name.~ PBX conexión:
Ajuste | Descripción |
---|---|
Nombre | Un nombre único para poder identificar fácilmente el uso de la conexión. |
API Llave | El API Clave para permitir ~.Dimensions.~ Para conectarse a ~.pbx.kazoo.name.~ y supervisar las comunicaciones del cliente. |
ID de cuenta | El ~.pbx.kazoo.name.~ Id. de cuenta de inquilino para el cliente. |
Crossbar REST API | REST API Conexión URL. |
Blackhole WebSocket API | Conexión WebSocket URL |
País | La ubicación de la conexión del sistema telefónico. Se utiliza para localizar los números de teléfono de la conexión. |
info
Asegúrese de que el < correcto C0> Tipos de eventos</c0> están habilitados en el Blackhole WebSocket.\
Versiones compatibles #
~.pbx.kazoo.name.~ Lanzamiento | ~.Dimensions.~ Soporte | Notas |
---|---|---|
5.3 | Compatible | Ninguno |
5.2 | Compatible | Ninguno |
5.1 | Compatible | Ninguno |
5.0 | Compatible | Ninguno |
4.31 | Compatible | ACDC compatible con Sprint 85 |
4.21 | Compatible | Ninguno |
< 4.x | No compatible | Ninguno |
-
Los recopiladores de datos tardan más en iniciarse en los sistemas 4.x debido a que tienen que solicitar suscripciones a eventos individualmente. ↩︎
Requisitos de configuración #
Los siguientes requisitos se aplican a ~.pbx.kazoo.name.~ PBX Conexiones:
Artículo | Requisito |
---|---|
Plan de numeración | ~.Dimensions.~ Requiere un plan de numeración único para poder distinguir entre dispositivos y usuarios. Dispositivo 'SIP Los nombres de usuario no pueden ser los mismos que cualquier número de extensión (incluido el ID de extensión/presencia de los usuarios, flujos de llamadas, etc.) |
Usuarios | Todos ~.pbx.kazoo.name.~ los usuarios DEBEN tener lo siguiente para ser monitoreados correctamente:
|
Filtrado de resumen de agentes | Actualmente, el estado del agente no se puede filtrar por cola. Al filtrar el informe de resumen del agente por cola, se mostrarán todos los agentes con su estado para el rango de fechas correspondiente del informe. Solo la información de la llamada se puede filtrar contra un específico si es necesario. Esto se debe al hecho de que la información específica de la cola no se almacena históricamente en los eventos de estado del agente. |
API Llave #
Este API La clave se genera a partir de la tecla ~.pbx.kazoo.name.~ mediante la aplicación "Autenticación". Permite ~.Dimensions.~ Para conectarse a su ~.pbx.kazoo.name.~ instalación.
ID de cuenta #
El ~.pbx.kazoo.name.~ El identificador de cuenta de inquilino es necesario para el cliente específico en el ~.pbx.kazoo.name.~ plataforma. Esto permite ~.Dimensions.~ para identificar de forma única a los usuarios de este cliente y las llamadas al ~.pbx.kazoo.name.~ plataforma. Esto se puede encontrar en el ~.pbx.kazoo.name.~ mediante la aplicación "Centro de Control". Edite el nombre de la cuenta y se mostrará.
Siempre que sea posible, un API clave en el nivel más alto se debe usar para permitir ~.Dimensions.~ Para monitorear múltiples clientes a través de una sola conexión a ~.pbx.kazoo.name.~. Esto reducirá la carga en el ~.pbx.kazoo.name.~ instancia.
API Conexiones #
Crossbar REST API URL #
El Crossbar REST API Se utiliza para consultar información sobre los usuarios, dispositivos y callfows configurados en la cuenta de un cliente. Esta información se utiliza para crear cuentas de usuario y para ayudar a modelar el tráfico de llamadas.
'Si está utilizandoui.zswitch.net
, luego el Crossbar (REST) eshttps://ui.zswitch.net
note
Quite el "/v2" del final de URL si es que existe.
Blackhole WebSocket URL #
El Blackhole La conexión se utiliza para supervisar el tráfico de llamadas y para realizar un seguimiento de los eventos de cambio de documentos para los objetos ~.Dimensions.~ modelos (usuarios, dispositivos, flujos de llamadas, etc.).
Al configurar los detalles de conexión, incluya el número de puerto para el Blackhole conexión.
Si está utilizandoapi.zswitch.net
, luego el Blackhole (WebSocket) eswss://api.zswitch.net:5443
Si se utiliza un DNS SRV, no se debe proporcionar el número de puerto.
note
Quite el "/v2" del final de URL si es que existe.
ACDC Apoyo
Si se utiliza una versión de ~.pbx.kazoo.name.~ que apoya ACDC en lugar de Qubicle, Cola & Los eventos del agente se pueden monitorear si el socket EDR está habilitado. Lo mismo URL Configurado para Blackhole se utilizará para conectarse a la toma EDR.
DNS SRV #
~.Dimensions.~ Soportes DNS Registros SRV para ambos Crossbar y Blackhole Conexiones. Al configurar los registros SRV, se deben usar los prefijos que se enumeran a continuación para cada uno de los diferentes tipos de conexión:
Tipo de conexión | DNS Prefijo SVR |
---|---|
Crossbar REST API | _crossbar._TCP |
Blackhole WebSocket | _blackhole._TCP |
WebRTC | _webrtc._TCP |
Ejemplo Crossbar Configuración de SRV En el ejemplo siguiente se muestran dos registros SRV para un Crossbar conexión. Se pueden configurar más según sea necesario.
En el ~.Dimensions.~ PBX Plantilla, el Crossbar se configuraría parahttps://zone1.example.com
.
\_crossbar.\_tcp.zone01.example.com. 1 EN SRV 10 100 8443 apps001-ca.example.com.
\_crossbar.\_tcp.zone01.example.com. 1 EN SRV 100 10 8443 apps001-fl.example.com.
Ejemplo Blackhole Configuración de SRV
En el ~.Dimensions.~ PBX Plantilla, el Blackhole se configuraría parawss://zone1.example.com
.
\_blackhole.\_tcp.zone01.example.com. 1 EN SRV 10 100 2096 apps001-ca.example.com.
\_blackhole.\_tcp.zone01.example.com. 1 EN SRV 100 10 2096 apps001-fl.example.com.
Ejemplo de configuración de WebRTC SRV
\_webrtc.\_tcp.zone01.example.com. 1 EN SRV 10 100 5065 apps001-ca.example.com.
\_webrtc.\_tcp.zone01.example.com. 1 EN SRV 100 10 5065 apps001-fl.example.com.
note
Si se utiliza cualquiera de los ~.UcClient.~ softphones (Desktop, Móvil o CRM), es necesario configurar una configuración adicional de proxy de salida en su cuenta de revendedor. Por favor, póngase en contacto con ~.Dimensions.~ soporte para tener esta configuración.
~.pbx.kazoo.name.~ Requisitos/restricciones de la plataforma #
Sub Cuentas #
~.Dimensions.~ Se puede configurar para aprovisionar y monitorear automáticamente las subcuentas de un cliente, hasta 1 nivel por debajo. Para utilizar esta función, la conexión de un cliente debe configurarse manualmente sin un PBX plantilla.
Para obtener más información, consulte el sistemas telefónicos sección.
note
El seguimiento de subcuentas solo está disponible en las cuentas de los clientes y no debe utilizarse en las cuentas de los revendedores.
Limitación de velocidad #
Eventos de WebSocket #
~.Dimensions.~ requiere que los siguientes eventos estén habilitados en WebSocket para permitir que se modelen todas las llamadas y se realice un seguimiento de las modificaciones de programación:
"datos": {
"llamar": [
"Llama. CHANNEL_CREATE. {CALL_ID}",
"Llama. CHANNEL_ANSWER. {CALL_ID}",
"Llama. CHANNEL_DESTROY. {CALL_ID}",
"Llama. CHANNEL_HOLD. {CALL_ID}",
"Llama. CHANNEL_UNHOLD. {CALL_ID}",
"Llama. CHANNEL_BRIDGE. {CALL_ID}",
"Llama. PARK_PARKED. {CALL_ID}",
"Llama. PARK_RETRIEVED. {CALL_ID}",
"Llama. PARK_ABANDONED. {CALL_ID}"
][
"call.CHANNEL_CREATE.{CALL_ID}",
"call.CHANNEL_ANSWER.{CALL_ID}",
"call.CHANNEL_DESTROY.{CALL_ID}",
"call.CHANNEL_HOLD.{CALL_ID}",
"call.CHANNEL_UNHOLD.{CALL_ID}",
"call.CHANNEL_BRIDGE.{CALL_ID}",
"call.PARK_PARKED.{CALL_ID}",
"call.PARK_RETRIEVED.{CALL_ID}",
"call.PARK_ABANDONED.{CALL_ID}"
],
"Conferencia": [
"Conferencia.Comando. {CONFERENCE_ID}",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.undeaf-member",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.miembro-sordo",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.unmute-member",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.miembro-mute",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.start-talking",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.dejar de hablar",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.del-member",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.agregar-miembro",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.unlock",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.lock",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.conferencia-destruir",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.conference-create",
"Conferencia.evento. {CONFERENCE_ID}. {CALL_ID}.\*"
][
"conference.command.{CONFERENCE_ID}",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.undeaf-member",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.deaf-member",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.unmute-member",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.mute-member",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.start-talking",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.stop-talking",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.del-member",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.add-member",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.unlock",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.lock",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.conference-destroy",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.conference-create",
"conference.event.{CONFERENCE_ID}.{CALL_ID}.*"
],
"Fax": [
"fax.estado. {FAX_ID}",
"fax.objeto. {ACCIÓN}"
][
"fax.status.{FAX_ID}",
"fax.object.{ACTION}"
],
"objeto": [
"object.doc_created.account",
"object.doc_created.callflow",
"object.doc_created.device",
"object.doc_created.faxbox",
"object.doc_created.media",
"object.doc_creado.usuario",
"object.doc_created.vmbox",
"object.doc_created.fax",
"object.doc_created.mailbox_message",
"object.doc_created.call_recording",
"object.doc_editado.cuenta",
"object.doc_edited.callflow",
"object.doc_editado.dispositivo",
"object.doc_editado.faxbox",
"object.doc_edited.media",
"object.doc_editado.usuario",
"object.doc_editado.vmbox",
"object.doc_editado.fax",
"object.doc_editado.mensaje_de_buzón",
"object.doc_edited.call_recording",
"object.doc_deleted.account",
"object.doc_deleted.callflow",
"object.doc_deleted.device",
"object.doc_deleted.faxbox",
"object.doc_deleted.media",
"object.doc_deleted.user",
"object.doc_deleted.vmbox",
"object.doc_eliminado.fax",
"object.doc_deleted.mensaje_de_buzón",
"object.doc_deleted.call_recording"
][
"object.doc_created.account",
"object.doc_created.callflow",
"object.doc_created.device",
"object.doc_created.faxbox",
"object.doc_created.media",
"object.doc_created.user",
"object.doc_created.vmbox",
"object.doc_created.fax",
"object.doc_created.mailbox_message",
"object.doc_created.call_recording",
"object.doc_edited.account",
"object.doc_edited.callflow",
"object.doc_edited.device",
"object.doc_edited.faxbox",
"object.doc_edited.media",
"object.doc_edited.user",
"object.doc_edited.vmbox",
"object.doc_edited.fax",
"object.doc_edited.mailbox_message",
"object.doc_edited.call_recording",
"object.doc_deleted.account",
"object.doc_deleted.callflow",
"object.doc_deleted.device",
"object.doc_deleted.faxbox",
"object.doc_deleted.media",
"object.doc_deleted.user",
"object.doc_deleted.vmbox",
"object.doc_deleted.fax",
"object.doc_deleted.mailbox_message",
"object.doc_deleted.call_recording"
]
}
Crossbar API Solicitudes #
Lo siguiente Crossbar API Las solicitudes son utilizadas por Dimensions:
Uso general
{BARRA TRANSVERSAL}/v2/api_auth,httpMethod=PUT
{CROSSBAR}/v2/websockets,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/api_key,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/descendants?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/users?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/users/{USERID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/users/{USERID}/quickcall/{DESTINATION},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/users/{USERID}/presence,httpMethod=POST
{CROSSBAR}/v2/accounts/{ACCOUNTID}/devices?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/devices/{DEVICEID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/devices/{DEVICEID}/quickcall/{DESTINATION},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/callflows?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/callflows? {Filtros de cadena de consulta},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/callflows/{CALLFLOWID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/groups?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/groups/{GROUPID}?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/conferences?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/conferences/{CONFERENCEID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/vmboxes?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/metaflows,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/storage,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/channels,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/channels/{CHANNELID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/channels/{CHANNELID},httpMethod=PUT
{CROSSBAR}/v2/accounts/{ACCOUNTID}/resources,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_queues?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_queues/{QUEUEID},httpMethod=GET
~.UcClient.~ ACD Control
Se utiliza mientras se controla el estado del agente desde ~.UcClient.~ y Tablero.
{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_recipients/status,httpMethod=POST,content={"data":{"recipient_ids":[" {RECIPIENTID1}","{RECIPIENTID2}"]["{RECIPIENTID1}","{RECIPIENTID2}"]}}
{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_recipients/{USERID},httpMethod=POST
{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_recipients/{USERID}/status,httpMethod=POST
Control de perfil de presencia
Se utiliza cuando los perfiles de presencia están habilitados en el ~.UcClient.~.
{CROSSBAR}/v2/accounts/{accountId}/users/{userId},httpMethod=PATCH
{CROSSBAR}/v2/accounts/{accountId}/callflows/{callFlowId},httpMethod=POST
{CROSSBAR}/v2/accounts/{accountId}/callflows/groups/{groupId},httpMethod=POST
{CROSSBAR}/v2/accounts/{accountId}/callflows/groups/{groupId},httpMethod=POST
ACDC Soporte en código abierto
Se utiliza si se ejecuta Open source ~.pbx.kazoo.name.~ Usando ACDC y eventos de agente/cola EDR.
{crossbar}/v2/accounts/{accountId}/queues,httpMethod=GET
{crossbar}/v2/accounts/{accountId}/queues/{queueId},httpMethod=GET
{crossbar}/v2/accounts/{accountId}/queues/{queueId}/stats_summary,httpMethod=GET
{crossbar}/v2/accounts/{accountId}/agents/{recipientId}/status,httpMethod=GET
{crossbar}/v2/accounts/{accountId}/agents/{userId}/status,httpMethod=POST
Restricciones de la plataforma #
Las restricciones que se enumeran a continuación se aplican a la última versión de ~.pbx.kazoo.name.~ soportado.
Restricción | Descripción |
---|---|
Seguimiento del flujo de llamadas | No se puede recopilar información de llamada a través del socket web API para llamadas mientras están en un flujo de llamadas. El seguimiento de llamadas comenzará una vez que una llamada interactúe con un usuario/dispositivo o con la cola del centro de llamadas. Mientras estén en un flujo de llamadas, las llamadas se tratarán como si estuvieran en el estado "En cola". |
Seguimiento del correo de voz | Las llamadas que se desvían al correo de voz desde un teléfono no se pueden rastrear como si hubieran ido al correo de voz y, en cambio, se modelarán como no respondidas. Esto se debe a que no se proporciona información suficiente a través del socket web API para que se modele el escenario correcto. |
Seguimiento de transferencias anunciadas | Debido a la forma en que se generan los eventos de llamada, recomendamos que todos los teléfonos estén configurados para la transferencia a ciegas. Si los teléfonos no están configurados para la transferencia a ciegas y se cuelga una transferencia asistida antes de conectarla, es posible que la llamada no se modele correctamente. Esto se debe a una limitación en FreeSWITCH. |
Llamada rápida | Si se ejecuta un ~.pbx.kazoo.name.~ versión anterior a la 5.0, las llamadas rápidas respondidas en un dispositivo externo (celular/casa) generan entradas de registro de llamadas no válidas. |