spContextManager - Cliente

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 3 min. de leitura
  • Torna os dados de um widget Portal de serviços disponíveis para outras aplicações e serviços em uma página Portal de serviços. Por exemplo, passe dados de widget para Bate-papo do agente quando ele abrir em uma página Portal de serviços.

    A API spContextManager é um serviço AngularJS que você pode usar em Portal de serviços client scripts de widget.

    As chaves passadas para esta API são exclusivas por página. Por exemplo, se a chave "agent-chat" já estiver inicializada por outro widget na página por meio do método addContext(), você deverá usar o método updateContextForKey() para atualizar os dados da chave. As chaves disponíveis incluem: agent-chat: envia dados de widget para Bate-papo do agente.

    Para obter mais informações sobre como passar dados para Bate-papo do agente, consulte Configuração do Bate-papo do agente no Portal de serviços.

    spContextManager – addContext(Chave de cadeia de caracteres, Contexto de objeto)

    Inicializa uma chave e adiciona dados de widget como o valor. Por exemplo, adicione dados à chave "agent-chat" para disponibilizá-los para Bate-papo do agente.

    Use este método na primeira vez em que os dados forem adicionados a uma chave específica em uma página Portal de serviços. Se a chave já estiver sendo usada por outro widget na página, use o método updateContextForKey().

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    chave Cadeia de caracteres Nome da chave para enviar os dados.

    As chaves disponíveis incluemagent-chat: Envia dados de widget para Bate-papo do agente quando ele é aberto em uma página Portal de serviços.

    contexto Objeto Dados de widget no formato JSON a serem enviados para a aplicação ou serviço especificado no parâmetro de chave. Por exemplo, {'approval_count': 5}.
    Tabela 2. Retorna
    Tipo Descrição
    vazio

    Passe approval_count para Bate-papo do agente. Quando um usuário inicia uma conversa Bate-papo do agente na página inicial de Portal de serviços, o sistema anexa &sysparm_approval_count=5 ao URL do Bate-papo do agente iframe.

    function ($scope, spContextManager) {
        spContextManager.addContext('agent-chat', {
            'approval_count': 5       
        });
    };

    spContextManager – getContext()

    Retorna cada chave e objeto de dados associado definido por qualquer widget na página.

    Usar este método pode afetar o desempenho. Use este método para entender quais chaves são inicializadas na página e para obter seus valores atuais. Se você souber qual chave precisa acessar, use o método getContextForKey().

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 4. Retorna
    Tipo Descrição
    Objeto Cada chave e objeto de dados associado definido na página.
    function ($scope, spContextManager) {
      spContextManager.getContext();
    } 

    spContextManager – getContextForKey(Chave de cadeia de caracteres, booliano payPromise)

    Retorna os dados do widget associados a uma chave.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    chave Cadeia de caracteres Nome da chave da qual obter contexto. As chaves disponíveis incluem: agent-chat: envia dados de widget para Bate-papo do agente.
    retornarPromessa Booliano Sinalizador que determina se os dados associados a uma chave devem ser retornados como uma promessa ou um objeto. Os valores incluem:
    • Verdadeiro: retorna os dados como uma promessa. Use esta opção se outro widget na página usar o método addContext() para inicializar a mesma chave. O retorno de uma promessa evita o retorno de um objeto indefinido quando a chave ainda não foi inicializada.
    • Falso: retorna um objeto que contém os dados associados à chave.
    Tabela 6. Retorna
    Tipo Descrição
    Promessa Se retornaPromise for verdadeiro, retornará uma promessa que é cumprida quando outro widget na página inicializa a chave.
    Objeto Se retornaPromise for falso, retornará um objeto que contém os dados associados à chave. Por exemplo, {approval_count: 5}.

    Passe approval_count para Bate-papo do agente. Quando um usuário inicia uma conversa Bate-papo do agente na página inicial de Portal de serviços, o sistema anexa &sysparm_approval_count=5 ao URL do Bate-papo do agente iframe.

    function ($scope, spContextManager) {
      spContextManager.getContextForKey('agent-chat', true).then(function(context) {
        context = context || {};
        context.approval_count = 5; 
        spContextManager.updateContextForKey('agent-chat', context);
      });
    } 

    spContextManager - updateContextForKey(Chave de cadeia de caracteres, Contexto de objeto)

    Envia dados para uma chave existente. Por exemplo, se outro widget na página usar a chave "agent-chat" para passar dados para a configuração Bate-papo do agente, você deverá atualizar o contexto da chave em vez de usar o método addContext().

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    chave Cadeia de caracteres Nome da chave para enviar os dados.

    As chaves disponíveis incluemagent-chat: Envia dados de widget para Bate-papo do agente quando ele é aberto em uma página Portal de serviços.

    contexto Objeto Dados de widget no formato JSON a serem enviados para a aplicação ou serviço especificado no parâmetro de chave. Por exemplo, {'approval_count': 5}.
    Tabela 8. Retorna
    Tipo Descrição
    vazio

    Passe approval_count para Bate-papo do agente. Quando um usuário inicia uma conversa Bate-papo do agente na página inicial de Portal de serviços, o sistema anexa &sysparm_approval_count=5 ao URL do Bate-papo do agente iframe.

    function ($scope, spContextManager) {
      spContextManager.getContextForKey('agent-chat', true).then(function(context) {
        context = context || {};
        context.approval_count = 5; 
        spContextManager.updateContextForKey('agent-chat', context);
      });
    }