spContextManager - Cliente
Disponibilize dados de um widget Portal de serviços 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 eles abrirem em uma página Portal de serviços.
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 do 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().
| Nome | Tipo | Descrição |
|---|---|---|
| chave | Cadeia de caracteres | Nome da chave para enviar os dados. As chaves disponíveis incluemagent-chat: envia dados do widget para Bate-papo do agente quando é 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-chave. Por exemplo, {'approval_count': 5}. |
| 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().
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Objeto | Cada chave e objeto de dados associado definido na página. |
function ($scope, spContextManager) {
spContextManager.getContext();
}
spContextManager - getContextForKey(cadeia de caracteres chave, booliano returnPromise)
Retorna os dados do widget associados a uma chave.
| Nome | Tipo | Descrição |
|---|---|---|
| chave | Cadeia de caracteres | Nome da chave da qual obter contexto. As chaves disponíveis incluem: agent-chat: envia dados do widget para Bate-papo do agente. |
| retornaPromessa | Booliano | Sinalizador que determina se os dados associados a uma chave devem ser retornados como uma promessa ou um objeto. Os valores incluem:
|
| Tipo | Descrição |
|---|---|
| Promessa | Se returnPromise for verdadeiro, retornará uma promessa que será cumprida quando outro widget na página inicializar a chave. |
| Objeto | Se returnPromise 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().
| Nome | Tipo | Descrição |
|---|---|---|
| chave | Cadeia de caracteres | Nome da chave para enviar os dados. As chaves disponíveis incluemagent-chat: envia dados do widget para Bate-papo do agente quando é 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-chave. Por exemplo, {'approval_count': 5}. |
| 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);
});
}