openFrameAPI - Client
OpenFrame est un cadre omniprésent que les partenaires de communication peuvent utiliser pour intégrer leurs systèmes à la ServiceNow plate-forme.
L’un des besoins de base est la capacité de connecter et de fournir du code provenant de différents domaines et pouvant se connecter de manière fluide aux sous-systèmes partenaires. Cette connexion inter-domaine est nécessaire pour maintenir les connexions et les rappels inscrits dans les systèmes de communication sans aucun problème inter-domaine.
openFrameAPI - hide()
Masque l’OpenFrame dans le TopFrame.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| nul |
openFrameAPI.hide()
openFrameAPI - init(configuration d’objet, fonction successCallback, fonction failureCallback)
Initialiser OpenFrame doit être la première méthode appelée.
Cette méthode initialise la communication vers TopFrame ainsi que tous les éléments visuels transmis dans le paramètre de configuration.
| Nom | Type | Description |
|---|---|---|
| configuration | Objet | Un objet de paires de valeurs clés. Les clés peuvent être la hauteur, la largeur, le titre, le sous-titre et l’icône de titre. Toutes les clés sont facultatives. |
| successCallback | function | La fonction de rappel utilisée si la méthode init réussit. La configuration openframe stockée dans le système est transmise comme paramètre de la fonction de rappel. |
| failureCallback | function | La fonction de rappel utilisée si la méthode init échoue. |
| Type | Description |
|---|---|
| nul |
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(fonction de rappel)
Vérifie si l’OpenFrame est visible dans le TopFrame.
| Nom | Type | Description |
|---|---|---|
| rappel | function | La fonction de rappel reçoit un paramètre avec une valeur vrai ou faux. Vrai si OpenFrame est visible et faux si elle n’est pas visible. |
| Type | Description |
|---|---|
| nul |
function callback(isVisible) {
console.log(isVisible)
}
openFrameAPI.isVisible(callback)
openFrameAPI - openCustomURL(détails de la chaîne)
Ouvre une URL personnalisée dans l’interface UI16.
| Nom | Type | Description |
|---|---|---|
| URL | Chaîne | Texte de l’URL personnalisée. Taille maximale : 2 083 caractères |
| Type | Description |
|---|---|
| nul |
openFrameAPI.openCustomURL('10_cool_things.do');
openFrameAPI - openServiceNowForm(détails de l’objet)
Ouvre une URL de formulaire.
- Dans l’interface de la plateforme, cette API ouvre une URL de formulaire dans TopFrame.
- Pour Espace de travail d'agent, cette API prend en charge la gestion de l’onglet d’interaction. Dans Espace de travail d'agent, un enregistrement d’interaction s’ouvre dans un onglet parent et l’enregistrement d’entité spécifié s’ouvre dans un onglet enfant sous l’onglet d’interaction.
| Nom | Type | Description |
|---|---|---|
| Détails | Objet | Paires de valeurs clés qui identifient l’URL de formulaire à ouvrir. |
| details.entity | Chaîne | Nom de la table ou de l’entité. |
| details.interaction_sys_id | Chaîne | Facultatif. Sys_id de l’enregistrement d’interaction à ouvrir en tant qu’onglet parent dans Espace de travail d'agent. Remarque : dans l’interface de la plateforme, le interaction_sys_id est ignoré. |
| details.query | Chaîne | Requête pour identifier l’enregistrement à ouvrir, telle que : query:'sys_id=<record_sys_id>'. |
| Type | Description |
|---|---|
| nul |
L’exemple suivant montre l’utilisation de base dans la plateforme :
openFrameAPI.openServiceNowForm({entity:'customer_account',
query:'sys_id=447832786f0331003b3c498f5d3ee452', 'interaction_sys_id':'3be092313b711300758ce9b534efc4dd'});
L’exemple suivant montre comment utiliser le query paramètre pour créer un nouvel enregistrement avec les données fournies dans le formulaire à l’aide d’sysparm_query et d’une requête codée pour renseigner les champs Prénom et Nom de famille dans Workspace :
openFrameAPI.openServiceNowForm({ entity: 'sys_user',
query: 'sys_id=-1&sysparm_query=first_name=Ivan^last_name=Greggor' });
openFrameAPI : openServiceNowFormwithChildTabIf()
Ouvre un ServiceNow formulaire avec un onglet enfant s’il est invoqué dans un espace de travail ou ouvre une entité s’il est invoqué dans l’interface UI16.
| Nom | Type | Description |
|---|---|---|
| openServiceNowFormwithChildTab | Objet | Définit si l’API ouvre un ServiceNow formulaire avec un onglet enfant si elle est invoquée dans un espace de travail ou ouvre une entité si elle est invoquée dans l’interface UI16. |
| openServiceNowFormwithChildTab.entity | Chaîne | Nom de la table. |
| openServiceNowFormwithChildTab.sys_id | Chaîne | Sys_id de l’enregistrement à ouvrir. |
| openServiceNowFormwithChildTab.parent_entity | Chaîne | Nom de la table à ouvrir en tant qu’onglet parent. |
| openServiceNowFormwithChildTab.parent_entity_sys_id | Chaîne | Sys_id de l’enregistrement parent à ouvrir. |
| Type | Description |
|---|---|
| Néant |
L’exemple suivant ouvre l’entité parente en tant qu’onglet parent sur un espace de travail configuré, ou ouvre uniquement l’entité si elle est invoquée dans UI16.
openFrameAPI.openServiceNowFormwithChildTablf({
entity: “customer_account”,
sys_id: “447832786f0331003b3c498f5d3ee452”,
parent_entity: “interaction”,
parent_entity_sys_id: “3be092313b711300758ce9b534efc4dd”
});
openFrameAPI - openServiceNowList(détails de l’objet)
Ouvre une liste d’URL dans l’interface UI16.
| Nom | Type | Description |
|---|---|---|
| Détails | Objet | Paires de valeurs clés qui décrivent le contenu à utiliser lors de l’ouverture de l’URL de la liste. Valeurs valides :
|
| Type | Description |
|---|---|
| nul |
openFrameAPI.openServiceNowList({entity:'case', query:'active=true'});
openFrameAPI - setFrameMode(mode)
Définit le mode de l’OpenFrame.
- définit l’icône appropriée dans l’en-tête : réduire ou développer
- déclenche l’événement pertinent pour le CTI :
- openFrameAPI.EVENTS.COLLAPSE
- openFrameAPI.EVENTS.EXPAND
| Nom | Type | Description |
|---|---|---|
| Mode | Chaîne | Définissez le mode de l’OpenFrame. Options énumérées :
|
| Type | Description |
|---|---|
| nul |
openFrameAPI.setFrameMode(openFrameAPI.FRAME_MODE.COLLAPSE);
openFrameAPI - setHeight(hauteur)
Définit la hauteur de l’OpenFrame.
| Nom | Type | Description |
|---|---|---|
| Hauteur | Numéro | Hauteur en pixels |
| Type | Description |
|---|---|
| nul |
openFrameAPI.setHeight(100);
openFrameAPI - setIcons(icônes de tableau)
Définit les icônes dans l’en-tête OpenFrame qui sont placées à côté de l’icône de fermeture.
| Nom | Type | Description |
|---|---|---|
| icônes | Tableau d’objets | Une liste de configurations d’icônes, où chaque configuration d’icône est un objet avec des valeurs imageURLclés , imageTitle, et tout autre contexte nécessaire. Taille maximale : les icônes peuvent avoir un maximum de 16x16 pixels. Les images plus grandes sont automatiquement ajustées à ce maximum. |
| Type | Description |
|---|---|
| nul |
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(présence)
Définit l’indicateur de présence pour qu’il affiche la disponibilité de l’agent dans un espace de travail.
Pour plus d’informations sur la configuration d’OpenFrame, consultez Créer une configuration OpenFrame
| Nom | Type | Description |
|---|---|---|
| État | Chaîne | État de présence de l’agent. États par défaut :
Vous pouvez également indiquer des états personnalisés. |
| couleur | Chaîne | Couleur de l’indicateur de présence dans l’espace de travail. Couleurs prises en charge :
|
| Type | Description |
|---|---|
| nul |
openframeAPI.setPresenceIndicator('Available', 'green');
openFrameAPI - setSize(largeur en nombre, hauteur en nombre)
Définit la taille de l’OpenFrame.
| Nom | Type | Description |
|---|---|---|
| largeur | Numéro | Doit avoir une valeur supérieure à zéro. |
| hauteur | Numéro | Doit avoir une valeur supérieure à zéro. |
| Type | Description |
|---|---|
| nul |
openFrameAPI.setSize(300, 370);
openFrameAPI - setSubtitle(sous-titre de la chaîne)
Définit le sous-titre d’OpenFrame.
| Nom | Type | Description |
|---|---|---|
| sous-titre | Chaîne | Une chaîne de 256 caractères ou moins. |
| Type | Description |
|---|---|
| nul |
openFrameAPI.setSubtitle('+18888888888');
openFrameAPI - setTitle(titre de la chaîne)
Définit le titre de l’OpenFrame.
| Nom | Type | Description |
|---|---|---|
| Titre | Chaîne | Une chaîne de 256 caractères ou moins. |
| Type | Description |
|---|---|
| nul |
openFrameAPI.setTitle('Incoming Call');
openFrameAPI - setTitleIcon(icône d’objet)
Définit l’icône de titre d’OpenFrame.
| Nom | Type | Description |
|---|---|---|
| icône | Objet | Objet de paires de valeurs clés. Les clés incluent imageURL, imageTitle, et tout autre contexte nécessaire. Taille maximale : les icônes peuvent avoir un maximum de 16x16 pixels. Les images plus grandes sont automatiquement ajustées à ce maximum. |
| Type | Description |
|---|---|
| nul |
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(largeur)
Définit la largeur de l’OpenFrame.
| Nom | Type | Description |
|---|---|---|
| Largeur | Numéro | Largeur en pixels |
| Type | Description |
|---|---|
| nul |
openFrameAPI.setWidth(100);
openFrameAPI - show()
Rend l’OpenFrame visible dans le TopFrame.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| nul |
openFrameAPI.show()
openFrameAPI - subscribe(événement openFrameAPIEVENT, fonction eventCallback)
S’abonne à l’événement.
| Nom | Type | Description |
|---|---|---|
| event | openFrameAPIEVENT | L’un des événements suivants :
|
| eventCallback | function | Fonction appelée lorsque l’événement spécifié se produit. |
| Type | Description |
|---|---|
| Aucun sauf indications contraires. | La plupart des abonnements d’événements n’ont pas de valeurs de retour, à l’exception des suivants : Dans AWA, l’événement openframe_awa_agent_presence renvoie l’objet de présence :
|
Exemple
function handleIconClick(context) {
console.log("Icon was clicked", context);
}
openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_agent_presence, handleIconClick);
Sortie
// Sample presence object output
// openframe_awa_agent_presence event only
{
"result":{
"presence":{
"name":"Available",
"sys_id":"<SysID>",
"available":true,
"channels":[
{
"name":"Chat",
"available":true,
"sys_id":"<SysID>",
"restrict_update":false
},
{
"name":"Phone",
"available":true,
"sys_id":"<SysID>",
"restrict_update":false
}
]
}
}
}
openFrameAPI - version()
Renvoie la version de l’API OpenFrame.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Chaîne | La version de l’API OpenFrame |
var version = openFrameAPI.version();
console.log("API version " + version);