- Ma première campagne
- Votre premier appel en 3 minutes
- Lancez votre campagne
- Ajouter des utilisateurs
- Organiser les champs de formulaire
- Configurer l'identification de la ligne d'appel
- Exportation des résultats d'appels
- Recharger votre crédit d'appel
- Faire des appels
- Modèles de campagnes
- Maîtriser Dialfire
Sync Client V2
Le Sync Client peut être utilisé pour transférer toutes les mises à jour des contacts vers une base de données SQL ou un service web.
Activation
Pour pouvoir utiliser le Sync Client, il faut activer le connecteur correspondant dans les paramètres de la campagne. Après une activation réussie, un jeton s'affiche sous les connecteurs. Il est nécessaire pour utiliser le client. Le jeton n'est visible que par l'utilisateur qui a activé le connecteur.
Installation
Téléchargement du binaire depuis bitbucket
Télécharger et compiler le code source
Installer Git
sudo apt-get install git
Installer Google Go
sudo apt-get install golang-go
Pour les étapes suivantes, il est nécessaire que la variable d'environnement GOPATH soit définie. Une description de la manière de définir correctement la variable d'environnement GOPATH peut être trouvée ici.
Cloner le répertoire
go get bitbucket.org/modima/dbsync2
Installer toutes les dépendances
cd $GOPATH/src/bitbucket.org/modima/dbsync && godep restore
Compiler le code source
-
Plate-forme cible Linux
cd $GOPATH/src/bitbucket.org/modima/dbsync2/ && go build
-
Plate-forme cible Windows
cd $GOPATH/src/bitbucket.org/modima/dbsync2/ && GOOS=windows GOARCH=amd64 go build -o dbsync2.exe
-
Plate-forme cible Mac
cd $GOPATH/src/bitbucket.org/modima/dbsync2/ && GOOS=darwin GOARCH=amd64 go build -o dbsync2_mac
Comment ça marche
Toutes les mises à jour des contacts sont chargées toutes les minutes depuis Dialfire, puis transférées directement vers le service web ou la base de données (voir Usage).
Usage
Base de données SQL
Le client supporte actuellement les systèmes de base de données suivants :
- MySQL / MariaDB
- PostgreSQL
- Microsoft SQL Server
Avant de pouvoir utiliser le client avec une base de données, la base de données correspondante doit être créée.
Le client crée les 4 tables suivantes dans cette base de données :
- dfire_contacts
- Contient tous les champs $, ainsi que les 100 premiers champs personnalisés de la campagne.
- dfire_transactions
- Contient toutes les transactions et la clé étrangère contact_id sur le contact correspondant.
- dfire_connections
- Contient toutes les connexions de la transaction et la clé étrangère transaction_id sur la transaction correspondante.
- dfire_recordings
- Contient tous les enregistrements d'appels de la connexion et la clé étrangère connection_id de la connexion correspondante.
- dfire_inbound_calls
- Contient tous les appels entrants et la clé étrangère contact_id du contact correspondant.
Schéma de l'URL de connexion à la base de données
MySQL / MariaDB:
mysql://username:password@localhost:3306/database?useSSL=false
PostgreSQL:
postgres://username:password@localhost:5432/database?sslmode=disable
Microsoft SQL Server:
sqlserver://username:password@localhost:1433/instance/database
Exemple
Transférez toutes les transactions du 01 février 2018 dans la campagne MON_CAMPAIGN vers une instance locale de Microsoft SQL Server. Seules les mises à jour qui commencent par le préfixe 'fc_' ou 'qc_' dans les étapes de la campagne et qui ont été effectuées par un utilisateur doivent être transférées.
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
Service Web
Comme alternative à une base de données, les transactions peuvent être transférées vers un service web. Le service doit accepter les demandes POST et répondre à la réception des données avec un code d'état compris entre 200 et 299. Dans le cas contraire, les données seront renvoyées (10 tentatives maximum).
Les données utiles envoyées ont le format JSON suivant :
{
"contact":...,
"transaction":...,
"state":...,
}
- contact
- contient les coordonnées du contact
- transaction
- contient la transaction correspondante
- state
- new ... pour une nouvelle transaction
- updated ... lorsque la transaction est mise à jour (par exemple, les données de connexion sont ajoutées ultérieurement).
Exemple
Transférer toutes les futures transactions de la campagne MON_CAMPAIGN vers un Webservice.
./dbsync --a webhook --c MY_CAMPAIGN_ID --ct MY_CAMPAIGN_SYNC_CLIENT_TOKEN --url 'https://example.com/api/transactions/'
(Error) Protocole
- Tous les messages d'erreur sont écrits directement dans la console (stdout).
- Tous les messages de protocole sont écrits dans
/var/log/dbsync/{MY_CAMPAIGN_ID}_{MODE}_{TIMESTAMP}.log
. - Si le répertoire /var/log/ est verrouillé, alors les messages apparaissent dans
$HOME/.dbsync/logs/{MY_CAMPAIGN_ID}_{MODE}_{TIMESTAMP}.log
.
Options de la ligne de commande
Un aperçu de toutes les options peut être obtenu avec la commande suivante
dbsync --help