openFrameAPI - Cliente

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 13 min. de leitura
  • A openFrameAPI fornece métodos que interagem com o OpenFrame. O OpenFrame é uma estrutura onipresente que os parceiros de comunicação podem usar para integrar seus sistemas na plataforma ServiceNow.

    Um dos principais requisitos é a capacidade de conectar e servir código de diferentes domínios que podem se conectar perfeitamente com subsistemas parceiros. Esta conexão entre domínios é necessária para manter conexões e retornos de chamada registrados em sistemas de comunicação sem problemas entre domínios.

    O OpenFrame tem duas partes significativas: uma que reside na aplicação ServiceNow (conhecida como TopFrame) e esta API que é originada da aplicação do parceiro. Esta API tem os métodos necessários para se comunicar com o TopFrame e controlar os recursos visuais do OpenFrame.
    Nota:
    Para se manter atualizado com referência à biblioteca do OpenFrame, use o seguinte URI de recurso: https://[servicenow instance]/scripts/openframe/latest/openFrameAPI.min.js.

    openFrameAPI - getAWAAgentPresence (cadeia de caracteres bem-sucedida, falha de cadeia de caracteres)

    Retorna o estado de presença atual do agente conectado.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    êxito Cadeia de caracteres Se o método for bem-sucedido, nome da função de retorno de chamada a ser invocada.
    falha Cadeia de caracteres Se o método falhar, nome da função de retorno de chamada a ser invocada.
    Tabela 2. Retorna
    Tipo Descrição
    presença Resultados passados para a função de retorno de chamada de sucesso pela infraestrutura openFrame.

    Tipo de dados: objeto

    "presence": {  
      "available": Boolean, 
      "channels": [Array],
      "name": "String", 
      "sys_id": "String"
    }
    presença.disponível Sinalizador que indica se o agente associado está disponível.
    Valores válidos:
    • verdadeiro: o agente está disponível.
    • falso: o agente não está disponível.

    Tipo de dados: booliano

    presença.canais Lista de canais de comunicação disponíveis com o agente.

    Tipo de dados: matriz de objetos

    "channels": [
      { 
        "available": Boolean,
        "name": "String",
        "restrict_update": Boolean,
        "service_channel_type": "String",
        "sys_id": "String"
      }
    ]
    presença.canais.disponíveis Sinalizador que indica se o canal está disponível.
    Valores válidos:
    • verdadeiro: o canal está disponível.
    • falso: o canal não está disponível.

    Tipo de dados Booliano

    presence.channels.name Nome do canal, como Bate-papo ou Telefone.

    Tipo de dados: cadeia de caracteres

    presença.canais.restrict_update Sinalizador que indica se o usuário pode restringir atualizações para o canal.
    Valores válidos:
    • verdadeiro: o usuário pode restringir atualizações para o canal.
    • falso: o usuário não pode restringir atualizações para o canal.

    Tipo de dados Booliano

    presença.canais.service_channel_type Tipo do canal de serviço.

    Tipo de dados: cadeia de caracteres

    presença.canais.sys_id Sys_id do registro do canal. Localizado na tabela Canais de serviço [awa_service_channel].

    Tipo de dados: cadeia de caracteres

    presence.name Nome do estado de presença do agente.

    Tipo de dados: cadeia de caracteres

    presença.sys_id Sys_id do registro do estado de presença. Localizado na tabela Estados de presença [awa_presence_state].

    Tipo de dados: cadeia de caracteres

    O exemplo de código a seguir mostra como chamar este método.

    function failure(data)
    {
      console.log("failure: " + JSON.stringify(data));
    }
     
    function success(data)
    {
      console.log("success: " + JSON.stringify(data));
    }
     
    openFrameAPI.getAWAAgentPresence(success, failure)

    Resposta à função de retorno de chamada de sucesso:

    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 - ocultar ()

    Oculta o OpenFrame no TopFrame.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 4. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.hide()

    openFrameAPI - init(Configuração de objeto, retorno de chamada de sucesso da função, retorno de chamada da falha de função)

    Inicializa o OpenFrame. Este deve ser o primeiro método a ser chamado.

    Este método inicializa a comunicação com o TopFrame e inicializa todos os elementos visuais passados no parâmetro config.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    config Objeto Pares de nome-valor a serem usados durante o processo de inicialização.
    Possíveis chaves:
    • altura
    • subTitle
    • título
    • titleIcon
    • largura
    Todas as chaves são opcionais. Passe um objeto vazio se não quiser definir esses pares de chave-valor.
    sucessoRetorno de chamada função Nome da função de retorno de chamada a ser usada se o método de inicialização for bem-sucedido. A configuração do OpenFrame armazenada no sistema é passada como um parâmetro para a função de retorno de chamada.
    falhaRetorno de chamada função Nome da função de retorno de chamada a ser usada se o método de inicialização falhar.
    Tabela 6. Retorna
    Tipo Descrição
    vazio
    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(retorno de chamada da função)

    Verifica se o OpenFrame está visível no TopFrame.

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    retorno de chamada função A função de retorno de chamada recebe um parâmetro com um valor verdadeiro ou falso. Verdadeiro se o OpenFrame estiver visível e falso se não estiver visível.
    Tabela 8. Retorna
    Tipo Descrição
    vazio
    function callback(isVisible) {
    console.log(isVisible)
    }
    openFrameAPI.isVisible(callback)

    openFrameAPI - openCustomURL(Detalhes da cadeia de caracteres)

    Abre uma URL personalizada na interface IU16.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    URL Cadeia de caracteres Texto da URL personalizada.

    Tamanho máximo: 2083 caracteres

    Tabela 10. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.openCustomURL('10_cool_things.do');
    

    openFrameAPI - openServiceNowForm(Detalhes do objeto)

    Abre um URL de formulário.

    Quando um agente recebe uma chamada de entrada, a janela do OpenFrame exibe informações como conta, contato ou consumidor. Clicar em um link na janela do OpenFrame exibe o registro correspondente.
    • Na interface da plataforma, esta API abre um URL de formulário no TopFrame.
    • Para Espaço do agente, esta API oferece suporte ao gerenciamento da guia de interação. Em Espaço do agente, um registro de interação é aberto em uma guia primária e o registro de entidade especificado é aberto em uma guia secundária na guia de interação.
    Tabela 11. Parâmetros
    Nome Tipo Descrição
    detalhes Objeto Pares de chave-valor que identificam a URL do formulário a ser aberto.
    "details": {
      "entity": "String";
      "interaction_sys_id": "String";
      "query": "String"
    }
    detalhes.entidade Cadeia de caracteres Nome da tabela ou entidade.
    details.interaction_sys_id Cadeia de caracteres Opcional. Sys_id do registro de interação a ser aberto como guia primária em Espaço do agente.
    Nota:
    Na interface da plataforma, o interaction_sys_id é ignorado.
    detalhes.consulta Cadeia de caracteres Consulta para identificar o registro a ser aberto, como: query:'sys_id=<record_sys_id> ' .
    Tabela 12. Retorna
    Tipo Descrição
    vazio

    O exemplo a seguir mostra o uso básico na plataforma:

    openFrameAPI.openServiceNowForm({entity:'customer_account', 
    query:'sys_id=447832786f0331003b3c498f5d3ee452', 'interaction_sys_id':'3be092313b711300758ce9b534efc4dd'});

    O exemplo a seguir mostra como usar o parâmetro query para criar um novo registro com dados fornecidos no formulário usando sysparm_query e uma consulta codificada para preencher os campos de nome e sobrenome no espaço:

    openFrameAPI.openServiceNowForm({ entity: 'sys_user',
    query: 'sys_id=-1&sysparm_query=first_name=Ivan^last_name=Greggor' });

    openFrameAPI - openServiceNowFormwithChildTabIf()

    Abre um formulário ServiceNow com uma guia secundária se invocado em um espaço ou abre uma entidade se invocado na interface UI16.

    Tabela 13. Parâmetros
    Nome Tipo Descrição
    openServiceNowFormwithChildTab Objeto Define se a API abre um formulário ServiceNow com uma guia secundária se invocada em um espaço ou abre uma entidade se invocada na interface UI16.
    openFrameAPI.openServiceNowFormwithChildTablf({
    	entity: “String”,
    	sys_id: “String”, 	
    	parent_entity: “String”,	
    	parent_entity_sys_id: “String”,
    openServiceNowFormwithChildTab.entity Cadeia de caracteres Nome da tabela.
    openServiceNowFormwithChildTab.sys_id Cadeia de caracteres Sys_id do registro a ser aberto.
    openServiceNowFormwithChildTab.parent_entity Cadeia de caracteres Nome da tabela a ser aberta como uma guia primária.
    openServiceNowFormwithChildTab.parent_entity_sys_id Cadeia de caracteres Sys_id do registro primário a ser aberto.
    Tabela 14. Retorna
    Tipo Descrição
    Nenhum(a)

    O exemplo a seguir abre a entidade primária como uma guia primária em um espaço configurado ou abre apenas a entidade se invocada em IU16.

    openFrameAPI.openServiceNowFormwithChildTablf({
    	entity: “customer_account”, 
    	sys_id: “447832786f0331003b3c498f5d3ee452”, 	
    	parent_entity: “interaction”, 
    	parent_entity_sys_id: “3be092313b711300758ce9b534efc4dd”
    });

    openFrameAPI - openServiceNowList(Detalhes do objeto)

    Abre um URL de lista na interface IU16.

    Tabela 15. Parâmetros
    Nome Tipo Descrição
    detalhes Objeto Pares de chave-valor que descrevem o conteúdo a ser usado ao abrir o URL da lista.

    Valores válidos:

    Tabela 16. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.openServiceNowList({entity:'case', query:'active=true'});

    openFrameAPI - setFrameMode(mode)

    Define o modo OpenFrame.

    O modo aprovado nesta API:
    • Define o ícone apropriado no cabeçalho: recolher ou expandir
    • Gera o evento relevante para CTI:
      • openFrameAPI.EVENTS.COLLAPSO
      • openFrameAPI.EVENTOS.EXPAND
    Tabela 17. Parâmetros
    Nome Tipo Descrição
    Modo Cadeia de caracteres Defina o Modo OpenFrame. Opções enumeradas:
    1. openFrameAPI.FRAME_MODE.COLLAPSO
    2. openFrameAPI.FRAME_MODE.EXPAND
    Tabela 18. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.setFrameMode(openFrameAPI.FRAME_MODE.COLLAPSE);
    

    openFrameAPI - setHeight(height)

    Define a altura do OpenFrame.

    Tabela 19. Parâmetros
    Nome Tipo Descrição
    Altura Número Altura em pixels
    Tabela 20. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.setHeight(100);

    openFrameAPI - setIcons(Ícones de matriz)

    Define ícones no cabeçalho do OpenFrame que são colocados ao lado do ícone de fechamento.

    Tabela 21. Parâmetros
    Nome Tipo Descrição
    ícones Matriz de objetos Uma lista de configurações de ícone, em que cada configuração de ícone é um objeto com valores de chave imageURL, imageTitlee qualquer outro contexto necessário.

    Tamanho máximo: os ícones podem ter no máximo 16x16 pixels. Imagens maiores são ajustadas automaticamente para este máximo.

    Tabela 22. Retorna
    Tipo Descrição
    vazio
    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(presença)

    Define o indicador de presença para exibir a disponibilidade do agente em um espaço.

    Para obter mais informações sobre como configurar o OpenFrame, consulte Como criar uma configuração do OpenFrame

    Tabela 23. Parâmetros
    Nome Tipo Descrição
    Estado Cadeia de caracteres Estado de presença do agente.

    Estados padrão:

    • Disponível
    • Ausente
    • Off-line

    Você também pode especificar estados personalizados.

    cor Cadeia de caracteres Cor do indicador de presença no espaço.

    Cores compatíveis:

    • vermelho
    • laranja
    • cinza
    • verde
    Tabela 24. Retorna
    Tipo Descrição
    vazio
    openframeAPI.setPresenceIndicator('Available', 'green');

    openFrameAPI - setSize(largura do número, altura do número)

    Define o tamanho do OpenFrame.

    Tabela 25. Parâmetros
    Nome Tipo Descrição
    largura Número Deve ser maior que zero.
    altura Número Deve ser maior que zero.
    Tabela 26. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.setSize(300, 370);

    openFrameAPI - setSubtitle(cadeia de caracteres subTitle)

    Define a legenda do OpenFrame.

    Tabela 27. Parâmetros
    Nome Tipo Descrição
    subTitle Cadeia de caracteres Uma cadeia de caracteres de 256 caracteres ou menos.
    Tabela 28. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.setSubtitle('+18888888888');

    openFrameAPI - setTitle(cadeia de caracteres título)

    Define o título do OpenFrame.

    Tabela 29. Parâmetros
    Nome Tipo Descrição
    título Cadeia de caracteres Uma cadeia de caracteres de 256 caracteres ou menos.
    Tabela 30. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.setTitle('Incoming Call');

    openFrameAPI – setTitleIcon(ícone de objeto)

    Define o ícone de título do OpenFrame.

    Tabela 31. Parâmetros
    Nome Tipo Descrição
    ícone Objeto Objeto de pares de chave-valor. As chaves incluem imageURL, imageTitlee qualquer outro contexto necessário.

    Tamanho máximo: os ícones podem ter no máximo 16x16 pixels. Imagens maiores são ajustadas automaticamente para este máximo.

    Tabela 32. Retorna
    Tipo Descrição
    vazio
    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)

    Define a largura do OpenFrame.

    Tabela 33. Parâmetros
    Nome Tipo Descrição
    Largura Número Largura em pixels
    Tabela 34. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.setWidth(100);

    openFrameAPI - mostrar ()

    Torna o OpenFrame visível no TopFrame.

    Tabela 35. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 36. Retorna
    Tipo Descrição
    vazio
    openFrameAPI.show()

    openFrameAPI - inscreva-se (evento openFrameAPIEVENT, função eventCallback)

    Assina um evento especificado.

    Tabela 37. Parâmetros
    Nome Tipo Descrição
    evento openFrameAPIEVENT O evento a ser assinado:
    • openframe_agent_off_interaction: indica a presença de um agente no bate-papo como desativado ou disponível.
    • openframe_awa_agent_presence: em Atribuição avançada de trabalho (AWA), este evento ocorre quando há qualquer mudança no estado de presença do agente. Os desenvolvedores da Integração de telefonia e computação (CTI) podem assinar este evento para receber mudanças de estado de presença.
    • openframe_awa_workitem_accepted: ocorre quando um item de trabalho é aceito por um agente.
    • openframe_awa_workitem_offered: ocorre quando um item de trabalho é oferecido a um agente.
    • openframe_awa_workitem_rejected: ocorre quando um item de trabalho é rejeitado por um agente.
    • openframe_before_destroy: ocorre antes que o TopFrame seja descarregado.
    • openframe_collapse: ocorre quando o ícone de recolhimento é selecionado no cabeçalho do OpenFrame.
    • openframe_communication: específico da aplicação e pode ser personalizado.
    • openframe_communication_failure: ocorre quando a comunicação com o TopFrame falha.
    • openframe_expand: ocorre quando o ícone de expansão é selecionado no cabeçalho do OpenFrame.
    • openframe_header_icon_clicked: obsoleto. Em vez disso, use openframe_icon_clicked ou openframe_title_icon_clicked.
    • openframe_hidden: ocorre quando o OpenFrame está oculto.
    • openframe_icon_clicked: ocorre quando qualquer ícone diferente do ícone de fechamento é selecionado no rodapé do OpenFrame. O retorno de chamada recebe o objeto de ícone como um parâmetro.
    • openframe_shown: ocorre quando o OpenFrame é mostrado.
    • openframe_title_icon_clicked: ocorre quando o ícone de título é selecionado no OpenFrame. O retorno de chamada recebe o objeto titleIcon como um parâmetro.
    eventCallback função Função a ser chamada quando ocorre o evento especificado.
    Tabela 38. Retorna
    Tipo Descrição
    results A maioria das assinaturas de evento não tem valores de retorno. As assinaturas de evento que retornam valores são descritas nas entradas da tabela a seguir.
    openframe_awa_agent_presence Em AWA, o evento openframe_awa_agent_presence retorna o objeto de presença :
    "presence":{
      "available": Boolean,
      "channels":[
        {
          "available": Boolean,
          "name": "String",
          "restrict_update": Boolean,
          "sys_id": "String"
        }
      ],
      "name": "String",
      "sys_id": "String"
    }
    presence: Informações sobre o estado de presença atual e o canal de um agente.
    • presence.available: Sinalizador que indica se o agente está disponível.
    • presence.channels: Lista de objetos que descreve os canais de comunicação disponíveis com o agente.
      • presence.channels.available: Sinalizador que indica se o canal está disponível.
      • presence.channels.name: Nome do canal, como Bate-papo ou Telefone.
      • presence.channels.restrict_update: Sinalizador que indica se o usuário pode restringir atualizações.
      • presence.channels.sys_id: sys_id do canal. Localizado na tabela Canais de serviço [awa_service_channel].
    • presence.name: Nome do estado de presença do agente.
    • presence.sys_id: sys_id do estado de presença. Localizado na tabela Estados de presença [awa_presence_state].
    openframe_awa_workitem_accepted e openframe_awa_workitem_offered Em AWA, os eventos openframe_awa_workitem_accepted e openframe_awa_workitem_offered retornam o objeto workItem :
    "workItem": {
      "document": {
        "sys_id": "String",
        "table": "String"
      },
      "isQueueTransferred": Boolean,
      "previousWorkItem": "String",
      "serviceChannel": {
        "name": "String",
        "sys_id": "String"
      },
      "size": Number,
      "sys_id": "String"
    }

    workItem: informações sobre o item de trabalho associado ao evento.

    • workItem.document: Lista de documentos associados à tarefa de item de trabalho.
      • workItem.document.sys_id: Sys_id do documento atribuído à tarefa de item de trabalho.
      • workItem.document.table: Nome da tabela de documentos atribuída à tarefa.
    • workItem.isQueueTransferred: indica se o item de trabalho foi transferido para a fila. Defina como verdadeiro se o item de trabalho for transferido da fila e falso se não for. Para obter mais informações sobre transferências de fila, consulte Transfer a chat to another queue.
    • workItem.previousWorkItem: Sys_id do item de trabalho anterior para o mesmo ID de documento. Para os itens de trabalho de não transferência, este valor está vazio.
    • workItem.serviceChannel: Lista de canais de serviço associados à tarefa de item de trabalho.
      • workItem.serviceChannel.name: Nome do canal de serviço, como Bate-papo ou Telefone.
      • workItem.serviceChannel.sys_id: Sys_id do canal de serviço.
    • workItem.size: capacidade do agente usada quando este item de trabalho é atribuído ao agente.
    • workItem.sys_id: Sys_id do item de trabalho que foi aceito ou oferecido.
    openframe_awa_workitem_rejected Em AWA, o evento openframe_awa_workitem_rejected retorna o objeto workItem :
    "workItem": {
      "document": {
        "sys_id": "String",
        "table": "String"
      },
      "isQueueTransferred": Boolean,
      "previousWorkItem": "String",
      "rejection": {
        "reason": "String",
        "sys_id": "String"
      },
      "serviceChannel": {
        "name": "String",
        "sys_id": "String"
      },
      "size": Number,
      "sys_id": "String"
    }

    workItem: informações sobre o item de trabalho associado ao evento.

    • workItem.document: Lista de documentos associados à tarefa de item de trabalho.
      • workItem.document.sys_id: Sys_id do documento atribuído à tarefa de item de trabalho.
      • workItem.document.table: Nome da tabela de documentos atribuída à tarefa.
    • workItem.isQueueTransferred: indica se o item de trabalho foi transferido para a fila. Defina como verdadeiro se o item de trabalho for transferido da fila e falso se não for. Para obter mais informações sobre transferências de fila, consulte Transfer a chat to another queue.
    • workItem.previousWorkItem: Sys_id do item de trabalho anterior para o mesmo ID de documento. Para os itens de trabalho de não transferência, este valor está vazio.
    • workItem.rejection: Lista de motivos para a rejeição do item de trabalho.
      • workItem.rejection.reason: Nome do motivo para rejeitar os itens de trabalho.
      • workItem.rejection.sys_id: Sys_id do motivo da rejeição. Localizado na tabela Motivos de rejeição [awa_reject_reason].
    • workItem.serviceChannel: Lista de canais de serviço associados à tarefa de item de trabalho.
      • workItem.serviceChannel.name: Nome do canal de serviço, como Bate-papo ou Telefone.
      • workItem.serviceChannel.sys_id: Sys_id do canal de serviço.
    • workItem.size: capacidade do agente usada quando este item de trabalho é atribuído ao agente.
    • workItem.sys_id: Sys_id do item de trabalho que foi aceito ou oferecido.

    O exemplo de código a seguir mostra como chamar este método para um evento openframe_awa_agent_presence.

    function handleIconClick(context) {
    console.log("Icon was clicked", context);
    }
    openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_agent_presence, handleIconClick);

    Saída:

    // 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
            }
          ]
        }
      }
    }

    O exemplo de código a seguir mostra como chamar este método para um evento openframe_awa_workitem_accepted.

    function handleIconClick(context) {
    console.log("Icon was clicked", context);
    }
    openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_workitem_accepted, handleIconClick);

    Saída:

    // 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
        }
      }
    }

    O exemplo de código a seguir mostra como chamar este método para um evento openframe_awa_workitem_rejected.

    function handleIconClick(context) {
    console.log("Icon was clicked", context);
    }
    openFrameAPI.subscribe(openFrameAPI.events.openframe_awa_workitem_rejected, handleIconClick);

    Saída:

    // 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 - versão ()

    Retorna a versão da API do OpenFrame.

    Tabela 39. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 40. Retorna
    Tipo Descrição
    Cadeia de caracteres A versão da API do OpenFrame
    var version = openFrameAPI.version();
    
    console.log("API version " + version);