new ControlChannel(sid)
Abre o canal de controle para a sessão informada. O canal de controle tem o
objetivo de realizar uma comunicação com o navegador Web enquanto o canal
principal de comunicação está em uso.
Poderão ser abertas várias instâncias de ControlChannel para a mesma sessão,
no entanto todas elas compartilham o mesmo canal de dados. Sendo assim, elas
não podem ser utilizadas para o envio de mensagens paralelas e a última
mensagem enviada irá sobrepor as das demais instâncias.
Parameters:
Name | Type | Description |
---|---|---|
sid |
string | Id da sessão cujo canal de controle será aberto. |
Members
-
sid :string
-
Id da sessão que está utilizando este canal de controle.
Type:
- string
Methods
-
<static> formatErrorPayload(error, info)
-
Formata o conteúdo das mensagens "error:" no protocolo do canal de controle.
Parameters:
Name Type Description error
Error | DetailedError Objeto de erro a ser enviado.
info
Object Informações adicionais do erro.
Properties
Name Type Argument Description stackTrace
string | Array.<string> <optional>
Pilha do erro a ser exibida para o usuário.
ticket
string <optional>
Identificação do erro nos logs.
dialogTitle
string <optional>
Título do diálogo de erro.
-
<static> getInstance()
-
Obtém a instância global do gerenciador do canal de controle compartilhada por todos os processos.
Returns:
- Type
- ControlChannel
-
getDataChannelSequence()
-
Número da sequência da requisição em atendimento no canal de dados.
Returns:
- Type
- number
-
getScreenLockedAt()
-
Obtém o timestamp de quando a tela do sistema foi bloqueada. Retorná 0 se a tela não estiver bloqueada.
Returns:
Timestamp de quando a tela foi bloqueada ou zero caso ela não esteja bloqueada.
- Type
- number
-
getScreenLockRequestedAt()
-
Obtém o timestamp de quando o bloqueio da tela do sistema foi solicitado. Retorná 0 se um bloqueio de tela não tiver sido solicitado.
Returns:
Timestamp de quando o bloqueio da tela foi solicitado pelo servidor.
- Type
- number
-
getScreenUnlockedAt()
-
Obtém o timestamp de quando a tela do sistema foi desbloqueada pela última vez. Retorná 0 se a tela nunca tiver sido desbloqueada.
Returns:
Timestamp de quando a tela foi desbloqueada pela última vez.
- Type
- number
-
getSyncStatus()
-
Obtém o estado do sincronismo da última mensagem do canal de controle.
Returns:
- Type
- number
-
isScreenLocked()
-
Verifica se a tela do sistema está bloqueada.
Returns:
True se a tela estiver bloqueada.
- Type
- boolean
-
isScreenLockPending()
-
Verifica se o cliente está pendente de bloquear a tela do usuário.
Returns:
True se a tela tiver que ser bloqueada pelo cliente.
- Type
- boolean
-
lockScreen()
-
Bloqueia a tela do usuário, impedindo o uso do sistema até que o usuário se autentique novamente. Este método exibirá apenas um alerta caso o usuário corrente não puder ter as suas credenciais coletadas pelo sistema.
-
lockSessionByNavigator()
-
Indica que a sessão deve ser bloqueada.
Returns:
Comando a ser enviado para o navegador web para concluir o bloqueio visual.
- Type
- string
-
requestScreenLock()
-
Solicita ao cliente o bloqueio da tela do usuário na primeira interação com o servidor.
Este método deve ser utilizado em situações onde o canal de controle não está ativo e não pode ser executar comandos, como durante a requisição de keep alive ou quando o cliente está esperando a carga de uma nova página.
-
setDataChannelSequence(seq)
-
Informa o número da sequência da requisição em atendimento no canal de dados. Ao informar uma nova sequência, todas as mensagens pendentes serão canceladas.
Parameters:
Name Type Description seq
number -
setSyncStatus(syncStatus [, message])
-
Atualiza o estado do sincronismo da última mensagem do canal de controle. Opcionalmente também pode ser informada uma nova mensagem associada a este estado.
Parameters:
Name Type Argument Description syncStatus
number Novo estado do sincronismo da última mensagem.
message
string <optional>
Nova mensagem associada a este estado.
-
touch()
-
Indica que este canal de controle foi utilizado. Utilizado para indicar se um canal de controle está inativo.
-
unlockSessionByNavigator(userName, password [, newPassword])
-
Indica que a sessão deve ser desbloqueada.
Parameters:
Name Type Argument Description userName
string Nome do usuário.
password
string Senha atual do usuário.
newPassword
string <optional>
Nova senha do usuário. Parâmetro opcional, utilizado apenas quando o bloqueio da sessão exige que o usuário troque a senha para continuar.
Returns:
Comando a ser enviado para o navegador web para concluir o desbloqueio visual.
- Type
- string
-
waitForOtherState(unexpectedState, timeout)
-
Aguarda o canal de controle assumir um estado de sincronismo diferente do informado.
Parameters:
Name Type Description unexpectedState
number Estado de sincronismo não desejado.
timeout
number Tempo máximo de espera em milissegundos.
Returns:
True se foi para um estado diferente do informado.
- Type
- boolean
-
waitForState(expectedState, timeout)
-
Aguarda que o canal de controle chegue ao estado de sincronismo informado.
Parameters:
Name Type Description expectedState
number Estado de sincronismo desejado.
timeout
number Tempo máximo espera em milissegundos.
Returns:
True se chegou no estado esperado.
- Type
- boolean