Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Sv translation
languageen

This API works in tandem with an IVR object in the jtel system, which can be used to search for records in SalesForce when calls are received.

The results of the search performed are available as variables, and can be used to influence the routing in the jtel system, for example to route to a particular agent, or to a particular ACD group.

To make use of this API, a REST endpoint must be provided in SalesForce for the jtel System to access. The following pages describe an example implementation.

Request

GET

Parameters

The following parameters are provided in the REST request:

Parameter NameFrom jtel ReleaseDescription
CallerID
The number of the caller in E.164 (fully qualified without +) format.
ServiceNumber
The service number called (jtel field ServiceNumbers.Name).
ServiceName
The service name called (jtel field ServiceNumbers.Name2).
Function

Status
subtletrue
colourBlue
title3.25 / 2021-07-02 upwards

The function to execute. This parameter can be used to differentiate the required action and could be used for many business cases. For example, to search for a ticket. Or event to update SalesForce and create an object.
UserData

Status
subtletrue
colourBlue
title3.25 / 2021-07-02 upwards

A user definable parameter which can contain any information.
UserData2

Status
subtletrue
colourBlue
title3.25 / 2021-07-02 upwards

A user definable parameter which can contain any information.
UserData3

Status
subtletrue
colourBlue
title3.25 / 2021-07-02 upwards

A user definable parameter which can contain any information.

http Status Codes

The following status codes should be used:

Status Code
From jtel Release
Meaning

200 – OK


One record was found and returned.
300 – Multiple Choices

Status
subtletrue
colourYellow
title3.29 / 2022-08-08 and EARLIER

Multiple records were found. (No records should be returned in this case).

300 – Multiple Choices

Status
subtletrue
colourBlue
title3.30 / 2022-08-08 and later

Multiple records were found. The Apex class can either:

  • return no records 
  • return one of the found records
    In this case, if the record is to be used for a screen-pop (by populating the UserData field) some information should be provided to the agent that more than one record in fact exist, for example in the additional information field.
  • return all of the found records in an array.
    In the last case, the logic in the routing application will be correspondingly more difficult, but the routing application will be given access to all returned records in variables with additional indexing. For example $SalesForce.0.ID ... $SalesForce.1.ID and so on.
404 – Not found
No record was found.

Return Structure

The return structure must be JSON, but otherwise any fields and any content can be returned. The jtel System will parse the data into variables for the jtel IVR GUI, of the form $SalesForce.FieldName

If structures are nested, then the variable will be named accordingly: $SalesForce.Entity.FieldName

Examining the call log will show you the exact field names returned.

Sv translation
languagede

Diese API arbeitet mit einem IVR-Objekt im Jtel-System zusammen, das bei eingehenden Anrufen zur Suche nach Datensätzen in SalesForce verwendet werden kann.

Die Ergebnisse der durchgeführten Suche stehen als Variablen zur Verfügung und können verwendet werden, um das Routing im Jtel-System zu beeinflussen, z.B. um zu einem bestimmten Agenten oder zu einer bestimmten ACD-Gruppe zu routen.

Um diese API nutzen zu können, muss in SalesForce ein REST-Endpunkt bereitgestellt werden, auf den das jtel-System zugreifen kann. Auf den folgenden Seiten wird eine Beispielimplementierung beschrieben.

Anforderung

GET

Parameter

Die folgenden Parameter werden in der REST-Anforderung bereitgestellt:

Parameter NameAb jtel ReleaseBeschreibung
CallerID
Die Nummer des Anrufers im Format E.164 (voll qualifiziert ohne +).
ServiceNumber
Die angerufene Servicenummer (jtel-Feld ServiceNumbers.Name).
ServiceName
Der Name des aufgerufenen Dienstes (Jtel field ServiceNumbers.Name2).
Funktion

Status
subtletrue
colourBlue
title3.25 / 2021-07-02 UND SPÄTER

Die auszuführende Funktion. Dieser Parameter kann verwendet werden, um die gewünschte Aktion in der Apex Klasse zu differenzieren und kann für viele Geschäftsfälle verwendet werden. Zum Beispiel, um nach einem Ticket zu suchen. Oder ein Ereignis, um SalesForce zu aktualisieren und ein Objekt zu erstellen.
UserData

Status
subtletrue
colourBlue
title3.25 / 2021-07-02 UND SPÄTER

Ein benutzerdefinierbarer Parameter, der beliebige Informationen enthalten kann.
UserData2

Status
subtletrue
colourBlue
title3.25 / 2021-07-02 UND SPÄTER

Ein benutzerdefinierbarer Parameter, der beliebige Informationen enthalten kann.
UserData3

Status
subtletrue
colourBlue
title3.25 / 2021-07-02 UND SPÄTER

Ein benutzerdefinierbarer Parameter, der beliebige Informationen enthalten kann.

http Status Codes

Die folgenden Statuscodes sollten verwendet werden:

Status Code

Ab jtel Release

Bedeutung

200 – OK


Eine Datensatz wurde gefunden und zurückgegeben.
300 – Multiple Choices

Status
subtletrue
colourYellow
title3.29 / 2022-08-08 UND FRÜHER

Es wurden mehrere Datensätze gefunden. (In diesem Fall sollten keine Datensätze zurückgegeben werden).

300 – Multiple Choices

Status
subtletrue
colourBlue
title3.30 / 2022-08-08 UND SPÄTER

Es wurden mehrere Datensätze gefunden. Die Apex-Klasse kann entweder:

  • keine Datensätze zurückgeben
  • einen der gefundenen Datensätze zurückgeben
    In diesem Fall sollte, wenn der Datensatz für einen Screen-Pop verwendet werden soll (durch Auffüllen des UserData-Feldes), dem Agenten eine Information gegeben werden, dass tatsächlich mehr als ein Datensatz existiert, z.B. im zusätzlichen Informationsfeld.
  • alle gefundenen Datensätze in einem Array zurückgeben.
    Im letzten Fall wird die Logik in der Routing-Anwendung entsprechend schwieriger, aber die Routing-Anwendung erhält Zugriff auf alle zurückgegebenen Datensätze in Variablen mit zusätzlicher Indizierung. Zum Beispiel $SalesForce.0.ID ... $SalesForce.1.ID und so weiter.
404 – Not found
Es wurde kein Datensatz gefunden.

Rückgabe-Struktur (return structure)

Die Rückgabestruktur muss JSON sein, aber ansonsten können beliebige Felder und Inhalte zurückgegeben werden. Das jtel-System wird die Daten in Variablen für die jtel IVR-GUI parsen, in der Form $SalesForce.FieldName

Wenn Strukturen verschachtelt sind, dann wird die Variable entsprechend benannt: $SalesForce.Entity.FieldName

Die Einsicht in das Anrufprotokoll zeigt Ihnen die genauen zurückgegebenen Feldnamen.

Sv translation
languagefr

Cette API fonctionne avec un objet IVR dans le système jtel, qui peut être utilisé pour rechercher des enregistrements dans SalesForce lors des appels entrants.

Les résultats de la recherche effectuée sont disponibles sous forme de variables, et peuvent être utilisés pour influencer le routage dans le système jtel, par exemple pour router vers un agent particulier, ou vers un groupe ACD particulier.

Pour utiliser cette API, un terminal REST doit être fourni dans SalesForce pour que le système jtel puisse y accéder. Les pages suivantes décrivent un exemple de mise en œuvre.

Demande

GET

Paramètres

Les paramètres suivants sont fournis dans la requête REST:

Nom du paramètreDe jtel ReleaseDescription
CallerID
Le numéro de l'appelant dans le format E.164 (pleinement qualifié sans +).
ServiceNumber
Le numéro de service appelé (champ jtel ServiceNumbers.Name).
ServiceName
Le nom du service appelé (champ jtel ServiceNumbers.Name2).
Fonction

Status
subtlevrai
colourBlue
title3.25 / 2021-07-02 vers le haut

La fonction à exécuter. Ce paramètre peut être utilisé pour différencier l'action requise et pourrait être utilisé pour de nombreux cas d'affaires. Par exemple, pour rechercher un billet. Ou événement pour mettre à jour SalesForce et créer un objet.
UserData

Status
subtlevrai
colourBlue
title3.25 / 2021-07-02 vers le haut

Un paramètre défini par l'utilisateur qui peut contenir n'importe quelle information.
UserData2

Status
subtlevrai
colourBlue
title3.25 / 2021-07-02 vers le haut

Un paramètre défini par l'utilisateur qui peut contenir n'importe quelle information.
UserData3

Status
subtlevrai
colourBlue
title3.25 / 2021-07-02 vers le haut

Un paramètre défini par l'utilisateur qui peut contenir n'importe quelle information.

codes de statut http

Les codes de statut suivants doivent être utilisés:

Statut Code
De jtel Release
Signification

200 – OK


Un enregistrement a été trouvé et retourné.
300 - Choix multiples

Status
subtletrue
colourYellow
title3.29 / 2022-08-08 ET ANTÉRIEURS

De nombreux documents ont été trouvés. (Aucun dossier ne doit être retourné dans ce cas).

300 - Choix multiples

Status
subtletrue
colourBlue
title3.30 / 2022-08-08 ET ULTÉRIEUR

Plusieurs enregistrements ont été trouvés. La classe Apex peut soit :

  • ne renvoyer aucun enregistrement
  • renvoyer l'un des enregistrements trouvés
    Dans ce cas, si l'enregistrement doit être utilisé pour un screen-pop (en remplissant le champ UserData), il convient de fournir à l'agent des informations indiquant que plusieurs enregistrements existent en fait, par exemple dans le champ d'informations supplémentaires.
  • retourner tous les enregistrements trouvés dans un tableau.
    Dans le dernier cas, la logique de l'application de routage sera d'autant plus difficile, mais l'application de routage aura accès à tous les enregistrements retournés dans des variables avec une indexation supplémentaire. Par exemple $SalesForce.0.ID ... $SalesForce.1.ID et ainsi de suite.
404 - Not found
Aucun enregistrement n'a été trouvé.

Structure de retour

La structure de retour doit être JSON, mais sinon tous les champs et tout le contenu peuvent être retournés. Le système jtel analysera les données en variables pour l'interface graphique jtel IVR, de la forme $SalesForce.FieldName

Si les structures sont imbriquées, la variable sera nommée en conséquence: $SalesForce.Entity.FieldName

L'examen du journal des appels vous indiquera les noms exacts des champs retournés.