Cet article a été traduit automatiquement. Consulter la version de référence en anglais.
Cet article permet d'ajouter des fonctionnalités personnalisées aux applications Rainbow des membres de l'entreprise à l'aide d'un ensemble d'actions configurables à partir d'un fichier custo-manifest.json. Les fonctionnalités personnalisées sont disponibles pour les entreprises associées à un PBX Cloud ou à un PBX Alcatel-Lucent Enterprise (OmniPCX Enterprise ou OXO Connect).
Les actions disponibles sont les suivantes :
- Actions déclenchées automatiquement à la suite d'événements :
- on-outgoing-pbx-call-actions: pour exécuter une action lorsqu'un appel sortant se produit.
- on-incoming-pbx-call-actions: pour exécuter une action lors d'un appel entrant
- on-answering-incoming-pbx-call-actions: pour exécuter une action lorsqu'un appel entrant est pris
- on-releasing-incoming-pbx-call-actions: pour exécuter une action lorsqu'un appel entrant est terminé
Lors d'appels entrants, les actions peuvent lancer un script, une application ou une page web contenant des informations sur l'appel entrant.
- Actions déclenchées par l'utilisation d'un bouton :
- on-incoming-pbx-call-button-actions: pour exécuter une action en cliquant sur un bouton ajouté dans la fenêtre contextuelle de l'appel entrant.
- on-call-log-list-actions: pour exécuter une action en cliquant sur un bouton inséré dans chaque élément du journal des appels.
- on-contact-list-actions: pour exécuter une action en cliquant sur un bouton inséré dans chaque élément des contacts
- on-contact-detail-actions: pour exécuter une action en cliquant sur un bouton inséré dans la zone détaillée du contact
- on-communication-card-actions: pour exécuter une action en cliquant sur un menu inséré dans la barre du gestionnaire d'appels.
- on-bubble-actions: pour exécuter une action en cliquant sur un bouton inséré dans la propriété du menu bulle.
- on-bubble-conference-actions: permet d'exécuter une action en cliquant sur un bouton inséré dans le menu conférence appel.
En cliquant sur les boutons, les actions peuvent ouvrir des fenêtres pop-up avec la possibilité de rejoindre des contacts ou des services par e-mail.
- Actions avec affichage automatique des informations :
- on-incoming-pbx-call-display-actions: pour insérer des informations dans la fenêtre contextuelle de l'appel entrant.
- on-contact-card-display-actions: pour insérer des informations dans la zone détaillée du contact.
- Action avec l'affichage d'une application tierce :
- on-main-window-actions : pour afficher une application tierce dans l'application Rainbow (uniquement si l'optionpopout est réglée sur true: voir : Champs supplémentaires)
En cliquant sur l'icône dédiée dans le panneau de gauche, l'action peut afficher une application tierce dans la partie droite de l'application Rainbow.
Ces actions sont configurées à partir du fichier custo-manifest.json déployé dans les applications Rainbow pour les membres de l'entreprise.
Le fichier custo-manifest.json peut être déployé dans les applications Rainbow de bureau sans restrictions et dans les applications Rainbow web avec restrictions : voir : Champs principaux.
La configuration consiste à :
- A partir de l'application Rainbow d'administration, exporter un modèle du fichier custo-manifest.json sur ordinateur.
- Modifier et compléter le fichier custo-manifest.json
- Importer le fichier custo-manifest .json sur l'application d'administration Rainbow
- Déploiement du custo-manifest.json dans les applications Rainbow pour les membres de l'entreprise
Lors du déploiement depuis l'application Rainbow d'administration, le fichier custo-manifest.json ne peut plus être configuré localement depuis l'application Rainbow des membres de l'entreprise : les options d'export/import ne sont plus proposées.
Pré-requis
- Vous devez disposer d'un compte administrateur dans l'entreprise avec une licence Business, Enterprise ou Attendant.
Présentation du fichier custo-manifest
Le fichier custo-manifest se compose de deux parties :
- La première partie liste toutes les actions disponibles, et fournit pour chaque action un modèle avec les principaux paramètres à remplir.
La première partie énumère toutes les actions disponibles et fournit pour chaque action un modèle avec les principaux paramètres à remplir : - La seconde partie fournit un guide d'aide à lire pour la configuration.
Une action est définie par un ensemble de paramètres décrits dans les sections suivantes.
Les actions suivantes prennent en charge jusqu'à trois extensions :
- on-main-window-actions
- actions "on-contact-detail
- actions on-communication-card
- actions sur les bulles
- Actions sur les bulles et les conférences
Exemple d'actions on-main-window-actions avec deux extensions :
Champs principaux
- "name": est un texte utilisé pour identifier l'action ou l'étiquette du bouton pour les actions utilisant un bouton.
- Pour les actions utilisant un bouton :
- "icône": chemin d'accès à l'icône du bouton
- "tooltip": chemin d'accès à l'info-bulle affichée lorsque la souris passe sur le bouton.
- "command": définit l'action à exécuter
-
"url": chemin d'accès ou URL pour accéder à l'application locale, à la page web ou à l'API REST.
Note: La barre oblique inverse doit être double dans le chemin d'accès à l'application locale (par exemple C:\NMicroCRM\NMicroCRM.exe). - "params": est une chaîne contenant les variables ${xx} qui seront remplacées par leur valeur lors de l'exécution de l'action
-
"commandType": spécifie le type d'action :
- Non défini: démarre une application locale ou une page web (si l'url commence par 'http' ou 'https').
- "rest": exécute un appel à l'API REST
- "file": récupère le contenu du fichier à récupérer (principalement pour le réglage du débogueur).
Remarque: les types de commande "actions avec rest" et "file" ne sont pas pris en charge lorsqu'ils sont appliqués à des applications Rainbow Web. Des fenêtres contextuelles s'ouvrent pour indiquer que les actions seront ignorées. -
"responseType: définit le type de contenu renvoyé par l'action : "markdown", "json" ou "adaptiveCard".
S'il est défini sur "json", alors :
- "displayJsonField": définit le champ dont la valeur est le contenu à afficher
- "firstNameJsonField": définit le champ dont la valeur doit se substituer au prénom de l'appelant
- "lastNameJsonField": définit le champ dont la valeur doit être substituée au nom de famille de l'appelant
- "companyJsonField" : définit le champ que la valeur doit remplacer par le nom de l'entreprise de l'appelant.
S'il est défini sur "adaptiveCard", alors :
- "adaptiveCardTemplateJsonField": définit le modèle de la carte adaptative à afficher.
- "adaptiveCardContentJsonField": définit le contenu de la carte adaptative à afficher.
Remarque: Rainbow prend en charge quatre options différentes pour le modèle et le contenu de la carte adaptative :
- Modèle et contenu dans un fichier: principalement utilisé pour les tests. Le fichier peut être local ou repris via une URL.
- Modèle dans le manifeste et contenu dans un fichier: également utilisé pour les tests. Le fichier peut également être le résultat d'un script CGI.
- Modèle dans le manifeste et contenu résultant d'un appel Rest: seules les données sont reprises à distance via une API Rest.
- Template and Content result of Rest call: les données et la mise en page sont reprises à distance via une API Rest.
Principaux champs :
Type de contenu en "json":
Champs supplémentaires
- AnswerOnClick": si la valeur est " true", l'action est exécutée et l'appel entrant est répondu en même temps (uniquement pour les actions "on-incoming-pbx-call-button-actions" ).
- "Filtrer": si la valeur est "NoShortNumber", l'action ne sera pas déclenchée si le numéro de l'appelant est un numéro court.
-
"RaiseChangeCall": permet de configurer le comportement lors de la réception d'un appel transféré :
false: seuls les appels directs à l'utilisateur déclencheront l'événement.
true: l'événement est déclenché pour les appels directs à l'utilisateur et également pour les appels qui ont été transférés à cet utilisateur
only: seuls les appels transférés à l'utilisateur déclenchent l'événement
- "Popup": lorsque la valeur est fixée à true, une application tierce s'affiche dans la partie droite de l'application Rainbow (uniquement pour les actions on-main-window-actions ).
Variables ${xx}
Le modèle d'action peut inclure des variables ${xx} configurées dans les paramètres "url", "params" et "bodyParameters" (pour l'API REST). Elles sont remplacées par leur valeur lorsque l'action est exécutée.
Les variables ${xx} peuvent être
Une expression régulière (c'est-à-dire une regex) peut être appliquée à une variable ${xx}.
La syntaxe est la suivante : ${rainbowVariable.regex(regexPatternValue, replacementValue)}
La regex sera appliquée à la variable ${xx} avant de l'envoyer à l'application externe si elle fait partie de la demande ou avant de la transmettre à l'application Web si elle fait partie d'une réponse.
Exemples :
Lorsqu'on remplace ${localUser.phonePbx} par sa valeur, on applique également une regex sur celle-ci.
"params" : "pbx=${localuser.phonepbx.regex(^\\+33\|^\\+1, 0)}="0)}"
Dans cet exemple, "+333909090" sera remplacé par "03909090".
"params" : "byEmail=${localUser.email.regex(alcatel.com, al-enterprise.com)}"
Dans cet exemple, "someone@alcatel.com" sera remplacé par "someone@al-enterprise.com".
Exportation d'un modèle de fichier custo-manifest sur ordinateur
Cette opération ne peut être effectuée qu'à partir d'une application Rainbow de bureau.
- A partir de l'application d'administration Rainbow, cliquez sur l'avatar dans le panneau de gauche, puis sur le menu Settings.
- Dans le menu de gauche, sélectionnez Téléphonie.
La fenêtre Paramètres - Configuration de la téléphonie s'ouvre. - Développez la fenêtre jusqu'à la section Personnalisation.
- Cliquez sur Exporter le fichier et utilisez le navigateur pour exporter le fichier custo-manifest sur l'ordinateur.
- Cliquez sur Fermer pour quitter la fenêtre des paramètres de téléphonie.
Configuration du fichier custo-manifest sur l'ordinateur
- Ouvrez le fichier custo-manifest à l'aide d'un éditeur de texte.
-
Configurez les paramètres des actions à utiliser.
Attention: ne supprimez pas l'espace entre les guillemets pour les paramètres non utilisés ("name": " ", "url": "", "params": ""), sinon le fichier importé ne sera pas pris en compte. - Supprimez les paramètres de toutes les actions inutilisées.
- Sauvegardez le fichier custo-manifest.
- Si le fichier custo-manifest fait référence à des sources externes (images et/ou fichiers texte), créez un fichier *.zip contenant à la fois le fichier custo-manifest et les sources externes.
Exemple :
Dans cet exemple, le fichier *.ZIP doit contenir les fichiers custo-manifest.json, basketball.png et FileDisplay.txt.
Importation du fichier custo-manifest sur l'application d'administration Rainbow
Un ou plusieurs fichiers custo-manifest peuvent être importés dans l'application d'administration Rainbow pour l'entreprise. Après l'importation, le fichier custo-manifest est accessible à tous les administrateurs de l'entreprise pour déploiement ou mise à jour.
L'importation de fichiers peut être effectuée à partir d'une application Rainbow de bureau ou Web.
- Dans l'application Rainbow d'administration, cliquez sur Manage your company
dans le panneau de gauche.
- Dans le panneau MY COMPANY, cliquez sur le nom de la société.
- Dans le panneau de gauche, cliquez sur Informations.
- Dans la partie droite de la fenêtre, cliquez sur l'onglet Personnalisation, puis sur l'onglet Fichiers de manifeste personnalisés.
- Cliquez sur Ajouter et utilisez le navigateur pour sélectionner et importer dans l'application Rainbow soit le fichier custo-manifest uniquement (*.json), soit le fichier custo-manifest et ses sources externes (*.ZIP).
- Cliquez sur Ajouter pour valider l'importation.
Le fichier custo-manifest s'affiche dans la liste et peut être exporté par tout administrateur de l'entreprise pour mise à jour : sélectionnez le fichier cible, cliquez sur, et sélectionnez
Télécharger.
Déployer le fichier custo-manifest pour les applications Rainbow destinées aux membres de l'entreprise
Le fichier custo-manifest peut être déployé dans les applications Rainbow pour les membres de l'entreprise, un par un ou en une seule étape à l'aide du provisionnement de masse. Après le déploiement, le custo-manifest sera pris en compte sur les applications Rainbow au redémarrage : les options d'exportation/importation ne sont plus proposées sur l'application Rainbow.
Le provisionnement de masse peut être effectué à l'aide de l'un des éléments suivants :
- Un fichier CSV : L'opération consiste à déployer le fichier custo-manifest pour un membre de la société (voir procédure ci-dessous), à exporter un fichier csv renseigné avec les données des membres de la société, à compléter dans le fichier CSV la colonne selectedManifestName pour les membres de la société cible, et à importer le fichier CSV : voir : Gérer les membres d'une entreprise à l'aide du provisionnement en masse
- L'annuaire LDAP de l'entreprise : L'opération consiste à synchroniser l'annuaire de l'entreprise dans Rainbow avec l'annuaire LDAP de l'entreprise après avoir modifié le mappage d'attributs prédéfini avec l'attribut utilisateur selectedAppCustomisationTemplateName fixé à const(<nom du fichier custo-manifest>) : voir : Approvisionnement des membres d'une entreprise via un annuaire Active Directory (connecteur LDAP)
Pour déployer le fichier custo-manifest dans les fichiers Rainbow un par un :
- Depuis l'application d'administration Rainbow, cliquez sur Gérer votre entreprise
dans le panneau de gauche.
- Dans le panneau MY COMPANY, cliquez sur le nom de la société.
- Dans le panneau de gauche, cliquez sur Membres.
- Cliquez sur le membre de la société cible et sélectionnez l'onglet Information.
- Dans le champ Manifeste personnalisé, sélectionnez le fichier cible parmi la liste des fichiers disponibles.
- Cliquez sur Appliquer pour valider et quitter la fenêtre de paramétrage des membres de la société.
- Depuis l'application Rainbow du membre de la société, cliquez sur l'avatar dans le panneau de gauche, puis sur le menu Settings.
- Dans le menu de gauche, sélectionnez Téléphonie.
La fenêtre Paramètres - Configuration de la téléphonie s'ouvre. - Développez la fenêtre jusqu'à la section Personnalisation.
- Cliquez sur Import file et utilisez le navigateur pour sélectionner et importer dans l'application Rainbow soit le fichier custo-manifest uniquement (*.json), soit le fichier custo-manifest et ses sources externes (*.ZIP).
- Cliquez sur Continuer pour redémarrer l'application Rainbow et prendre en compte le nouveau fichier de personnalisation.
Suppression du fichier custo-manifest des applications Rainbow pour les membres de l'entreprise
- Depuis l'application d'administration Rainbow, cliquez sur Gérer votre entreprise
dans le panneau de gauche.
- Dans le panneau MA SOCIETE, cliquez sur le nom de la société.
- Dans le panneau de gauche, cliquez sur Informations.
- Dans la partie droite de la fenêtre, cliquez sur l'onglet Personnalisation, puis sur l'onglet Fichiers de manifeste personnalisés.
- Sélectionnez le fichier custo-manifest cible, cliquez sur
, puis sélectionnez
Supprimer le manifeste personnalisé.
Le fichier custo-manifest est automatiquement supprimé des applications Rainbow pour les membres de l'entreprise.
Exemples de configuration
Exécutez une application ou un script avec des paramètres
Exemple 1 :
L'action on-incoming-pbx-call-actions exécute une application (par exemple MicroCrm) avec un paramètre de 'params' (sans retour).
"version" : "2", "extension-points" : {"on-incoming-pbx-call-actions" : [ { "name" : "Exec CRM", "command" : { "url" : "C:\NMyApp\NCustoApp\NMicroCRM.exe", "params" : "-number ${caller.phoneNumber}" } } ],Exemple 2 :
L'action on-incoming-pbx-call-actions exécute un script (*.bat) avec les paramètres de 'params' (sans retour).
"version" : "2", "extension-points" : {"on-incoming-pbx-call-actions" : [ { "name" : "BatScript", "command" : { "url" : "C:\NMyApp\NMyApp.bat", "params" : "IN-COMING canNr:${localUser.canonicalNumber} userIntNr:$"{localUser.internalNumber} caller[Nr:${calle.phoneNumber} FN:${caller.firstName} LN:${caller.lastName} .... CorData :[${call.correlatorData Hex:${call.hexCorrelatorData]" } }.
} ],Ouvrez une page web avec des paramètres
Exemple 1 :
L'action on-incoming-pbx-call-actions ouvre une page web avec les paramètres de 'params' (sans retour).
"version" : "2", "extension-points" : {"on-incoming-pbx-call-actions" : [ { "name" : "Pages jaunes", "command" : { "url" :"https://www.pagesjaunes.fr/annuaireinverse/recherche", "params" : "quoiqui=${caller.phoneNumber}&proximite=0" } } ],Exemple 2 :
L'action on-incoming-pbx-call-actions ouvre une page web avec des paramètres directement dans l'url (sans retour).
"version" : "2", "extension-points" : {"on-incoming-pbx-call-actions" : [ { "name" : "Contact popup", "command" : { "url" :"http://localhost:3000/contactShow?phone=${caller.phoneNumber}", "params" : " " } } ],Exécuter un appel API REST avec des paramètres
Exemple 1 :
Lorsqu'un appel entrant est publié, l'action on-releasing-incoming-pbx-call-actions crée un journal d'appel END en REST en utilisant la méthode GET et les paramètres de "params" (sans retour).
"version" : "2", "extension-points" : {"on-releasing-incoming-pbx-call-actions" : [ { "name" : "GetRestApi", "command" : { "commandType" : "rest", "method" : "GET", "url" :"http://localhost:3000/IncidentManager/CreateCallLog", "params" : "byEmail=${localUser.email}&CustomerContact=${caller.phonenumber}" } } ],Exemple 2 :
Lorsqu'un appel entrant est libéré, l'action on-releasing-incoming-pbx-call-actions crée un journal des appels END en REST en utilisant la méthode POST et les paramètres de "bodyParameters" (sans retour).
"version" : "2", "extension-points" : {"on-releasing-incoming-pbx-call-actions" : [ { "name" : "PostRestApi", "command" : { "commandType" : "rest", "method" : "POST", "url" :"http://localhost:3000/IncidentManager/EndCallLog", "params" : " " }, "bodyParameters" : { "caller" : "${contact.phoneNumber}", "user" : "${localUser.email}", } ],