OpenFrameAPI – Client
Die OpenFrameAPI Stellt Methoden bereit, die mit OpenFrame interagieren. OpenFrame ist ein häufiger Frame, mit dem Kommunikationspartner ihre Systeme in die ServiceNow-Plattform integrieren können.
Eine der Hauptanforderungen ist die Fähigkeit, Code aus verschiedenen Domänen zu verbinden und bereitzustellen, die sich nahtlos mit Partner-Subsystemen verbinden können. Diese domänenübergreifende Verbindung ist erforderlich, um Verbindungen und Rückrufe in Kommunikationssystemen ohne domänenübergreifende Probleme zu registrieren.
OpenFrameAPI – getAWAAgentPresence(Zeichenfolgeerfolg, Zeichenfolgenfehler)
Gibt den aktuellen Anwesenheitsstatus des angemeldeten Service Desk-Mitarbeiters zurück.
| Name | Typ | Beschreibung |
|---|---|---|
| Erfolg | Zeichenfolge | Wenn die Methode erfolgreich ist, Name der aufzurufenden Rückruffunktion. |
| Fehler | Zeichenfolge | Wenn die Methode fehlschlägt, Name der aufzurufenden Rückruffunktion. |
| Typ | Beschreibung |
|---|---|
| Anwesenheit | Ergebnisse, die von der openFrame-Infrastruktur an die Funktion „erfolgreicher Rückruf“ übergeben wurden. Datentyp: Objekt |
| Anwesenheit.verfügbar | Kennzeichnung, die angibt, ob der zugeordnete Agent verfügbar ist. Gültige Werte:
Datentyp: Boolesch |
| presence.channels | Liste der verfügbaren Kommunikationskanäle mit dem Service Desk-Mitarbeiter. Datentyp: Array von Objekten
|
| presence.channels.available | Kennzeichnung, die angibt, ob der Kanal verfügbar ist. Gültige Werte:
Datentyp boolesch |
| presence.channels.name | Name des Kanals, z. B. Chat oder Telefon. Datentyp: Zeichenfolge |
| presence.channels.restrict_update | Kennzeichnung, die angibt, ob der Anwender Updates auf den Kanal beschränken kann. Gültige Werte:
Datentyp boolesch |
| presence.channels.service_channel_type | Typ des Servicekanals. Datentyp: Zeichenfolge |
| presence.channels.sys_id | SYS_ID des Kanaldatensatzes. Datentyp: Zeichenfolge Tabelle: Servicekanäle [Awa_Service_Channel] |
| presence.name | Name des Anwesenheitsstatus des Service Desk-Mitarbeiters. Datentyp: Zeichenfolge |
| Presence.sys_ID | SYS_ID des Anwesenheitsstatusdatensatzes. Datentyp: Zeichenfolge Tabelle: Anwesenheitsstatus [Awa_presence_State] |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
function failure(data)
{
console.log("failure: " + JSON.stringify(data));
}
function success(data)
{
console.log("success: " + JSON.stringify(data));
}
openFrameAPI.getAWAAgentPresence(success, failure)
Antwort auf erfolgreiche Rückruffunktion:
success: {
"presence": {
"name": "Available",
"sys_id": "0b10223c57a313005baaaa65ef94f970",
"available": true,
"channels": [
{
"name": "Chat",
"available": true,
"sys_id": "27f675e3739713004a905ee515f6a7c3",
"restrict_update": false,
"service_channel_type": "chat"
}
]
}
}
openFrameAPI – hide()
Blendet den OpenFrame im TopFrame aus.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.hide()
openFrameAPI – init(Object config, function successCallback, function failureCallback)
Initialisiert OpenFrame. Dies muss die erste Methode sein, die Sie aufrufen.
Diese Methode initialisiert die Kommunikation mit TopFrame und initialisiert alle visuellen Elemente, die in übergeben werden configParameter.
| Name | Typ | Beschreibung |
|---|---|---|
| Konfiguration | Objekt | Name-Wert-Paare, die während des Initialisierungsprozesses verwendet werden sollen. Mögliche Schlüssel: Alle Schlüssel sind optional. Übergeben Sie ein leeres Objekt, wenn Sie diese Schlüssel-Wert-Paare nicht festlegen möchten.
|
| successCallback | Funktion | Name der Rückruffunktion, die verwendet werden soll, wenn Init Methode erfolgreich. Die OpenFrame-Konfiguration Im System gespeicherte Daten werden als Parameter an die Rückruffunktion übergeben. |
| failureCallback | Funktion | Name der Rückruffunktion, die verwendet werden soll, wenn Init Methode schlägt fehl. |
| Typ | Beschreibung |
|---|---|
| void |
var config = {
height: 300,
width: 200
}
function handleCommunicationEvent(context) {
console.log("Communication from Topframe", context);
}
function initSuccess(snConfig) {
console.log("openframe configuration", snConfig);
//register for communication event from TopFrame
openFrameAPI.subscribe(openFrameAPI.EVENTS.COMMUNICATION_EVENT,
handleCommunicationEvent);
}
function initFailure(error) {
console.log("OpenFrame init failed...", error);
}
openFrameAPI.init(config, initSuccess, initFailure);
openFrameAPI – isVisible(function callback)
Überprüft, ob der OpenFrame im TopFrame sichtbar ist.
| Name | Typ | Beschreibung |
|---|---|---|
| callback | function | Die Callback-Funktion empfängt einen Parameter mit dem Wert „true“ oder „false“. „True“, wenn OpenFrame sichtbar ist, und „false“, wenn nicht sichtbar. |
| Typ | Beschreibung |
|---|---|
| void |
function callback(isVisible) {
console.log(isVisible)
}
openFrameAPI.isVisible(callback)
openFrameAPI - openCustomURL(String details)
Öffnet eine anwenderdefinierte URL in der UI16-Schnittstelle.
| Name | Typ | Beschreibung |
|---|---|---|
| URL | Zeichenfolge | Text der anwenderdefinierten URL. Maximale Größe: 2083 Zeichen |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.openCustomURL('10_cool_things.do');
openFrameAPI – openServiceNowForm(Object details)
Öffnet eine Formular-URL.
- In der Plattform-Schnittstelle öffnet diese API eine Formular-URL im TopFrame.
- Für Mitarbeiterbereich unterstützt diese API die Verwaltung der Interaktionsregisterkarte. In Mitarbeiterbereich wird ein Interaktionsdatensatz auf einer übergeordneten Registerkarte geöffnet, und der angegebene Entitätsdatensatz wird auf einer untergeordneten Registerkarte unter der Interaktionsregisterkarte geöffnet.
| Name | Typ | Beschreibung |
|---|---|---|
| details | Objekt | Schlüssel-Wert-Paare, die die zu öffnende Formular-URL identifizieren. |
| details.entity | Zeichenfolge | Tabellen- oder Entitätsname. |
| details.interaction_sys_id | Zeichenfolge | Optional. SYS_ID des Interaktionsdatensatzes, der als übergeordnete Registerkarte in geöffnet werden soll Mitarbeiterbereich. Hinweis: In der Plattform-Schnittstelle wird interaction_sys_id ignoriert. |
| details.query | Zeichenfolge | Abfrage, um den zu öffnenden Datensatz zu identifizieren, z. B.: query:'sys_id=<record_sys_id>'. |
| Typ | Beschreibung |
|---|---|
| void |
Das folgende Beispiel zeigt die grundlegende Verwendung in Plattform:
openFrameAPI.openServiceNowForm({entity:'customer_account',
query:'sys_id=447832786f0331003b3c498f5d3ee452', 'interaction_sys_id':'3be092313b711300758ce9b534efc4dd'});
Das folgende Beispiel zeigt die Verwendung von queryParameter zum Erstellen eines neuen Datensatzes mit Daten, die im Formular bereitgestellt werden, mithilfe von „sysparm_query“ und einer codierten Abfrage zum Ausfüllen der Felder „vor- und Nachname“ im Arbeitsbereich:
openFrameAPI.openServiceNowForm({ entity: 'sys_user',
query: 'sys_id=-1&sysparm_query=first_name=Ivan^last_name=Greggor' });
OpenFrameAPI – openServiceNowFormwithChildTab()
Öffnet einen ServiceNow Formular mit einer untergeordneten Registerkarte, wenn sie in einem Arbeitsbereich aufgerufen wird, oder öffnet eine Entität, wenn sie in der UI16-Schnittstelle aufgerufen wird.
| Name | Typ | Beschreibung |
|---|---|---|
| OpenServiceNowFormwithChildTab | Objekt | Definiert, ob die API einen öffnet ServiceNow Formular mit einer untergeordneten Registerkarte, wenn sie in einem Arbeitsbereich aufgerufen wird, oder öffnet eine Entität, wenn sie in der UI16-Schnittstelle aufgerufen wird. |
| OpenServiceNowFormwithChildTab.Entität | Zeichenfolge | Name der Tabelle, die den zu öffnenden Datensatz enthält. |
| OpenServiceNowFormwithChildTab.sys_ID | Zeichenfolge | SYS_ID des zu öffnenden Datensatzes. |
| OpenServiceNowFormwithChildTab.parent_Entity | Zeichenfolge | Name der Tabelle, die als übergeordnete Registerkarte geöffnet werden soll. |
| OpenServiceNowFormwithChildTab.parent_Entity_sys_ID | Zeichenfolge | SYS_ID des zu öffnenden übergeordneten Datensatzes. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel öffnet die übergeordnete Entität als übergeordnete Registerkarte in einem konfigurierten Arbeitsbereich oder öffnet nur die Entität, wenn sie in UI16 aufgerufen wird.
openFrameAPI.openServiceNowFormwithChildTab({
entity: "customer_account",
sys_id: "447832786f0331003b3c498f5d3ee452",
parent_entity: "interaction",
parent_entity_sys_id: "3be092313b711300758ce9b534efc4dd"
});
openFrameAPI – openServiceNowList(Object details)
Öffnet eine Listen-URL in der UI16-Schnittstelle.
| Name | Typ | Beschreibung |
|---|---|---|
| details | Objekt | Schlüssel-Wert-Paare, die den Inhalt beschreiben, der beim Öffnen der Listen-URL verwendet werden soll. Gültige Werte:
|
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.openServiceNowList({entity:'case', query:'active=true'});
openFrameAPI - setFrameMode(mode)
Legt den OpenFrame-Modus fest.
- Legt das entsprechende Symbol im Header fest: reduzieren oder erweitern.
- Löst das relevante Event für CTI aus:
- openFrameAPI.EVENTS.COLLAPSE
- openFrameAPI.EVENTS.EXPAND
| Name | Typ | Beschreibung |
|---|---|---|
| Modus | Zeichenfolge | Legen Sie den OpenFrame-Modus fest. Aufgelistete Optionen:
|
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.setFrameMode(openFrameAPI.FRAME_MODE.COLLAPSE);
openFrameAPI - setHeight(height)
Legt die OpenFrame-Höhe fest.
| Name | Typ | Beschreibung |
|---|---|---|
| Höhe | Nummer | Höhe in Pixel |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.setHeight(100);
OpenFrameAPI – setICContext(Zeichenfolgentyp, Objekt-<Context>)
Legt die Kontextdaten im Zusammenhang mit den Interaktionssteuerungen auf dem Client fest. Verwenden Sie diese Kontextdaten, um die Client-UI zu bestimmen, die in OpenFrame angezeigt werden soll.
Weitere Informationen zu interaktiven Steuerungen finden Sie unter Interaction Controls Component.
Weitere Informationen zu Interaktionsdatensätzen finden Sie unter CSM voice interaction record page.
| Name | Typ | Beschreibung |
|---|---|---|
| Typ | Zeichenfolge | Typ der festzulegenden Kontextdaten. Gültige Werte:
|
| <Context> | Objekt | Festzulegende Kontextdaten. Jeder Kontextdatentyp hat einen anderen Satz möglicher Eingabedaten. Gültig ContextDatenobjekte:
|
| activeCall | Array von Objekten | Details zu einem aktiven Anruf. Jedes Objekt stellt einen laufenden aktiven Anruf dar. |
| ActiveCall.currentTeilnehmer | Objekt | Erforderlich. Details zu den Anruffähigkeiten und dem Anrufstatus des aktuellen Teilnehmers. |
| ActiveCall.currentTeilnehmer.Akteur | Zeichenfolge | Typ des Teilnehmers im Anruf. Gültige Werte:
Hinweis: Andere Teilnehmertypen, die in der Zukunft hinzugefügt werden sollen. |
| ActiveCall.currentTeilnehmer.CallStartTime | Zeichenfolge | Datum und Uhrzeit des Beginns des Anrufs. Zeitstandard: UTC Format: RSS – „<Wochentag>, TT mmm jjjj hh:MM:ss GMT“. Beispiel: „Mi, 17 Dez 2024 05:23:41 GMT“ |
| ActiveCall.currentTeilnehmer.Fähigkeiten | Objekt | Details zu den Fähigkeiten, die der aktuelle Teilnehmer (Service Desk-Mitarbeiter) während eines Anrufs ausführen kann. Die zugehörigen Symbole werden in der Komponente „aktiver Anruf“ für die aktivierten Fähigkeiten angezeigt. |
| ActiveCall.currentTeilnehmer.Fähigkeiten. dtmf | Boolean | Kennzeichnung, die angibt, ob der Service Desk-Mitarbeiter für den aktuellen Anruf über die Funktion „Dual Tone MultiFrequency“ (DTMF) verfügt. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. EndCall | Boolean | Kennzeichnung, die angibt, ob der zugeordnete Teilnehmer den Anruf beenden kann. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. Kennzeichnung | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer den Anruf für Qualitätsprobleme kennzeichnen kann, z. B. Probleme mit der Sprachqualität. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. Halten | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer den Anruf in den Wartestatus setzen kann. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. LeaseAndTransfer | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer den Anruf an einen anderen Service Desk-Mitarbeiter weiterleiten und dann den Anruf abgeben kann. Aktivieren Sie diese Fähigkeit für Aktionen wie Konsultationsübertragungen, bei denen der konsultierte Anwender nicht der Besitzer des Anrufs ist. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. MergeCall | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer den Anruf zusammenführen kann. Verwenden Sie diese Fähigkeit, wenn die Anrufabschnitte des Teilnehmers zusammengeführt werden können. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. Stummschalten | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer den Anruf stummschalten kann. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. Aufzeichnung fortsetzen | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer die Aufzeichnung des Anrufs fortsetzen kann. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. PauseRecording | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer die Aufzeichnung des Anrufs anhalten kann. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. StartRecording | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer mit der Aufzeichnung des Anrufs beginnen kann. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. Aufzeichnung stoppen | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer die Aufzeichnung des Anrufs beenden kann. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Fähigkeiten. Übertragen | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer den Anruf weiterleiten kann. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.ConnectedTime | Zeichenfolge | Datum und Uhrzeit der anfänglichen Verbindung des Anrufs. Zeitbasis: UTC Format: RSS – „<Wochentag>, TT mmm jjjj hh:MM:ss GMT“. Beispiel: „Mi, 17 Dez 2024 05:23:41 GMT“ |
| ActiveCall.currentTeilnehmer.Anwenderdefinierte Fähigkeit-Status-1 | Boolean | Kennzeichnung, die angibt, ob der Anruf aktuelle Teilnehmer hat. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Gekennzeichnet | Boolean | Kennzeichnung, die angibt, ob der Anruf für ein Problem gekennzeichnet ist, z. B. ein Problem mit der Sprachqualität. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Gehalten | Boolean | Kennzeichnung, die den Status „Angehalten“ des Teilnehmers angibt. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.id | Zeichenfolge | Erforderlich. SYS_ID des zugehörigen Teilnehmerdatensatzes, z. B. die sys_ID des Service Desk-Mitarbeiters. Tabelle: Benutzer [sys_user] |
| ActiveCall.currentTeilnehmer.Stummgeschaltet | Boolean | Kennzeichnung, die den stummgeschalteten Status des Teilnehmers angibt. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Name | Zeichenfolge | Name des Teilnehmers. |
| ActiveCall.currentTeilnehmer.Angehalten | Boolean | Kennzeichnung, die den Status „Angehalten“ des Teilnehmers angibt. Gültige Werte:
Standardwert: false |
| ActiveCall.currentTeilnehmer.Aufzeichnung | Zeichenfolge | Aktueller Aufzeichnungsstatus des Anrufs. Gültige Werte:
|
| ActiveCall.currentTeilnehmer.Nachbearbeitung | Objekt | Zukünftige Verwendung. |
| ActiveCall.customPayload | Objekt | Anwenderdefinierte Nutzlast, die als Teil von Open Frame-Ereignissen an OpenFrame übergeben werden soll. Dies ist ein Freiformobjekt und kann alle Daten enthalten, die zum Anpassen der aktiven Anrufkomponente erforderlich sind, z. B. das Hinzufügen von Schaltflächen oder Text. |
| ActiveCall.direction | Zeichenfolge | Richtung des Anrufs für den zugehörigen Teilnehmer. Gültige Werte:
|
| AktiveCall.externalId | Erforderlich. Eindeutiger Wert, der den aktuellen aktiven Anruf im zugehörigen externen System identifiziert. | |
| ActiveCall. NowRecordId | Zeichenfolge | Erforderlich. SYS_ID des aktiven Anrufdatensatzes. Tabelle: Nur Interaktion [Interaktion] unterstützte Option für Basissystem. |
| ActiveCall. NowRecordTable | Zeichenfolge | Erforderlich. Tabelle, zu der der aktive Anruf gehört. Tabelle: Nur Interaktion [Interaktion] unterstützte Option für Basissystem. |
| ActiveCall. Teilnehmer | Array von Objekten | Erforderlich. Liste der zusätzlichen Teilnehmer des Anrufs. Ein Teilnehmer kann ein Service Desk-Mitarbeiter, ein Kunde, eine externe Person, die kein Service Desk-Mitarbeiter oder Kunde ist, oder eine Warteschlange sein. |
| ActiveCall. Teilnehmer. Akteur | Zeichenfolge | Typ des Akteurs für den zugeordneten Teilnehmer. Zum Beispiel:
|
| ActiveCall. Teilnehmer. ani | Automatische Nummernidentifizierung. Telefonnummer, die dem Empfänger des Telefonanrufs angezeigt werden soll. | |
| ActiveCall. Teilnehmer. Adresse | Zeichenfolge | Telefonnummer des Teilnehmers. |
| ActiveCall. Teilnehmer. Fähigkeiten | Objekt | Details zum Typ der Fähigkeiten, die der Teilnehmer für den zugehörigen Anruf hat. |
| ActiveCall. Teilnehmer. Fähigkeiten. EndCall | Boolean | Kennzeichnung, die angibt, ob der zugeordnete Teilnehmer den Anruf beenden kann. Gültige Werte:
Standardwert: false |
| ActiveCall. Teilnehmer. Fähigkeiten. Halten | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer den Anruf in den Wartestatus setzen kann. Gültige Werte:
Standardwert: false |
| ActiveCall. Teilnehmer. Fähigkeiten. Stummschalten | Boolean | Kennzeichnung, die angibt, ob der Teilnehmer den Anruf stummschalten kann. Gültige Werte:
Standardwert: false |
| ActiveCall. Teilnehmer. ConnectedTime | Zeichenfolge | Erforderlich. Datum und Uhrzeit, zu der der Teilnehmer anfänglich mit dem Anruf verbunden war. Zeitstandard: UTC Format: RSS – „<Wochentag>, TT mmm jjjj hh:MM:ss GMT“. Beispiel: „Mi, 17 Dez 2024 05:23:41 GMT“ |
| ActiveCall. Teilnehmer. CustomPayload | Objekt | Anwenderdefinierte Nutzlast, die als Teil anwenderdefinierter Open Frame-Ereignisse an OpenFrame übergeben werden soll. Dies ist ein Freiformobjekt und kann alle Daten enthalten, die zum Anpassen der Komponente „aktiver Anruf“ erforderlich sind, z. B. das Hinzufügen von Schaltflächen oder Text. |
| ActiveCall. Teilnehmer. dnis | Zeichenfolge | Identifizierungsservice Für Gewählte Nummer. Telefonnummer, die der Teilnehmer gewählt hat. |
| ActiveCall. Teilnehmer. Gehalten | Boolean | Kennzeichnung, die den Status „Angehalten“ des Teilnehmers angibt. Gültige Werte:
Standardwert: false |
| ActiveCall. Teilnehmer. HeldAtTime | Zeichenfolge | Datum und Uhrzeit, zu der die Verbindung des Teilnehmers zum Anruf angehalten wurde. Zeitbasis: UTC Format: RSS – „<Wochentag>, TT mmm jjjj hh:MM:ss GMT“. Beispiel: „Mi, 17 Dez 2024 05:23:41 GMT“ |
| ActiveCall. Teilnehmer. id | Zeichenfolge | Erforderlich. Eindeutige ID des Teilnehmers aus dem CCaaS-System (Contact Center as a Service). |
| ActiveCall. Teilnehmer. Stummgeschaltet | Boolean | Kennzeichnung, die den Stummschaltungsstatus des Teilnehmers angibt. Gültige Werte:
Standardwert: false |
| ActiveCall. Teilnehmer. Name | Zeichenfolge | Name des Teilnehmers. |
| ActiveCall. Teilnehmer. AnforderungsACW | Boolean | Nur für Anwendungsfall für Service Desk-Mitarbeiter: Nur gültig, wenn activeCall.currentParticipant.actorIst „Agent“. Kennzeichnung, die angibt, ob der Teilnehmer mit dem Kunden sprechen muss. Gültige Werte:
Standardwert: false |
| ActiveCall. Teilnehmer. Erforderliche Nachbearbeitung | Boolean | Nur für Anwendungsfall für Service Desk-Mitarbeiter: Nur gültig, wenn activeCall.currentParticipant.actorIst „Agent“. Kennzeichnung, die angibt, ob angezeigt werden soll Abschluss Komponente, sobald der Anruf abgeschlossen ist. Gültige Werte:
Standardwert: false |
| ActiveCall. Teilnehmer. status | Zeichenfolge | Status der Anrufstrecke des Teilnehmers. Wird unter der Telefonnummer in angezeigt Aktiver Anruf Komponente. Dies kann ein beliebiger aussagekräftiger Text sein, z. B.:
|
| ActiveCall.type | Zeichenfolge | Typ des Anrufs. Gültige Werte:
|
| <idleState> | Objekt | Beschreibt den Leerlaufstatuskontext des Service Desk-Mitarbeiters. Diese Kontextdaten bestimmen die Informationen, die auf der Wähltastatur angezeigt werden, wenn ein Service Desk-Mitarbeiter auf einen Anruf wartet, und die Fähigkeiten, die er über diese Wähltastatur hat. |
| <idleState>.Fähigkeit | Objekt | Beschreibung der Leerlaufstatus-Fähigkeiten des aktuellen Anwenders. |
| <idleState>.Fähigkeit. GlobalContactSerarch | Boolean | Kennzeichnung, die angibt, ob die globale Kontaktliste im Leerlauf angezeigt werden soll. Gültige Werte:
Standardwert: false |
| <idleState>.Fähigkeit. Melden Sie sich ab | Boolean | Kennzeichnung, die angibt, ob sich der Anwender im Leerlauf abmelden kann. Gültige Werte:
Standardwert: false |
| <idleState>.Fähigkeit. OutBoundCall | Boolean | Kennzeichnung, die angibt, ob der Anwender im Leerlauf einen ausgehenden Anruf tätigen kann. Gültige Werte:
Standardwert: false |
| <idleState>. CurrentInlimitId | Zeichenfolge | Eingehender Bezeichner der Anbieteranwendung, die zum Erstellen der Interaktion mit dem ausgehenden Anruf verwendet wird. Tabelle: Befindet sich im ID-Feld der Tabelle „Identitäten des Anbieterkanals“ [sys_cs_Provider_Application]. Standard: Basissystemanbieter-Anwendung |
| <idleState>. DialpadInfoMessage | Objekt | Details zur Informationsnachricht, die auf der Wähltastatur des Anwenders angezeigt werden soll, z. B. die aktuell ausgewählte Warteschlange.Im folgenden Beispiel labelIst Ausgewählte Warteschlange: Und valueIst Kundenanfragen . Sie können auch einfach entweder verwenden labelOder valueParameter mit Ausgewählte Warteschlange: Kundenanfragen . |
| <idleState>. DialpadInfoMessage. Bezeichnung | Zeichenfolge | Freiform-Bezeichnung, die auf der Wähltastatur angezeigt werden soll. |
| <idleState>. DialpadInfoMessage. Wert | Zeichenfolge | Freiform-Nachrichtentext, der nach der Bezeichnung auf der Wähltastatur angezeigt werden soll. |
| <idleState>. AktivierenStatus | Objekt | Details zum Aktivierungsstatus der Schaltflächen auf der Wähltastatur. |
| <idleState>. AktivierenStatus. Melden Sie sich ab | Boolean | Kennzeichnung, die angibt, ob die Schaltfläche „Abmelden“ in der Anwenderoberfläche im Leerlauf aktiviert werden soll. Gültige Werte:
Standardwert: false |
| <idleState>. AktivierenStatus. OutBoundCall | Boolean | Kennzeichnung, die angibt, ob die Schaltfläche „ausgehender Anruf“ in der Anwenderoberfläche aktiviert werden soll, während sie sich im Leerlauf befindet. Gültige Werte:
Standardwert: false |
| searchTargetList | Array von Objekten | Details der übertragungsbezogenen Daten für einen ServiceNow Tabelle. |
| SearchTargetList. ExternalID | Zeichenfolge | Eindeutiger Bezeichner des zugehörigen Aufrufs im CCaaS-System. |
| SearchTargetList. NowRecordId | Zeichenfolge | Erforderlich. SYS_ID des Datensatzes, zu dem die searchTargetList gehört. Hinweis: Derzeit werden nur Datensätze in der Tabelle „Interaktion“ [Interaction] unterstützt. |
| SearchTargetList. NowRecordTable | Zeichenfolge | Erforderlich. ServiceNow Tabelle, zu der die searchTargetList gehört. Tabelle: Nur gültiger Wert – |
| SearchTargetList. Beteiligungs-ID | Zeichenfolge | Eindeutiger Bezeichner für den Teilnehmer aus dem CCaaS-System. |
| SearchTargetList. Ziele | Array von Objekten | Details zu den Service Desk-Mitarbeitern, externen Anwendern und/oder Warteschlangen, an die der Anruf übertragen werden kann. |
| SearchTargetList. Ziele. Nutzlast | Objekt | Details zu den Informationen, die im Steuerelement „Anruf weiterleiten“ angezeigt werden sollen. Im Folgenden finden Sie ein Beispiel für Anruf weiterleiten Steuerung, die eine Liste von Service Desk-Mitarbeitern enthält, an die der Anruf übertragen werden kann. Der Screenshot zeigt, welche Elemente der Anwenderoberfläche die einzelnen Parameter in haben list.payloadSteuerungen. Dieses Beispiel zeigt eine Agent-Nutzlast ( Das folgende Beispiel zeigt ein Beispiel für eine Warteschlangennutzlast ( |
| SearchTargetList. Ziele. Nutzlast. Liste | Array von Objekten | Details zur Nutzlast für jeden Zieltyp. |
| SearchTargetList. Ziele. Nutzlast. Liste. HasStats | Boolean | Kennzeichnung, die angibt, ob das zugeordnete Ziel über zusätzliche Statistiken wie eine Wartezeit für eine Warteschlange verfügt. Gültige Werte:
Standardwert: false |
| SearchTargetList. Ziele. Nutzlast. Liste. id | Zeichenfolge | Eindeutiger Bezeichner des Service Desk-Mitarbeiters oder der Warteschlange im CCaaS-System. |
| SearchTargetList. Ziele. Nutzlast. Liste. Moreinfo | Array von Objekten | Erforderlich, wenn searchTargetList.targets.payload.list.hasStatsIst auf festgelegt „Wahr“ . Liste der Kompetenzen, über die der Service Desk-Mitarbeiter oder die Warteschlange verfügt. Diese Informationen werden in einem Popup-Fenster angezeigt, wenn der Anwender das Informationssymbol am Ende des Entitätsnamens auswählt. |
| SearchTargetList. Ziele. Nutzlast. Liste. Moreinfo. Bezeichnung | Zeichenfolge | Freiform-Bezeichnung für die Informationen, die im Popup-Fenster angezeigt werden sollen, z. B. Kompetenz Oder Sprache . |
| SearchTargetList. Ziele. Nutzlast. Liste. Moreinfo. Wert | Zeichenfolge | Text, der im Popup-Fenster nach der Bezeichnung angezeigt werden soll, z. B. CRM-zertifiziert Oder Deutsch . |
| SearchTargetList. Ziele. Nutzlast. Liste. Name | Zeichenfolge | Name des Service Desk-Mitarbeiters, des externen Anwenders oder der Warteschlange. Befindet sich im CCaaS-System. |
| SearchTargetList. Ziele. Nutzlast. Liste. Anwesenheit | Zeichenfolge | Anwesenheitsstatus des zugehörigen Service Desk-Mitarbeiters. Dieser Parameter ist nur für gültig searchTargetList.targets.typeVon „Service Desk-Mitarbeiter“ .Gültige Werte:
|
| SearchTargetList. Ziele. TransferUntertypen | Array von Objekten | Details zum Typ der Übertragung, die für den angegebenen unterstützt wird searchTargetList.targets.type. Diese Informationen werden angezeigt, wenn der Anwender in der Anwenderoberfläche auf die Ellipse neben dem Namen des Ziels klickt. Wenn beispielsweise nur ein Konsultationstyp für den aktuellen Zieltyp unterstützt wird, z. B. Warteschlange, enthält dieses Array ein Objekt, das den Konsultationstyp der Übertragung angibt. |
| SearchTargetList. Ziele. TransferUntertypen. id | Zeichenfolge | Bezeichner des Transferuntertyps. Gültige Werte:
Dies muss dem Wert in entsprechen searchTargetList.targets.transferSubtypes.label. |
| SearchTargetList. Ziele. TransferUntertypen. Bezeichnung | Zeichenfolge | Bezeichnung des Transferuntertyps. Wenn Sie keine Bezeichnung übergeben, wird in der Anwenderoberfläche für den Transferuntertyp nichts angezeigt. Gültige Werte:
Dies muss dem Wert in entsprechen searchTargetList.targets.transferSubtypes.id. |
| SearchTargetList. Ziele. Typ | Zeichenfolge | Typ des Ziels. Gültige Werte:
|
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Codebeispiel zeigt, wie der Kontext des aktiven Status festgelegt wird.
openFrameAPI.setICContext("activeCall", {
"activeCall": [
{
"nowRecordTable": "interaction",
"nowRecordId": "12345675678903456",
"externalId": "1234567890",
"type": "call",
"direction": "inbound",
"currentParticipant": {
"id": "participant1",
"name": "John 1",
"actor": "agent",
"state": "connected",
"connectedTime": "Fri, 12 Jul 2024 05:23:41 GMT",
"callStartTime": "Fri, 12 Jul 2024 04:20:22 GMT",
"muted": false,
"held": true,
"paused": true,
"flagged": true,
"recording": "in_progress",
"capabilities": {
"hold": false,
"mute": true,
"endCall": true,
"startRecording": true,
"pauseRecording": true,
"stopRecording": true,
"resumeRecording": true,
"transfer": true,
"mergeCall": true,
"leaveAndTransfer": true,
"dtmf": true,
"flag": true
}
},
"participants": [
{
"id": "customer1",
"name": "Gilly 1",
"actor": "customer",
"address": "+18582359874",
"ani": "+16193287356",
"dnis": "+18004346258",
"state": "connected",
"connectedTime": "Fri, 12 Jul 2024 00:23:41 GMT",
"callStartTime": "Fri, 12 Jul 2024 20:55:04 GMT",
"muted": false,
"held": false,
"heldAtTime": "Fri, 12 Jul 2024 20:55:04 GMT",
"capabilities": {
"mute": true,
"hold": true,
"endCall": true
}
},
{
"id": "agent2",
"name": "Ned",
"actor": "agent",
"address": "+3134787324",
"ani": "+13134787324",
"dnis": "+14773286943",
"state": "Ringing...",
"requireWrapup": true,
"requestACW": true,
"connectedTime": "Fri, 12 Jul 2024 20:24:41 GMT",
"callStartTime": "Fri, 12 Jul 2024 20:56:34 GMT",
"muted": true,
"held": true,
"heldAtTime": "Fri, 12 Jul 2024 20:55:41 GMT",
"capabilities": {
"mute": true,
"endCall": true,
"hold": true
}
}
]
},
{
"nowRecordTable": "interaction",
"nowRecordId": "12345yhedfh534576u5",
"externalId": "1234567890",
"type": "call",
"direction": "inbound",
"currentParticipant": {
"id": "participant1",
"name": "John 1",
"actor": "agent",
"state": "connected",
"muted": true,
"held": false,
"recording": "in_progress",
"paused": true,
"flagged": true,
"capabilities": {
"hold": false,
"mute": true,
"endCall": true,
"record": true,
"startRecording": true,
"stopRecording": true,
"transfer": true,
},
"mergeCall": false,
"dtmf": true,
"flag": true
}
},
"participants": [
{
"id": "customer1",
"name": "Gilly 2",
"actor": "customer",
"address": "+123456789",
"state": "connected",
"connectedTime": "Wed, 04 Dec 2024 00:23:41 GMT",
"muted": true,
"held": false,
"heldAtTime": "Fri, 12 Jul 2024 20:24:41 GMT”,
"capabilities": {
"mute": true,
"hold": true,
"endCall": true
}
},
{
"id": "agent2",
"name": "Ned 2",
"actor": "agent",
"address": "+123456789",
"state": "Ringing...",
"connectedTime": "Fri, 12 Jul 2024 20:24:41 GMT",
"muted": true,
"held": true,
"heldaAtTime": "Fri, 12 Jul 2024 20:24:41 GMT”,
"capabilities": {
"mute": true,
"endCall": true,
"hold": true
}
}
]
}
]
}
);
Das folgende Beispiel zeigt, wie der Kontext des Leerlaufstatus festgelegt wird.
openFrameAPI.setICContext("idleState", {
"capability": {
"outBoundCall": true,
"logOut": true
},
"enableState": {
"outBoundCall": true,
"logOut": true
},
"dialpadInfoMessage": {
"label": "Info Message Label",
"value": "Info Message Value"
},
"currentInboundId": "1234"
});
Das folgende Beispiel zeigt, wie der Kontext der Suchzielliste festgelegt wird.
openFrameAPI.setICContext("searchTargetList",
{
"searchTargetList": [
{
"nowRecordTable": "interaction",
"nowRecordId": "1234",
"externalId": "5678",
"participantID": "participant1",
"targets": [
{
"type": "agent",
"transferSubtypes": [
{
"id": "consult",
"label": "Consult"
},
{
"id": "blind",
"label": "Blind"
}
],
"payload": {
"list": [
{
"name": "John Jason",
"id": "agent1Id",
"hasStats": "true",
"presence": "away",
"moreInfo": [
{
"label": "Skill",
"value": "10sec"
}
]
}
]
}
},
{
"type": "queue",
"transferSubtypes": [
{
"id": "consult",
"label": "Consult"
},
{
"id": "blind",
"label": "Blind"
}
],
"payload": {
"list": [
{
"name": "Product Support Queue",
"id": "queue1Id",
"hasStats": "true",
"moreInfo": [
{
"label": "Skill",
"value": "10sec"
},
{
"label": "Queue Skill",
"value": "German"
}
]
},
{
"name": "Billing Queue",
"id": "queue2Id",
"hasStats": "true",
"moreInfo": [
{
"label": "Skill",
"value": "10sec"
}
]
}
]
}
}
],
"customPayload": {}
}
],
"customPayload": {}
});
openFrameAPI – setIcons(Array icons)
Definiert Symbole im OpenFrame-Header, die neben dem Schließen-Symbol platziert werden.
| Name | Typ | Beschreibung |
|---|---|---|
| icons | Array von Objekten | Eine Liste von Symbolkonfigurationen, wobei jede Symbolkonfiguration ein Objekt mit Schlüsselwerten ist imageURL, imageTitle, Und alle anderen erforderlichen Kontexte. Maximale Größe: Symbole können maximal 16x16 Pixel betragen. Größere Bilder werden automatisch auf dieses Maximum angepasst. |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.setIcons([{imageURL:'https://mydomian.com/image/mute.png',
imageTitle:'mute', id:101}, {imageURL:'https://mydomian.com/image/hold.png',
imageTitle:'hold', id:102}]);
openFrameAPI - setPresenceIndicator(presence)
Legt den Anwesenheitsindikator fest, um die Agent-Verfügbarkeit in einem Arbeitsbereich anzuzeigen.
Weitere Informationen zum Konfigurieren von OpenFrame finden Sie unter Erstellen Sie eine OpenFrame-Konfiguration
| Name | Typ | Beschreibung |
|---|---|---|
| state | Zeichenfolge | Anwesenheitsstatus des Agent. Standardstatus:
Sie können auch benutzerdefinierte Status angeben. |
| color | Zeichenfolge | Farbe des Anwesenheitsindikators im Arbeitsbereich. Unterstützte Farben:
|
| Typ | Beschreibung |
|---|---|
| void |
openframeAPI.setPresenceIndicator('Available', 'green');
openFrameAPI – setSize(Number width, Number height)
Legt die OpenFrame-Größe fest.
| Name | Typ | Beschreibung |
|---|---|---|
| width | Zahl | Sollte größer als null sein. |
| height | Zahl | Sollte größer als null sein. |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.setSize(300, 370);
openFrameAPI – setSubtitle(String subTitle)
Legt den OpenFrame-Untertitel fest.
| Name | Typ | Beschreibung |
|---|---|---|
| subTitle | Zeichenfolge | Eine Zeichenfolge mit maximal 256 Zeichen. |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.setSubtitle('+18888888888');
openFrameAPI – setTitle(String title)
Legt den OpenFrame-Titel fest.
| Name | Typ | Beschreibung |
|---|---|---|
| title | Zeichenfolge | Eine Zeichenfolge mit maximal 256 Zeichen. |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.setTitle('Incoming Call');
openFrameAPI – setTitleIcon(Object icon)
Legt das Titelsymbol von OpenFrame fest.
| Name | Typ | Beschreibung |
|---|---|---|
| icon | Objekt | Objekt von Schlüssel-Wert-Paaren. Schlüssel enthalten imageURL, imageTitle, Und alle anderen erforderlichen Kontexte. Maximale Größe: Symbole können maximal 16x16 Pixel betragen. Größere Bilder werden automatisch auf dieses Maximum angepasst. |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.setTitleIcon({imageURL:'/my/image/path.png', imageTitle:'mute', id:101});
openFrameAPI.setTitleIcon({imageURL:'https://mydomian.com/image/path.png',
imageTitle:'mute', id:101});
openFrameAPI - setWidth(width)
Legt die OpenFrame-Breite fest.
| Name | Typ | Beschreibung |
|---|---|---|
| Breite | Nummer | Breite in Pixel |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.setWidth(100);
openFrameAPI – show()
Macht den OpenFrame im TopFrame sichtbar.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| void |
openFrameAPI.show()
openFrameAPI – subscribe(openFrameAPIEVENT event, function eventCallback)
Abonniert ein angegebenes Ereignis.
| Name | Typ | Beschreibung |
|---|---|---|
| event | openFrameAPIEVENT | Das Ereignis, das abonniert werden soll:
|
| eventCallback | Funktion | Funktion, die aufgerufen werden soll, wenn das angegebene Ereignis auftritt. |
| Typ | Beschreibung |
|---|---|
| Ergebnisse | Die meisten Ereignisabonnements haben keine Rückgabewerte. Die Ereignisabonnements, die Werte zurückgeben, werden in den folgenden Tabelleneinträgen beschrieben. |
| openframe_awa_agent_presence | In AWA, openframe_awa_agent_presenceEreignis gibt zurück Anwesenheit Objekt:presence: Informationen zum aktuellen Anwesenheitsstatus und -Kanal eines Service Desk-Mitarbeiters.
|
| Openframe_Awa_workitem_accepted und openframe_Awa_workitem_offered | In AWA, openframe_awa_workitem_acceptedUnd openframe_awa_workitem_offeredEreignisse geben zurück Arbeitselement Objekt:workItem: Informationen zum Arbeitselement, das dem Ereignis zugeordnet ist.
|
| openframe_awa_workitem_rejected | In AWA, openframe_awa_workitem_rejectedEreignis gibt zurück Arbeitselement Objekt:workItem: Informationen zum Arbeitselement, das dem Ereignis zugeordnet ist.
|
| Openframe_Heart_Beat | Die openframe_heart_beatEreignis gibt das folgende Objekt zurück:
|
| Openframe_wrap_up_submitted | Die openframe_wrap_up_submittedEreignis gibt das folgende Objekt zurück:
|
Das folgende Codebeispiel zeigt, wie diese Methode für einen aufgerufen wird Openframe_Awa_Agent_presence Ereignis.
function handleIconClick(context) {
console.log("Icon was clicked", context);
}
openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_agent_presence, handleIconClick);
Ausgabe:
// Sample presence object output
// openframe_awa_agent_presence event only
{
"result":{
"presence":{
"name":"Available",
"sys_id":"27f675e3739713004a905ee515f6a7c3",
"available":true,
"channels":[
{
"name":"Chat",
"available":true,
"sys_id":"36f675e4239713124a905fe515f6a832",
"restrict_update":false
},
{
"name":"Phone",
"available":true,
"sys_id":"9378a530a1820610f809018efd9bc01e",
"restrict_update":false
}
]
}
}
}
Das folgende Codebeispiel zeigt, wie diese Methode für einen aufgerufen wird Openframe_Awa_workitem_accepted Ereignis.
function handleIconClick(context) {
console.log("Icon was clicked", context);
}
openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_workitem_accepted, handleIconClick);
Ausgabe:
// Sample workItem object output
// openframe_awa_workitem_accepted event only
{
"result": {
"workItem": {
"sys_id": "14c86c40a1650610f87701807d9bc0be",
"size": 1,
"serviceChannel": {
"name": "Chat",
"sys_id": "27f675e3739713004a905ee515f6a7c3"
},
"document": {
"sys_id": "aa582040a1650610f87701807d9bc076",
"table": "interaction"
},
"previousWorkItem": "7c78a440a1650610f87701807d9bc02b",
"isQueueTransferred": true,
"isAutoAccepted": true
}
}
}
Das folgende Codebeispiel zeigt, wie diese Methode für einen aufgerufen wird Openframe_Awa_workitem_rejected Ereignis.
function handleIconClick(context) {
console.log("Icon was clicked", context);
}
openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_workitem_rejected, handleIconClick);
Ausgabe:
// Sample workItem object output
// openframe_awa_workitem_rejected event only
{
"payload": {
"workItem": {
"sys_id": "2c3bdc4824250610f8775e73b116f8de",
"size": "1",
"serviceChannel": {
"name": "Chat",
"sysID": "27f675e3739713004a905ee515f6a7c3"
},
"document": {
"sys_id": "cf0a180824250610f8775e73b116f80c",
"table": "interaction"
},
"rejection": {
"reason": "Busy",
"sys_id": "4e93fa29b38023002e7b6e5f26a8dc20"
},
"previousWorkItem": "831b9c4824250610f8775e73b116f841",
"isQueueTransferred": true
}
}
}
openFrameAPI – version()
Gibt die OpenFrame-API-Version zurück.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Die OpenFrame-API-Version |
var version = openFrameAPI.version();
console.log("API version " + version);