Compartilhar via


Enviar contexto personalizado durante o chat ao vivo

O contexto personalizado é uma coleção de pares de chave ou valor. Somente valores primitivos são permitidos para qualquer chave. As chaves devem corresponder às variáveis de contexto criadas para o fluxo de trabalho associado. Se nenhuma variável de contexto tiver sido criada no fluxo de trabalho ao vivo com um nome lógico correspondente, as variáveis serão criadas no tempo de execução assumindo o tipo como String. O provedor de contexto personalizado seria invocado pelo widget de chat ao vivo quando um novo chat fosse iniciado. Como os valores diferenciam maiúsculas de minúsculas, use a correspondência exata para passá-los para as variáveis de contexto. Mais informações: Considerações sobre variáveis de contexto

Importante

  • O setContextProvider tem suporte apenas para chat não autenticado. Para bate-papo autenticado, você deve usar o JSON Web Token (JWT). Mais informações: Enviar tokens de autenticação
  • Você pode passar apenas 100 variáveis de contexto personalizadas durante cada sessão de chat.

Quando um cliente inicia um chat no portal, você pode passar o contexto personalizado para o Omnicanal para Customer Service. Esse contexto personalizado pode ser usado para exibir informações na interface do usuário e criar regras de roteamento que eventualmente determinam a fila para a qual você deve rotear os chats.

Siga estas etapas para enviar contexto personalizado ao iniciar um chat:

  1. Os métodos do SDK do chat ao vivo devem ser invocados depois que o evento lcw:ready for gerado. Você pode escutar esse evento adicionando seu próprio ouvinte de eventos no objeto window.
  2. Depois que o lcw:ready evento for gerado, registre um provedor de contexto personalizado com chat ao vivo usando o método setContextProvider .
  3. Inicie o bate-papo usando o método startChat .

Código de exemplo

function contextProvider(){
	//Here it is assumed that the corresponding work stream would have context variables with logical name of 'contextKey1', 'contextKey2', 'contextKey3'. If no context variable exists with a matching logical name, items are created assuming Type:string               
	return {
			'contextKey1': 'contextValue1', // string value
			'contextKey2': 12.34, // number value
			'contextKey3': true // boolean value
	};
}

window.addEventListener("lcw:ready", function handleLivechatReadyEvent(){
	// Handle LiveChat Ready event
	// SDK methods are ready for use now
	// Setting custom context provider to be used with Chat for Dynamics 365
	// The custom context provided by custom context provider can be used for routing the chat to a particular queue
	Microsoft.Omnichannel.LiveChatWidget.SDK.setContextProvider(contextProvider);
	// Starting a new chat
	Microsoft.Omnichannel.LiveChatWidget.SDK.startChat();
});

window.addEventListener("lcw:error", function handleLivechatErrorEvent(errorEvent){
	// Handle LiveChat SDK error event
	console.log(errorEvent);
});

Para obter informações sobre como exibir as variáveis de contexto no Resumo da conversa, consulte Exibir contexto personalizado.

setContextProvider
getContextProvider
removeContextProvider
Referência da API JavaScript do SDK do chat ao vivo
Configurar variáveis de contexto para um bot