Module complémentaire WebHooks
Introduction
Vous pouvez utiliser le module complémentaire WebHooks pour envoyer les données de vos formulaires vers n'importe quelle page ou script personnalisé de votre choix. Cette page peut effectuer des tâches d'intégration pour transformer, analyser, manipuler et envoyer vos données de soumission là où vous le souhaitez.
Si vous développez une application qui doit être mise à jour à chaque fois qu'un formulaire est soumis, WebHooks est fait pour vous. L'avantage des WebHooks est que la transmission des données est immédiate et que vous pouvez transmettre toutes les données du formulaire soumis en même temps.
Qu'est-ce qu'un WebHook ?
Un WebHook est simplement une notification push d'iform4u vers un autre serveur chaque fois que quelqu'un soumet vos formulaires.
Que pouvez-vous faire avec un WebHook ?
WebHooks facilitent l'intégration de deux systèmes. L'utilisation la plus courante d'un WebHook est d'introduire des prospects dans votre CRM. Mais vous pouvez également faire bien d’autres choses.
De quoi avez-vous besoin?
La nature même d'un WebHook suppose que vous ayez une certaine capacité à écrire du code (ou à soudoyer un ami ou un collègue qui le fait). Vous devez disposer d'un serveur capable d'accepter une requête POST (celle que vous obtiendriez lors de la soumission d'un formulaire) et être capable d'écrire un script qui fasse quelque chose en réponse.
Remarque : iform4u prend en charge l'intégration de plusieurs WebHooks par formulaire.
Créer un WebHook
Pour créer un WebHook, vous devez effectuer les étapes suivantes :
- Accédez au gestionnaire de modules complémentaires et cliquez sur WebHooks .
- Cliquez sur le bouton Créer un Webhook.
- Un formulaire permettant de configurer le WebHook apparaîtra :
- Formulaire : Sélectionnez le formulaire qui enverra les notifications.
- Clé de poignée de main : il s'agit d'une clé facultative que vous choisissez comme mécanisme d'authentification pour empêcher le spam sur votre Web Hook. Cette clé sera incluse comme paramètre de publication lorsque nos serveurs appelleront le vôtre. Si vous utilisez cette clé, vous devez la comparer à votre copie pour valider que la soumission est légitime.
- Url : L'URL où se trouve votre script.
- Statut: Peut être :
- Activé : Envoyer des notifications
- Désactivé : n'envoie pas de notifications
- Json: Peut être :
- Activé : Envoyer les données sous forme de chaîne JSON
- Désactivé : envoyer les données sous forme de chaîne codée en URL
- Alias: Peut être :
- On : Envoie les données avec Field Alias comme clé de paramètre. Par exemple. Remplace 'text_0' par 'name'.
- Off : envoyer des données avec l'ID de champ comme clé de paramètre
- Cliquez sur Créer.
Remarque : Sélectionnez plusieurs formulaires pour créer le même WebHook pour chaque formulaire.
Désactiver/Activer un WebHook
Pour arrêter temporairement un webhook, vous pouvez choisir de le désactiver et de l'activer ultérieurement. Pour désactiver un webhook de formulaire, vous devez suivre ces étapes :
- Accédez au gestionnaire de modules complémentaires et cliquez sur WebHooks .
- Cliquez sur le bouton Actions du WebHook pour le désactiver.
- Cliquez sur Mettre à jour.
- Changez le statut de On à Off ou vice versa.
- Cliquez sur Mettre à jour.
Supprimer un WebHook
Pour supprimer un WebHook, vous devez effectuer les étapes suivantes :
- Cochez la case du WebHook à supprimer.
- Cliquez sur Actions groupées.
- Cliquez sur Supprimer.
- Ensuite, une fenêtre contextuelle s'affichera vous demandant de confirmer votre décision de supprimer le WebHook.
Le gestionnaire WebHooks se rechargera et le WebHook sélectionné sera supprimé.
Envoyer des données au format JSON
Pour envoyer les données de publication sous forme de chaîne JSON, vous devez suivre ces étapes :
- Accédez au gestionnaire de modules complémentaires et cliquez sur WebHooks .
- Cliquez sur le bouton Actions du WebHook pour le désactiver.
- Cliquez sur Mettre à jour.
- Modifiez le champ Json de On à Off ou vice versa.
- Cliquez sur Mettre à jour.
Utiliser WebHooks
Maintenant que vous savez ce que sont WebHooks et comment les utiliser dans iform4u, voyons un exemple.
Dans ce tutoriel nous allons envoyer des notifications depuis un de nos formulaires vers la page : Beeceptor. Cette page capture nos notifications et les imprime à l'écran.
Premières étapes :
- Allez sur https://beeceptor.com/
- Entrez un nom de point de terminaison et
- Appuyez sur le bouton Créer un point de terminaison
- Copiez l'URL du point de terminaison
Très bien! Sachez que vous disposez d'une URL qui servira à recevoir les notifications envoyées par iform4u.
Prochaines étapes :
- Aller sur iform4u
- Accédez au gestionnaire de modules complémentaires et installez WebHooks
- Maintenant, cliquez sur WebHooks .
- Cliquez sur le bouton Créer un Webhook.
- Remplissez le formulaire :
- Formulaire : sélectionnez « Liste de diffusion »
- URL : coller l'URL du point de terminaison
- Clé de poignée de main : pour cet exemple : my_handshake_key
- Statut : ON
- Cliquez sur Créer
Dernières étapes : testez vos notifications
- Accédez au gestionnaire de formulaires
- Cliquez sur le formulaire 'Mailing List'
- Cliquez sur le bouton Publier et Partager (l'icône de flèche verte)
- Cliquez sur le lien du formulaire de partage
- Cochez la case Sans et appuyez sur Go !
- Remplissez le formulaire de liste de diffusion et soumettez-le
Si votre soumission est reçue, un message de réussite apparaîtra.
Maintenant, allez sur Endpoint Url (et sans actualiser la page), vous verrez que la notification contient :
- Identifiant du formulaire
- Nom du formulaire
- IP de l'utilisateur
- Données de soumission
- Clé de poignée de main
Et c'est tout ! Vous avez envoyé votre première notification à un autre serveur. Félicitations!
Enregistrement des soumissions de formulaires dans une base de données externe
Maintenant que nous savons comment exporter des soumissions de formulaires en temps réel vers une application externe, nous allons voir comment stocker ces soumissions dans une base de données.
Si vous avez un site Web, vous pouvez effectuer les étapes suivantes et stocker les soumissions de formulaire de notre formulaire de démonstration dans votre propre base de données, il vous suffit de modifier l'URL du WebHook.
Sur votre propre site Web :
1.- Créer une base de données : ' test '. Vous pouvez le faire avec votre logiciel préféré, tel que phpMyAdmin ou également en utilisant la MySQL :
CREATE DATABASE 'test';
2.- Créez une table de base de données : ' abonnés ', avec 4 champs : identifiant, nom, email adresse ip_ . Vous pouvez exécuter la requête MySQL
CREATE TABLE `test`.`subscribers` (
`id` INT(11) NOT NULL AUTO_INCREMENT ,
`name` VARCHAR(255) NOT NULL ,
`email` VARCHAR(255) NOT NULL ,
`ip_address` VARCHAR(255) NOT NULL ,
PRIMARY KEY (`id`)) ENGINE = InnoDB;
3.- Configurez les informations dans votre base de données : 'test'. LesaveToDB.php
fichier permet de configurer les paramètres suivants :
define('DB_SERVER', "localhost");
define('DB_USER', "root");
define('DB_PASSWORD', "");
define('DB_DATABASE', "test");
define('DB_DRIVER', "mysql");
4.- Téléchargez le fichier @app/custom/saveToDB.php sur votre serveur.