El Sync Client puede utilizarse para transferir todas las actualizaciones de los contactos a una base de datos SQL o a un servicio web. 


Activación

Para poder utilizar el Cliente de sincronización, active el conector correspondiente en la configuración de la campaña. Después de la activación exitosa, se muestra un token debajo de los conectores. Es necesario para utilizar el cliente. El token sólo es visible para el usuario que ha activado el conector.



Instalación



Cómo funciona

Todas las actualizaciones de los contactos se cargan cada minuto desde Megadialer y luego se transfieren directamente al servicio web o a la base de datos.

Uso

Base de datos SQL

El cliente soporta actualmente los siguientes sistemas de bases de datos:

  • MySQL / MariaDB
  • PostgreSQL
  • Microsoft SQL Server

Antes de poder utilizar el cliente con una base de datos, es necesario crear la base de datos correspondiente.


El cliente crea las siguientes 4 tablas dentro de esa base de datos:

  • mcall_contacts
    • Contiene todos los campos $, así como los 100 primeros campos personalizados de la campaña.
  • mcall_transactions
    • Contiene todas las transacciones y la clave externa contact_id del contacto correspondiente.
  • mcall_connections
    • Contiene todas las conexiones de la transacción y la clave externa transaction_id de la transacción correspondiente.
  • mcall_recordings
    • Contiene todas las grabaciones de llamadas de la conexión y la clave externa connection_id de la conexión correspondiente.
  • mcall_inbound_calls
    • Contiene todas las llamadas entrantes y la clave externa contact_id del contacto correspondiente.


Alternativtext wenn Bild nicht gefunden

Ejemplo

Transferir todas las transacciones del 01 de febrero de 2018 en la campaña MY_CAMPAIGN a una instancia local en ejecución de Microsoft SQL Server. Sólo deben transferirse las actualizaciones que comienzan con el prefijo 'fc_' o 'qc_' en las etapas de la campaña y que han sido realizadas por un usuario.


dbsync2 --a db_sync --fm hi_updates_only --fp 'fc_,qc_' --c MY_CAMPAIGN_ID --ct MY_CAMPAIGN_SYNC_CLIENT_TOKEN \ --s 2018-02-01 --url sqlserver://my_user:my_password@localhost:1433/my_database

Servicio web


Como alternativa a una base de datos, las transacciones pueden ser transferidas a un servicio web. El servicio debe aceptar solicitudes POST y responder a la recepción satisfactoria de los datos con un código de estado entre 200 y 299. En caso contrario, los datos serán reenviados (máximo 10 intentos).

La información enviada tiene el siguiente formato JSON:

{ "contact":..., "transaction":..., "state":..., }
  • contact
    • contiene los datos del contacto
  • transaction
    • contiene la transacción correspondiente
  • state
    • new ... para una nueva transacción
    • updated ... cuando la transacción se actualiza (por ejemplo, los datos de conexión se añaden posteriormente).

Ejemplo

Transferir todas las transacciones futuras de la campaña MY_CAMPAIGN a un Webservice.

./dbsync --a webhook --c MY_CAMPAIGN_ID --ct MY_CAMPAIGN_SYNC_CLIENT_TOKEN --url 'https://example.com/api/transactions/'

(Error) Protocolo

  • Todos los mensajes de error se escriben directamente en la consola (stdout).
  • Todos los mensajes de registro se escriben en /var/log/dbsync/{MY_CAMPAIGN_ID}_{MODE}_{TIMESTAMP}.log.
  • Si el directorio /var/log/ está bloqueado, los mensajes aparecen en $HOME/.dbsync/logs/{MY_CAMPAIGN_ID}_{MODE}_{TIMESTAMP}.log.

Opciones de la línea de comandos

Un resumen de todas las opciones se puede obtener con el siguiente comando.

dbsync --help