- 21 Nov 2024
- 3 Minutes à lire
- SombreLumière
- PDF
Utilisation des notificateurs d’événements JavaScript
- Mis à jour le 21 Nov 2024
- 3 Minutes à lire
- SombreLumière
- PDF
Pour télécharger l’exemple de code complet, consultez notre site Code Share .
Lorsque l’expérience du signataire est intégrée dans un iFrame, le notificateur d’événements envoie des notifications à votre fenêtre parent lorsque des actions spécifiques sont déclenchées. À l’aide de ces notifications, vous pouvez interrompre le flux de travail OneSpan Sign typique à l’aide de votre propre logique personnalisée, puis reprendre vos activités normales par la suite. Cela est utile si vous souhaitez que quelque chose se produise une fois que certaines étapes de l’expérience du signataire ont été accomplies, telles que la redirection d’un signataire vers une autre page Web une fois qu’il a terminé de signer.
À l’écoute des événements OneSpan Sign
Pour créer un notificateur d’événements , votre application doit être à l’écoute des événements de message OneSpan Sign. Pour configurer cela, utilisez cette commande, en utilisant du JavaScript simple :
window.addEventListener('message', receiveMessage, false);
Pour plus d’informations sur l’autorisation de la communication inter-origines entre votre fenêtre parent et un iFrame, cliquez ici.
Réception de messages
Ensuite, définissez la fonction receiveMessage comme suit :
function receiveMessage(event) {
var origin = event.origin || event.originalEvent.origin;
var data = event.data;
console.log(data, origin);
switch (data) {
case 'ESL:MESSAGE:REGISTER':
event.source.postMessage('ESL:MESSAGE:ACTIVATE_EVENTS', origin);
break;
default:
event.source.postMessage(data, origin)
break;
}
}
Si vous ne configurez pas votre système pour écouter ESL :MESSAGE :REGISTER puis renvoyer ESL :MESSAGE :ACTIVATE_EVENTS, vous ne pourrez plus recevoir d’événements. Vous devez inclure les éléments suivants dans votre fonction receiveMessage.
case 'ESL:MESSAGE:REGISTER': event.source.postMessage('ESL:MESSAGE:ACTIVATE_EVENTS', origin); break; default: event.source.postMessage(data, origin) break;
Il s’agit du code minimal nécessaire à la configuration d’un notificateur d’événements, où le premier cas de commutation indique explicitement à OneSpan Sign que vous souhaitez vous inscrire à l’écoute d’événements.
Résultats
Une utilisation courante d’un notificateur d’événement peut consister à rediriger un signataire vers une autre page une fois qu’il a terminé de signer. Voici un exemple de la façon dont cela serait fait :
case 'ESL:MESSAGE:SUCCESS:SIGNER_COMPLETE ':
event.source.postMessage(data, origin);
window.location.href = "https://www.example.com"; //redirect page
break;
Interruption de l’activité OneSpan Sign
À l’aide d’un notificateur d’événements, certains événements peuvent être temporairement arrêtés. Voici un exemple de code qui vous montre comment procéder :
switch (data) {
...
case 'ESL:MESSAGE:STARTED:DOCUMENT_NAVIGATION':
// Do some customized tasks, then notify OneSpan Sign of the same event.
setTimeout(function(){
event.source.postMessage(data, origin);
}, 5000);
break;
...
}
Pour les événements qui peuvent être interrompus, OneSpan Sign ne reprendra pas son activité normale tant que votre conteneur parent n’aura pas renvoyé le même message défini par la ligne event.source.postMessage(data, origin).
Pour plus d’informations sur les événements qui peuvent être interrompus, reportez-vous à la Notification Event Types.
Types d’événements de notification
Le tableau suivant décrit les types d’événements de notification que votre notificateur d’événements peut écouter.
Nom de l’événement | Description | L’événement peut-il être temporairement interrompu ? |
---|---|---|
ESL :MESSAGE :DEMARRÉ :DOCUMENT_ACCEPT | Un signataire a commencé à accepter un consentement ou une divulgation. | Non |
ESL :MESSAGE :SUCCÈS :DOCUMENT_ACCEPT | Un signataire a accepté avec succès un consentement ou une divulgation. | Oui |
ESL :MESSAGE :ERREUR :DOCUMENT_ACCEPT | Un signataire n’a pas réussi à accepter un consentement ou une divulgation. | Non |
ESL :MESSAGE :DEMARRÉ :PACKAGE_OPT_OUT | Un signataire a commencé à se désinscrire d’une transaction. | Non |
ESL :MESSAGE :SUCCÈS :PACKAGE_OPT_OUT | Un signataire a réussi à se désinscrire d’une transaction. | Oui |
ESL :MESSAGE :ERREUR :PACKAGE_OPT_OUT | Un signataire a échoué dans sa tentative de se retirer d’une transaction. | Non |
ESL :MESSAGE :DEMARRÉ :PACKAGE_DECLINE | Un signataire a commencé à refuser une transaction. | Non |
ESL :MESSAGE :SUCCÈS :PACKAGE_DECLINE | Un signataire a refusé une transaction avec succès. | Oui |
ESL :MESSAGE :ERREUR :PACKAGE_DECLINE | Un signataire a échoué dans sa tentative de refuser une transaction. | Non |
ESL :MESSAGE :SUCCESS :DOCUMENT_VIEW :<ID du document> | Un signataire a consulté un document. | Non |
ESL :MESSAGE :DEMARRÉ :DOCUMENT_CONFIRM | Un signataire a commencé à confirmer un document. | Non |
ESL :MESSAGE :SUCCÈS :DOCUMENT_CONFIRM | Un signataire a confirmé avec succès un document. | Oui |
ESL :MESSAGE :ERREUR :DOCUMENT_CONFIRM | Un signataire n’a pas réussi à confirmer un document. | Non |
ESL :MESSAGE :DEMARRÉ :SIGNER_COMPLETE | Un signataire a commencé à finaliser une transaction. | Oui |
ESL :MESSAGE :SUCCÈS :SIGNER_COMPLETE | Un signataire a conclu une transaction avec succès. | Non |
ESL :MESSAGE :DEMARRÉ :SIGNER_COMPLETE_REVIEWED | Un signataire a commencé à examiner des documents. | Oui |
ESL :MESSAGE :SUCCÈS :SIGNER_COMPLETE_REVIEWED | Un signataire a terminé l’examen des documents. | Non |
ESL :MESSAGE :DEMARRÉ :DOCUMENT_NAVIGATION | L’utilisateur a commencé à naviguer vers un autre document. | Oui |
ESL :MESSAGE :SUCCÈS :DOCUMENT_NAVIGATION | L’utilisateur a réussi à accéder à un autre document. | Non |
Voici l’ordre attendu des événements pour une transaction typique avec un signataire externe, un document de consentement par défaut et un document à signer :
ESL :MESSAGE :ENREGISTRER
ESL :MESSAGE :SUCCÈS :DOCUMENT_NAVIGATION
ESL :MESSAGE :SUCCÈS :DOCUMENT_VIEW
ESL :MESSAGE :STARTED :ACCEPTER
ESL :MESSAGE :SUCCÈS :ACCEPTER
ESL :MESSAGE :DEMARRÉ :DOCUMENT_NAVIGATION
ESL :MESSAGE :SUCCÈS :DOCUMENT_NAVIGATION
ESL :MESSAGE :SUCCÈS :DOCUMENT_VIEW
ESL :MESSAGE :DEMARRÉ :DOCUMENT_CONFIRM
ESL :MESSAGE :SUCCÈS :DOCUMENT_CONFIRM
ESL :MESSAGE :DEMARRÉ :SIGNER_COMPLETE
ESL :MESSAGE :SUCCÈS :SIGNER_COMPLETE
ESL :MESSAGE :DEMARRÉ :SIGNER_COMPLETE_REVIEWED
ESL :MESSAGE :SUCCÈS :SIGNER_COMPLETE_REVIEWED