Mensagens sonoras de acesso iDFace

O controlador de acesso iDFace possui a capacidade de reproduzir mensagens sonoras como resposta a eventos de identificação. O usuário pode escolher entre deixar o recurso desabilitado, utilizar as mensagens de voz padrão do dispositivo ou carregar seus próprios arquivos de áudio.

Configuração do modo de funcionamento

Os eventos que possuem feedback sonoro, e as respectivas mensagens padrão, estão listados na tabela abaixo. Na terceira coluna da tabela, pode-se ver o nome do parâmetro que deve ser utilizado para configurar a mensagem de cada evento e, na quarta coluna, são apresentadas as entradas válidas.

Obs: Todos os parâmetros de configuração fazem parte do módulo buzzer.

Eventos Mensagem sonora padrão Parâmetros Entradas válidas
Não identificado "Usuário não identificado" audio_message_not_identified disabled, default ou custom
Autorizado "Acesso liberado" audio_message_authorized disabled, default ou custom
Não autorizado "Acesso negado" audio_message_not_authorized disabled, default ou custom
Use máscará "Por favor, use máscará" audio_message_use_mask disabled, default ou custom

Quando inserida a entrada disabled, a resposta sonora para aquele evento estará desativada. Se inserida a entrada default, a resposta sonora será a mensagem sonora padrão do dispositivo. E se for inserido custom, a resposta sonora será o áudio carregado pelo usuário.

Exemplo de requisição

Esta requisição ativa as respostas sonoras padrões de identificação.

$.ajax({
    url: "/set_configuration.fcgi?session=" + session,
    type: 'POST',
    contentType: 'application/json',
    data: JSON.stringify(
        {
            "buzzer": {
                "audio_message_not_identified": "default",
                "audio_message_authorized": "default",
                "audio_message_not_authorized": "default",
                "audio_message_use_mask": "default"
            }
        }
    )
});

Exemplo de requisição

Esta requisição desabilita as repostas sonoras de identificação.

$.ajax({
    url: "/set_configuration.fcgi?session=" + session,
    type: 'POST',
    contentType: 'application/json',
    data: JSON.stringify(
        {
            "buzzer": {
                "audio_message_not_identified": "disabled",
                "audio_message_authorized": "disabled",
                "audio_message_not_authorized": "disabled",
                "audio_message_use_mask": "disabled"
            }
        }
    )
});

Alterar o volume de reprodução do áudio

Além de poder escolher o áudio, é possível escolher o volume em que a resposta sonora será emitida. O parâmetro responsável por ajustar o volume é o audio_message_volume_gain. Existem 3 níveis de volume possíveis: normal, médio e alto. Normal é o volume padrão de fábrica e ele corresponde ao valor de entrada 1. Médio corresponde ao valor 2 e alto corresponde a 3. Um exemplo de requisição para ajustar o volume está mostrado abaixo:

Exemplo de requisição

Esta requisição ajusta o volume das mensagens sonoras para médio.

$.ajax({
    url: "/set_configuration.fcgi?session=" + session,
    type: 'POST',
    contentType: 'application/json',
    data: JSON.stringify(
        {
            "buzzer": {
                "audio_message_volume_gain": "2"
            }
        }
    )
});

Carregamento da mensagem sonora customizada

Conforme mencionado acima, é possível utilizar áudios customizados nas mensagens sonoras de identificação. Para isso, é preciso carregar o áudio desejado no dispositivo. O áudio pode ser carregado através da interface WEB ou através do uso da API.

É importante destacar, que alguns cuidados devem ser tomados ao carregar o áudio. Primeiramente, o limite de tamanho de arquivo de áudio suportado é 5MB. Além disso, no envio do arquivo via API, cada requisição é limitada a transportar no máximo 2MB de dados e, portanto, o envio deve ser feito de forma fragmentada. O usuário deve separar seu arquivo de áudio em blocos (2MB máx) e enviar sequencialmente cada parte, em requisições separadas. Para fazer isso, ele deve trabalhar com os parâmetros current e total, explicados abaixo:

POST /set_audio_access_message.fcgi

Parâmetros

  • event (string) : seleciona para qual dos eventos de identificação será utilizado o áudio a ser enviado. Abaixo estão as strings de entradas possíveis (obrigatório):
    • not_identified: seleciona o evento 'Não identificado'.
    • authorized: seleciona o evento 'Autorizado'.
    • not_authorized : seleciona o evento 'Não autorizado'.
    • use_mask: seleciona o evento 'Use máscará'.
  • current (int) : corresponde ao valor da parte atual do áudio que esta sendo enviada. Exemplo: em um envio de um arquivo de áudio divido em 2 partes, o primeiro envio deve ter o valor current igual a 1 e o segundo envio igual a 2. (obrigatório).
  • total (int) : corresponde ao número total de partes que serão enviadas. Exemplo: no caso do exemplo de um envio de um arquivo dividido em 2 partes, o número total de partes é igual a 2, então o total deve ser igual a 2 (obrigatório).

Exemplo de requisição

Esta requisição carrega o arquivo de áudio no equipamento. A requisição corresponde ao primeiro envio de um arquivo dividido em 2 partes.

$.ajax({
    url: "/set_audio_access_message.fcgi?event=authorized&current=1&total=2&session=" + session 
    type: 'POST',
    contentType: 'application/octet-stream',
    data: [bytes do áudio enviado]
});

Download da mensagem sonora customizada

Uma vez carregada a mensagem sonora customizada, é possível fazer o download da mensagem via interface WEB do embarcado ou via API. A requisição para realizar isso esta mostrada abaixo:

POST /get_audio_access_message

Parâmetros

  • event (string) : seleciona o evento de identificação cujo áudio personalizado se deseja obter. Abaixo estão as strings de entradas possíveis (obrigatório):
    • not_identified: seleciona o evento 'Não identificado'.
    • authorized: seleciona o evento 'Autorizado'.
    • not_authorized : seleciona o evento 'Não autorizado'.
    • use_mask: seleciona o evento 'Use máscará'.

Resposta

  • Caso exista, será retornado o arquivo de áudio.

Exemplo de requisição

$.ajax({
    url: "/get_audio_access_message.fcgi?session=session,
    type: 'POST',
    contentType: 'application/json',
    data: JSON.stringify({
        "event": "authorized"
    })
});

Verificação de existência de áudio customizado no dispositivo

Podemos verificar se já existe um áudio customizado carregado no equipamento. Para isso, utiliza-se a requisição abaixo:

POST /has_audio_access_messages

Parâmetros

  • Sem parâmetros de entrada

Resposta

  • not_identified (bool): Retorna true caso já exista um arquivo de áudio customizado para o evento "Não identificado". E retorna false caso contrário.
  • authorized (bool): Retorna true caso já exista um arquivo de áudio customizado para o evento "Autorizado". E retorna false caso contrário.
  • not_authorized (bool): Retorna true caso já exista um arquivo de áudio customizado para o evento "Não autorizado". E retorna false caso contrário.
  • use_mask (bool): Retorna true caso já exista um arquivo de áudio customizado para o evento "Use máscará". E retorna false caso contrário.

Exemplo de requisição

$.ajax({
    url: "//has_audio_access_messages.fcgi?session=" + session,
    type: 'POST',
    contentType: 'application/json'
});