NotifyClient - Cliente
. NotifyClient A API fornece métodos que permitem usar a funcionalidade de telefonia do Notify, como fazer e receber chamadas de um navegador da Web.
Vários NotifyClient os métodos usam uma função de retorno de chamada como um parâmetro. Porque NotifyClient as chamadas de método são feitas de forma assíncrona, esses métodos não podem retornar um valor diretamente. Use a função de retorno de chamada para analisar os dados retornados, como atribuir variáveis ou fazer outras chamadas de API.
NotifyClient - Cliente (Object notifyConfig, booliano initializeVendorClientLazily)
Instancia um novo objeto Notify WebRTC Client.
| Nome | Tipo | Descrição |
|---|---|---|
| InicializeVendorClientLazily | Booliano | Sinalizador que indica se a função autoSelectVendorCallback deve ser usada no SetCallerId() método para definir automaticamente o fornecedor associado do solicitante ( notifyConfig.vendornão precisa ser definido no construtor).
|
| NotifyConfig | Objeto | Objeto JSON que contém as definições de configuração do Notify WebRTC Client. |
| notifyConfig.autoLoadScriptResources | Booliano | Sinalizador que indica como carregar a biblioteca JS principal necessária para o cliente do fornecedor.
|
| notifyConfig.callerId | Número | Número do Notify registrado a ser usado. Não defina diretamente este valor. Use o método notifyClient.setCallerID() para definir este valor. |
| NotifyConfig.forceRefreshToken | Booliano | Sinalizador que indica se os tokens de cliente expirados devem ser renovados automaticamente.
|
| NotifyConfig.skipParentId | Booliano | Sinalizador que indica se o chamador onIncoming deve ser invocado imediatamente para chamadas de entrada.
|
| NotifyConfig.vendor | Constante | Fornecedor ao qual o solicitante pertence.
|
O exemplo a seguir mostra como criar o construtor NotifyClient, registrar vários ouvintes de evento e inicializar o driver do cliente.
jQuery(function () {
var notifyConfig = {
autoLoadScriptResources: true // This will take care of auto loading the JS resources needed by the client (if any)
};
var client = new SNC.Notify.Client(notifyConfig, true); // The second argument ensures that the proper vendor for the given number is auto determined
client.setCallerId('valid_notify_long_number', function () {
// This is called after the vendor has been determined.
if (!notifyConfig.vendor) // Means this number has no compatible vendor
return;
client.addEventListener(SNC.Notify.STD_EVENTS.ONLINE, function () {
// Ability to call is available
});
client.addEventListener(SNC.Notify.STD_EVENTS.OFFLINE, function () {
// Ability to call is _not_ available right now
});
client.addEventListener(SNC.Notify.STD_EVENTS.ERROR, function (msg, code) {
// Some error happened
});
//... register other event handlers here
//Show UI elements which can be used to invoke client.call() and other APIs
client.init(); // This is important to call this.
});
});
NotifyClient - addEventListener(evento de cadeia de caracteres, função fn)
Registra um manipulador de eventos para ouvir mudanças em um cliente do Notify.
Usando este método, você pode registrar vários ouvintes. Cada ouvinte deve ser uma chamada de método separada.
| Nome | Tipo | Descrição |
|---|---|---|
| evento | Cadeia de caracteres | Nome do evento a ser escutado. Em vez de passar cadeias de caracteres, use as constantes definidas em
|
| Tipo | Descrição |
|---|---|
| Função | Função a ser usada para cancelar o registro de um ouvinte. |
Este exemplo mostra como registrar vários ouvintes.
jQuery(function () {
var notifyConfig = {
autoLoadScriptResources: true // This will take care of auto loading the JS resources needed by the client (if any)
};
var client = new SNC.Notify.Client(notifyConfig, true); // The second argument ensures that the proper client for the given number is auto determined
client.setCallerId('valid_notify_long_number', function () {
// This is called after the client has been determined.
if (!notifyConfig.vendor) // Means this number has no compatible client
return;
client.addEventListener(SNC.Notify.STD_EVENTS.ONLINE, function () {
// Ability to call is available
});
client.addEventListener(SNC.Notify.STD_EVENTS.OFFLINE, function () {
// Ability to call is _not_ available right now
});
client.addEventListener(SNC.Notify.STD_EVENTS.ERROR, function (msg, code) {
// Some error happened
});
//... register other event handlers here
client.init(); // This is important to call this.
});
});
Este exemplo mostra como cancelar o registro de um ouvinte.
var dereg = notifyClient.addEventListener(SNC.Notify.STD_EVENTS.ONLINE, function () {
...
});
dereg();
// The event listener function is no longer triggered.
NotifyClient - call(identificador de objeto)
Liga para o número de telefone especificado ou o número de telefone associado a um usuário especificado.
SNC.Notify.Status .| Nome | Tipo | Descrição |
|---|---|---|
| identificador | Objeto | Objeto JSON que contém um número de telefone para chamar ou o sys_id de um usuário WebRTC. Passar um sys_id do usuário faz com que a chamada seja feita por meio da comunicação navegador a navegador. Você pode obter o sys_id do usuário na tabela Sessão do Notify WebRTC. Nota: Se você fornecer um número de telefone e o sys_id do usuário, o método usará somente o número de telefone. |
| Tipo | Descrição |
|---|---|
| vazio |
Este exemplo demonstra a aprovação de um número de telefone como o parâmetro de função.
notifyClient.call({
phoneNumber: "+18001112223"
});
Este exemplo demonstra a aprovação de um sys_id de registro de usuário como o parâmetro de função.
notifyClient.call({
userId: "6816f79cc0a8016401c5a33be04be441"
});
Este exemplo mostra um manipulador de clique de botão.
$j("#pickupCallBtn").on("click", function() {
notifyClient.hangupCall();
});
Este exemplo mostra um manipulador de eventos.
onConnect: function(status) {
// webRTC receives a call connection event (incoming or outgoing).
if (status == SNC.Notify.Status.OPEN) {
setStatus(getTimeStamp() + " -- Successfully established call");
showHangupButton();
}
},
NotifyClient - destruir()
Elimina o cliente Notify atual, tornando-o inutilizável.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| vazio |
NotifyClient - forwardCall(argumento de objeto)
Encaminha uma chamada telefônica de entrada ou saída contínua para um número de telefone diferente ou um cliente WebRTC diferente.
| Nome | Tipo | Descrição |
|---|---|---|
| argumento | Objeto | Objeto JSON que contém as informações necessárias para encaminhar a chamada para um número de telefone ou um cliente WebRTC (sys_id do usuário). Você pode obter este sys_id na tabela Sessão do Notify WebRTC. |
| Tipo | Descrição |
|---|---|
| vazio |
Este exemplo demonstra o encaminhamento de uma chamada para um número de telefone diferente. O atributo dtmf permite enviar tons de discagem DTMF para o número de recebimento.
var arg = {
type: "number",
id: "+17012345678",
dtmf: "1234"
}
client.forwardCall(arg);
Este exemplo demonstra o encaminhamento de uma chamada para um cliente Notify diferente.
var arg = {
type: "userId",
id: "6816f79cc0a8016401c5a33be04be441"
}
client.forwardCall(arg);
NotifyClient - getAvailableClients(retorno de chamada da função)
Retorna uma lista de clientes disponíveis para aceitar chamadas.
Este método exclui o cliente atual da lista. O equivalente Notify-getAvailableClients() o método não filtra nenhum usuário.
| Nome | Tipo | Descrição |
|---|---|---|
| retorno de chamada | Função | Função a ser usada para analisar a lista de clientes. Esta função aceita um único parâmetro, uma matriz de objetos JSON com o seguinte formato: |
| Tipo | Descrição |
|---|---|
| vazio |
NotifyClient - getParentId(cadeia de caracteres CALLID, retorno de chamada da função)
Retorna o identificador de chamada primário para um identificador de chamada especificado, se houver.
Dependendo do provedor de telefonia, pode haver um atraso antes que o identificador de chamada primário seja retornado; portanto, você deve fornecer uma função de retorno de chamada.
| Nome | Tipo | Descrição |
|---|---|---|
| Callid | Cadeia de caracteres | Identificador exclusivo da chamada para a qual retornar o identificador de chamada primário. |
| retorno de chamada | Função | Função que obtém o objeto JSON que contém o identificador de chamada primário ou uma mensagem de erro se o identificador não puder ser obtido após várias tentativas. |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Identificador de chamada primária. |
Este exemplo mostra como usar este método para obter o identificador de chamada primário.
notifyClient.getParentId( callId, function(jsonObj) {} );
Este exemplo mostra o conteúdo do parâmetro jsonObj.
{
parentId: "xyz",
error: "msg"
}
NotifyClient - getStatus()
Retorna o status normalizado da chamada atual.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| Cadeia de caracteres | Status atual da chamada. Os valores retornados pela API do provedor de telefonia são normalizados substituindo o valor do driver retornado pelo valor equivalente, conforme definido em snc.Notify.Status. |
Este exemplo mostra como obter o status do cliente Notify atual.
clientStatus = notifyClient.getStatus();
NotifyClient - hangupCall()
Encerrar a chamada atual.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| vazio |
Este exemplo de como desligar uma chamada.
$j("#pickupCallBtn").on("click", function() {
notifyClient.hangupCall();
});
NotifyClient - init()
Inicializa o driver do cliente.
Por exemplo, ao usar o cliente Twilio, ele invoca o método Twilio.Device.setup() . Chame este método depois que o usuário interagiu com a página. Este processo de inicialização é assíncrono, portanto, você deve fornecer um manipulador de eventos ON-LINE. Este manipulador é chamado quando o processo de configuração é concluído e o sistema está pronto para atender ou fazer chamadas.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| vazio |
Este exemplo mostra como inicializar o cliente Notify.
$j(function() {
notifyClient = new SNC.Notify.Client( notifyConfig );
notifyClient.setCallerId( '+31858889170' );
notifyClient.init();
});
NotifyClient - mudo (booliano mudo)
Ativar ou desativar o mudo do cliente atual.
| Nome | Tipo | Descrição |
|---|---|---|
| muted | Booliano | Ativa ou desativa o mudo da chamada atual.
|
| Tipo | Descrição |
|---|---|
| vazio |
Este exemplo mostra como enviar o mudo da chamada atual.
notifyClient.mute( "true" );
NotifyClient - pickupCall()
Atende e se conecta a uma chamada de entrada de um cliente WebRTC.
Chame este método quando houver uma notificação de uma chamada de entrada.
| Nome | Tipo | Descrição |
|---|---|---|
| Nenhum |
| Tipo | Descrição |
|---|---|
| vazio |
Este exemplo mostra como atender uma chamada.
$j("#pickupCallBtn").on("click", function() {
notifyClient.pickupCall();
});
NotifyClient - sendDtmf (dígitos de cadeia de caracteres)
Envie um ou mais dígitos válidos para DTMF sobre a chamada atual.
| Nome | Tipo | Descrição |
|---|---|---|
| dígitos | Cadeia de caracteres | Um ou mais dígitos válidos para DTMF. |
| Tipo | Descrição |
|---|---|
| vazio |
Este exemplo mostra como enviar sinais DTMF para a chamada atual.
notifyClient.SendDtmf( "1246AF" ) {} );
NotifyClient - setCallerId(Valor da cadeia de caracteres, função autoSelectVendorCallback)
Define o ID do chamador para a sessão do cliente atual.
Você pode mudar ou atualizar o ID do chamador a qualquer momento, no entanto, o ID do chamador deve pertencer ao mesmo fornecedor.
| Nome | Tipo | Descrição |
|---|---|---|
| valor | Cadeia de caracteres | Número de telefone a ser usado para fazer e receber chamadas. |
| AutoSelectVendorCallback | Função | Opcional. initializeVendorClientLazilydeve ser definido como "verdadeiro" no construtor para usar esta função, caso contrário, um erro será gerado. Nome da função de retorno de chamada a ser chamada quando o fornecedor for definido automaticamente para o número de telefone especificado. Com esta opção, o fornecedor não precisa ser especificado no construtor ( notifyConfig.vendor). A seleção automática de fornecedor é uma operação assíncrona. Portanto, este retorno de chamada é necessário para indicar quando é seguro chamar notifyConfig.init() , pois este método requer que o fornecedor seja definido antes de ser chamado. Além disso, você também deve verificar se notifyConfig.vendorfoi definido no retorno de chamada para garantir que um fornecedor tenha sido especificado. |
| Tipo | Descrição |
|---|---|
| vazio |
Este exemplo mostra como definir o ID do chamador. Este exemplo pressupõe que o fornecedor está definido no construtor.
$j(function() {
notifyClient = new SNC.Notify.Client( notifyConfig );
notifyClient.setCallerId( '+31858889170' );
notifyClient.init();
});
NotifyClient - setClientAvailable (booliano disponível)
Define a disponibilidade de um Client Agent WebRTC ativo.
Este tipo de disponibilidade é diferente de um agente que está em uma chamada. Um cliente WebRTC ativo pode estar conectado e não em uma chamada, mas pode não querer receber chamadas.
Chamar este método atualiza Disponível Valor do campo no registro Notify Client Connected Session [notify_client_session] associado a esta sessão do cliente. Você pode obter uma lista de clientes disponíveis usando GetAvailableClients() método.
| Nome | Tipo | Descrição |
|---|---|---|
| disponível | booliano | Sinalizador que indica se um cliente WebRTC ativo deseja receber chamadas.
|
| Tipo | Descrição |
|---|---|
| vazio |