Dit artikel maakt het mogelijk om aangepaste functies toe te voegen aan de Rainbow applicaties van bedrijfsleden met behulp van een reeks acties die geconfigureerd kunnen worden vanuit een custo-manifest.json bestand. Aangepaste functies zijn beschikbaar voor bedrijven die geassocieerd zijn met Cloud PBX of Alcatel-Lucent Enterprise PBX (OmniPCX Enterprise of OXO Connect).
De beschikbare acties zijn:
- Acties die automatisch worden geactiveerd na gebeurtenissen:
- on-outgoing-pbx-call-actions: om een actie uit te voeren bij een uitgaande oproep.
- on-incoming-pbx-call-actions: om een actie uit te voeren bij een inkomende oproep
- on-answerpt-inkomende-pbx-call-acties: om een actie uit te voeren wanneer een inkomende oproep wordt beantwoord
- on-releasing-incoming-pbx-call-acties: om een actie uit te voeren wanneer een inkomende oproep wordt beëindigd
Bij inkomende oproepen kunnen acties een script, toepassing of webpagina starten met informatie over de inkomende oproep.
- Acties worden geactiveerd door het gebruik van een knop:
- on-incoming-pbx-call-button-actions: om een actie uit te voeren door op een knop te klikken die is toegevoegd aan het pop-upvenster voor inkomende oproepen
- on-call-log-list-actions: om een actie uit te voeren door op een knop te klikken die in elk item van de oproeplog wordt ingevoegd
- on-contact-list-actions: om een actie uit te voeren door op een knop te klikken in elk item van contacten
- on-contact-detail-actions: om een actie uit te voeren door te klikken op een knop in het gedetailleerde contactgebied
- on-communication-card-actions: om een actie uit te voeren door op een menu te klikken in de balk van de oproepmanager.
- on-bubble-actions: om een actie uit te voeren door te klikken op een knop in het bubbel menu.
- on-bubble-conference-actions: om een actie uit te voeren door te klikken op een knop in het menu conferentie.
Door op knoppen te klikken, kunnen acties pop-upvensters openen met de mogelijkheid om lid te worden van contacten of diensten via e-mail.
- Acties met automatische informatieweergave:
- on-incoming-pbx-call-display-actions: om informatie in te voegen in de pop-up van inkomende oproepen
- on-contact-card-display-acties: om informatie in te voegen in het gedetailleerde gedeelte van het contact
- Actie met weergave van toepassingen van derden:
- on-main-window-actions: om een toepassing van derden weer te geven in de Rainbow toepassing (alleen metpopout optie ingesteld op waar: zie: Extra velden)
Door op het speciale pictogram in het linkerpaneel te klikken, kan de actie een applicatie van derden in het rechterdeel van de Rainbow applicatie weergeven.
Deze acties worden geconfigureerd vanuit het bestand custo-manifest.json dat naar de Rainbow applicaties voor bedrijfsleden wordt gestuurd.
Het custo-manifest.json bestand kan zonder beperkingen naar desktop Rainbow applicaties en met beperkingen naar web Rainbow applicaties worden geïnstalleerd: zie: Belangrijkste velden.
Configuratie bestaat uit:
- Vanuit de beheerapplicatie van Rainbow een sjabloon exporteren van het custo-manifest.json bestand op de computer.
- Bewerken en voltooien van het custo-manifest.json bestand
- Importeren van het custo-manifest.json bestand in de beheer Rainbow toepassing
- Het custo-manifest.json implementeren in Rainbow applicaties voor bedrijfsleden
Wanneer u vanuit de beheerapplicatie van Rainbow implementeert, kan het bestand custo-manifest.json niet langer lokaal geconfigureerd worden vanuit de Rainbow applicatie van bedrijfsleden: export/import opties worden niet langer aangeboden.
Vereisten
- U moet een beheerdersaccount in het bedrijf hebben met een Business, Enterprise of Attendant licentie.
Overzicht van het custo-manifest bestand
Het custo-manifest bestand bestaat uit twee delen:
- Het eerste deel somt alle beschikbare acties op, en geeft voor elke actie een sjabloon met de belangrijkste parameters om in te vullen.
Voorbeeld: - Het tweede deel geeft een hulpgids die gelezen moet worden voor de configuratie.
Een actie wordt gedefinieerd door een set parameters die in de volgende secties worden beschreven.
De volgende acties ondersteunen maximaal drie uitbreidingen:
- on-main-window-acties
- op-contact-detail-acties
- on-communication-card-acties
- on-bubble-acties
- on-bubble-conferentie-acties
Voorbeeld van on-main-window-acties met twee uitbreidingen:
Belangrijkste velden
- "name": is een tekst die wordt gebruikt om de actie te identificeren of het label van de knop voor acties die een knop gebruiken
- Voor acties die een knop gebruiken:
- "icon" (pictogram): is het toegangspad naar het pictogram van de knop
- "tooltip": is het toegangspad naar de tooltip die wordt weergegeven wanneer de muis over de knop wordt bewogen
- "commando": definieert de uit te voeren actie
-
"url": is het pad of de URL naar de lokale toepassing, webpagina of REST API
Opmerking: De backslash moet dubbel zijn in het pad naar de lokale toepassing (bijv. C:\MicroCRM.exe). - "params": is een string met variabelen ${xx} die worden vervangen door hun waarde bij het uitvoeren van de actie
-
"commandType": specificeert het actietype:
- Niet gedefinieerd: start een lokale applicatie of een webpagina (als de url begint met 'http' of 'https')
- "rest": voert een REST API-oproep uit
- "file": haalt de inhoud van het bestand op om op te halen (voornamelijk voor debugger-tuning)
Opmerking: De opdrachttypes "rest" en "bestand" worden niet ondersteund wanneer ze worden toegepast op Web Rainbow toepassingen. Er worden pop-ups geopend die aangeven dat acties genegeerd zullen worden. -
"responseType": definieert het type inhoud dat door de actie wordt geretourneerd: "markdown", "json" of "adaptiveCard".
Indien ingesteld op "json", dan:
- "displayJsonField": definieert het veld waarvan de waarde de weer te geven inhoud is
- "firstNameJsonField": definieert het veld waarvan de waarde de voornaam van de beller moet vervangen
- "lastNameJsonField": definieert het veld waarvan de waarde de achternaam van de beller moet vervangen
- "companyJsonField": definieert het veld dat als waarde de bedrijfsnaam van de beller moet vervangen
Indien ingesteld op "adaptiveCard", dan:
- "adaptiveCardTemplateJsonField": definieert de sjabloon van de weer te geven adaptieve kaart
- "adaptiveCardContentJsonField": definieert de inhoud van de weer te geven adaptieve kaart
Opmerking: Rainbow ondersteunt vier verschillende opties voor de sjabloon en inhoud van de adaptieve kaart:
- Sjabloon en inhoud in een bestand: voornamelijk gebruikt om te testen. Het bestand kan lokaal zijn of teruggehaald worden via een URL
- Sjabloon in manifest en inhoud in een bestand: ook gebruikt om te testen. Het bestand kan ook het resultaat zijn van een CGI-script
- Sjabloon in manifest en Inhoud resultaat van Rest-oproep: alleen de gegevens worden op afstand teruggehaald via een Rest API
- Sjabloon en inhoud resultaat van Rest-oproep: de gegevens en lay-out worden op afstand teruggehaald via een Rest API.
Belangrijkste velden:
Type inhoud in "json":
Extra velden
- "AnswerOnClick": indien ingesteld op waar, wordt de actie uitgevoerd en wordt tegelijkertijd de inkomende oproep beantwoord (alleen voor actie on-incoming-pbx-call-button-acties )
- "filter": indien ingesteld op "NoShortNumber", wordt de gebeurtenis niet geactiveerd als het nummer van de beller een kort nummer is
-
"RaiseChangeCall": hiermee kan het gedrag bij het ontvangen van een doorgeschakelde oproep worden geconfigureerd:
false: alleen directe oproepen naar de gebruiker zullen de gebeurtenis triggeren
true: de gebeurtenis wordt geactiveerd voor directe oproepen naar de gebruiker en ook voor oproepen die aan deze gebruiker zijn doorgegeven
alleen: alleen overgedragen oproepen naar de gebruiker triggeren de gebeurtenis
- "Popup": wanneer ingesteld op waar, wordt een toepassing van een derde partij weergegeven in het rechterdeel van de Rainbow toepassing (alleen voor actie op-hoofdvenster-acties )
Variabelen ${xx}
Het actiesjabloon kan variabelen ${xx} bevatten die geconfigureerd zijn in de "url", "params" en "bodyParameters" (voor REST API) parameters. Ze worden vervangen door hun waarde wanneer de actie wordt uitgevoerd.
De variabelen ${xx} kunnen zijn:
Een reguliere uitdrukking (d.w.z. regex) kan worden toegepast op een variabele ${xx}.
De syntaxis is: ${rainbowVariable.regex(regexPatternValue, replacementValue)}
De regex wordt toegepast op de variabele ${xx} voordat deze naar de externe toepassing wordt verzonden als deze deel uitmaakt van het verzoek of voordat deze wordt doorgegeven aan de webtoepassing als deze deel uitmaakt van een antwoord.
Voorbeelden:
Bij het vervangen van ${localUser.phonePbx} door de waarde ervan, wordt er ook een regex op toegepast.
"params": "pbx=${localuser.phonepbx.regex(^\\+33\|^\\+1, 0)}="0)}"
In dit voorbeeld wordt "+333909090" veranderd in "03909090".
"params": "byEmail=${localUser.email.regex(alcatel.com, al-enterprise.com)}".
In dit voorbeeld wordt "someone@alcatel.com" gewijzigd in "someone@al-enterprise.com".
Een sjabloon van custo-manifest bestand exporteren op computer
Deze handeling kan alleen worden uitgevoerd vanaf een Rainbow toepassing op het bureaublad.
- Vanuit de beheerapplicatie van Rainbow klikt u op de avatar in het linkerpaneel, dan menu Instellingen.
- Selecteer Telefonie in het menu aan de linkerkant.
Het venster Instellingen - Configuratie telefonie wordt geopend. - Vouw het venster uit tot aan de sectie Aanpassing.
- Klik op Bestand exporteren en gebruik de browser om het bestand custo-manifest op de computer te exporteren.
- Klik op Sluiten om het venster met telefonie-instellingen af te sluiten.
Het custo-manifest bestand configureren op de computer
- Open het custo-manifest bestand met een teksteditor.
-
Configureer de parameters van de te gebruiken acties.
Waarschuwing: verwijder niet de omgeving tussen de dubbele aanhalingstekens voor de ongebruikte parameters ("name": " ", "url": " ", "params": " "), anders wordt er geen rekening gehouden met het geïmporteerde bestand. - Verwijder de parameters van alle ongebruikte acties.
- Sla het custo-manifest bestand op.
- Als het custo-manifest bestand verwijst naar externe bronnen (afbeeldingen en/of tekstbestanden), maak dan een *.zip bestand aan met zowel het custo-manifest bestand als de externe bronnen.
Voorbeeld:
In dit voorbeeld moet het *.ZIP bestand de bestanden custo-manifest.json, basketball.png en FileDisplay.txt bevatten.
Het bestand custo-manifest importeren in een Rainbow toepassing voor de administratie
Eén of meerdere custo-manifest bestanden kunnen in de Rainbow administratietoepassing voor het bedrijf geïmporteerd worden. Na het importeren is het custo-manifest bestand toegankelijk voor alle beheerders van het bedrijf om te implementeren of bij te werken.
Bestanden kunnen geïmporteerd worden vanuit een desktop- of web Rainbow applicatie.
- Vanuit de beheer Rainbow applicatie klikt u op Uw bedrijf beheren
in het linkerpaneel.
- Klik in het paneel MIJN BEDRIJF op de naam van het bedrijf.
- Klik in het linkerpaneel op Informatie.
- In het rechterdeel van het venster klikt u op de tab Aanpassing en vervolgens op de tab Aangepaste manifestbestanden.
- Klik op Toevoegen en gebruik de browser om ofwel alleen het custo-manifest bestand (*.json), ofwel het custo-manifest bestand en zijn externe bronnen (*.ZIP) te selecteren en in de Rainbow toepassing te importeren.
- Klik op Toevoegen om het importeren te valideren.
Het custo-manifest bestand wordt in de lijst weergegeven en kan door elke bedrijfsbeheerder geëxporteerd worden om bijgewerkt te worden: selecteer het doelbestand, klik open selecteer
Download.
Het custo-manifest bestand in Rainbow applicaties voor bedrijfsleden implementeren
Het custo-manifest bestand kan één voor één of in één stap naar de Rainbow applicaties voor bedrijfsleden worden geïnstalleerd met behulp van mass provisioning. Na de implementatie zal er bij het opnieuw opstarten rekening worden gehouden met het custo-manifest op de Rainbow applicaties: export/import opties worden niet langer aangeboden op de Rainbow applicatie.
Mass provisioning kan worden uitgevoerd met behulp van een van de volgende:
- Een CSV bestand: De bewerking bestaat uit het implementeren van het custo-manifestbestand voor één bedrijfslid (zie onderstaande procedure), een gevuld csv-bestand met gegevens van bedrijfsleden exporteren, in het CSV-bestand de kolom selectedManifestName voor de beoogde bedrijfsleden invullen en het CSV-bestand importeren: zie: Bedrijfsleden beheren met Bulk Provisionning
- De LDAP-directory van het bedrijf: De bewerking bestaat uit het synchroniseren van de bedrijvenmap in Rainbow met de LDAP-directory van het bedrijf na het wijzigen van de vooraf gedefinieerde attribuuttoewijzing met gebruikersattribuut selectedAppCustomisationTemplateName ingesteld op const(<naam van custo-manifest bestand>): zie: Provisioning van bedrijfsleden via een Active Directory (LDAP Connector)
Om het custo-manifest bestand één voor één in de Rainbow applicaties te implementeren:
- Vanuit de Rainbow beheerapplicatie klikt u op Uw bedrijf beheren
in het linkerpaneel.
- Klik in het paneel MIJN BEDRIJF op de naam van het bedrijf.
- Klik in het linkerpaneel op Leden.
- Klik op het beoogde bedrijfslid en selecteer het tabblad Informatie.
- Selecteer in het veld Aangepast manifest het doelbestand uit de lijst met beschikbare bestanden.
- Klik op Toepassen om te valideren en het instellingenvenster van het bedrijfslid af te sluiten.
- Vanuit de Rainbow applicatie van het bedrijfslid, klikt u op de avatar in het linkerpaneel, dan menu Instellingen.
- Selecteer Telefonie in het menu aan de linkerkant.
Het venster Instellingen - Configuratie telefonie wordt geopend. - Vouw het venster uit tot aan de sectie Aanpassingen.
- Klik op Bestand importeren en gebruik de browser om ofwel alleen het custo-manifest bestand (*.json), ofwel het custo-manifest bestand en zijn externe bronnen (*.ZIP) te selecteren en in de Rainbow toepassing te importeren.
- Klik op Doorgaan om de Rainbow toepassing opnieuw te starten en rekening te houden met het nieuwe aanpassingsbestand.
Het custo-manifest bestand verwijderen uit Rainbow toepassingen voor bedrijfsleden
- Vanuit de beheer Rainbow applicatie klikt u op Uw bedrijf beheren
in het linkerpaneel.
- Klik in het paneel MIJN BEDRIJF op de naam van het bedrijf.
- Klik in het linkerpaneel op Informatie.
- Klik in het rechterdeel van het venster op de tab Aanpassing en vervolgens op de tab Aangepaste manifestbestanden.
- Selecteer het doelbestand custo-manifest, klik op
en selecteer
Aangepast manifest verwijderen.
Het custo-manifest bestand wordt automatisch verwijderd uit de Rainbow applicaties voor bedrijfsleden.
Voorbeelden van configuratie
Een toepassing of script met parameters uitvoeren
Voorbeeld 1:
De actie on-incoming-pbx-call-actions voert een toepassing uit (bijv. MicroCrm) met een parameter uit 'params' (geen terugkeer).
"version": "2", "extension-points": { "on-incoming-pbx-call-actions": [ "naam": "Exec CRM", "opdracht": { "url": "C:¦MijnAppCustoAppMicroCRM.exe", "params": "-nummer ${caller.phoneNumber}" } },Voorbeeld 2:
De actie on-incoming-pbx-call-actions voert een script (*.bat) uit met parameters uit 'params' (geen return).
"version": "2", "extension-points": { "on-incoming-pbx-call-actions": [ "naam": "BatScript", "commando": { "url": "C:\MyApp.bat", "params": "IN-COMING canNr:${localUser.canonicalNumber} userIntNr:$"{localUser.internalNumber} oproeper[Nr:${calle.phoneNumber} FN:${caller.firstName} LN:${caller.lastName} .... CorData:[${call.correlatorData Hex:${call.hexCorrelatorData]" } }.
} ],Een webpagina met parameters openen
Voorbeeld 1:
De actie on-incoming-pbx-call-actions opent een webpagina met parameters uit 'params' (geen return).
"version": "2", "extension-points": { "on-incoming-pbx-call-actions": [ "naam": "Gele pagina's", "opdracht": { "url":"https://www.pagesjaunes.fr/annuaireinverse/recherche", "params": "quoiqui=${caller.phoneNumber}&proximite=0" } },Voorbeeld 2:
De actie on-incoming-pbx-call-actions opent een webpagina met parameters rechtstreeks in URL (geen terugkeer).
"version": "2", "extension-points": { "on-incoming-pbx-call-actions": [ "naam": "Contact popup", "commando": { "url":"http://localhost:3000/contactShow?phone=${caller.phoneNumber}", "params": " " } } ],Een REST API-oproep met parameters uitvoeren
Voorbeeld 1:
Wanneer inkomende oproepen worden vrijgegeven, creëert de actie on-releasing-incoming-pbx-call-actions een logboek voor END-oproepen in REST met behulp van de GET-methode en parameters uit "params" (geen terugkeer).
"version": "2", "extension-points": { "on-releasing-incoming-pbx-call-actions": [ "naam": "GetRestApi", "commando": {"commandType": "rest", "method": "GET", "url":"http://localhost:3000/IncidentManager/CreateCallLog", "params": "byEmail=${localUser.email}&CustomerContact=${caller.phonenumber}" } },Voorbeeld 2:
Wanneer inkomende oproepen worden vrijgegeven, creëert de actie on-releasing-incoming-pbx-call-actions een logboek voor END-oproepen in REST met behulp van POST-methode en parameters uit "bodyParameters" (geen terugkeer).
"version": "2", "extension-points": { "on-releasing-incoming-pbx-call-actions": [ "naam": "PostRestApi", "commando": {"commandType": "rest", "method": "POST", "url":"http://localhost:3000/IncidentManager/EndCallLog", "params": " }, "bodyParameters": {"caller": "${contact.phoneNumber}", "gebruiker": "${localUser.email}", } ],