---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# spContextManager - Cliente

# spContextManager - Cliente {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 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](https://www.servicenow.com/docs/access?context=configure-va-in-sp&version=xanadu&pubname=xanadu-platform-user-interface&ft:locale=en-US).

## spContextManager -- addContext(Chave de cadeia de caracteres, Contexto de objeto) {#ariaid-title2}

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().
{#SPCM-addContext_S_O__table_dsz_dcz_qhb__entry__3}

| 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 1. Parâmetros]

{#SPCM-addContext_S_O__table_dsz_dcz_qhb} {#SPCM-addContext_S_O__table_esz_dcz_qhb__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 2. Retorna]

{#SPCM-addContext_S_O__table_esz_dcz_qhb}  
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() {#ariaid-title3}

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().
{#SPCM-getContext__table_qgk_tdz_qhb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| Nenhum |   |   |
[Tabela 3. Parâmetros]

{#SPCM-getContext__table_qgk_tdz_qhb} {#SPCM-getContext__table_rgk_tdz_qhb__entry__2}

| Tipo | Descrição |
|-|-|
| Objeto | Cada chave e objeto de dados associado definido na página. |
[Tabela 4. Retorna]

{#SPCM-getContext__table_rgk_tdz_qhb}  

    function ($scope, spContextManager) {
      spContextManager.getContext();
    } 

## spContextManager -- getContextForKey(Chave de cadeia de caracteres, booliano payPromise) {#ariaid-title4}

Retorna os dados do widget associados a uma chave.
{#SPCM-getContextForKey_S_B__table_w2r_jcz_qhb__entry__3}

| 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. {#SPCM-getContextForKey_S_B__ul_ccf_jvc_shb} |
[Tabela 5. Parâmetros]

{#SPCM-getContextForKey_S_B__table_w2r_jcz_qhb} {#SPCM-getContextForKey_S_B__table_x2r_jcz_qhb__entry__2}

| 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}`. |
[Tabela 6. Retorna]

{#SPCM-getContextForKey_S_B__table_x2r_jcz_qhb}  
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) {#ariaid-title5}

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().
{#SPCM-updateContextForKey_S_O__table_mhr_lcz_qhb__entry__3}

| 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 7. Parâmetros]

{#SPCM-updateContextForKey_S_O__table_mhr_lcz_qhb} {#SPCM-updateContextForKey_S_O__table_nhr_lcz_qhb__entry__2}

| Tipo | Descrição |
|-|-|
| vazio |   |
[Tabela 8. Retorna]

{#SPCM-updateContextForKey_S_O__table_nhr_lcz_qhb}  
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);
      });
    } 


