O telefone suporta gravação durante chamadas ativas. Dois métodos de gravação estão disponíveis:
Salvar o fluxo RTP como um arquivo formatado no armazenamento local (USB).
Enviar o fluxo RTP para um servidor de gravação para armazenamento e gerenciamento.
Este documento aplica-se aos telefones IP das séries BX3S, BX4, BX5S, BX6, BX7, BX7C, GP210, GP210i e BXU.
Este documento é destinado a engenheiros internos de P&D e teste que precisam entender a implementação e melhoria do recurso de gravação de chamadas do telefone.
Um fluxo local apenas de recepção é criado e misturado com o fluxo da chamada. O telefone se vincula a uma porta local para receber dados RTP misturados, que são então gravados em um arquivo local ou enviados para um servidor remoto.

A gravação local requer um pendrive USB. O telefone verifica a capacidade de armazenamento USB, cria um arquivo chamado Record_[SystemTime] e salva os dados RTP.
Se o limite de tamanho do arquivo for atingido e houver espaço restante, um novo arquivo é criado automaticamente. Pausa/retomada é suportada durante a gravação.
Formato do arquivo de gravação local (.wav):
| char codec[64] | int32_t rtpLen | int32_t increment | uint32_t dataSize | rtp data | rtp data | ... |
codec: Codec de áudio da gravação
rtpLen: Comprimento dos dados RTP
increment: Incremento de timestamp
dataSize: Comprimento total dos dados RTP
A gravação em servidor requer a configuração de serverAddr e serverPort. A comunicação inclui comandos de controle (TCP) e mídia RTP (UDP).
O telefone inicia uma sessão de gravação. O servidor aloca uma porta UDP dedicada para o fluxo RTP.
Formato do comando de início de gravação
Solicitação: cmd=RecordStartRequest&id=xxx&device=xxx&remote_number=xxx&remote_name=xxx&local_number=xxx&local_name=xxx&dir=in|out&codec=xxx
Resposta: cmd=RecordStartResponse&id=xxx&result=success|failed&reason=xxx&server=xxx&port=xxx
id: ID de sessão único (aleatório, fixo durante a gravação)
device: Endereço MAC do telefone
dir: Direção da chamada (entrada/saída)
codec: Codec RTP (PCMA|PCMU)
server/port: Endereço UDP para o fluxo RTP
Nota: Se o servidor responder "failed", o telefone exibirá um prompt de falha na gravação.
Formato do comando de parada de gravação
Solicitação: cmd=RecordStopRequest&id=xxx&remote_number=xxx&remote_name=xxx&local_number=xxx&local_name=xxx&reason=xxx
Resposta: cmd=RecordStopResponse&id=xxx&result=success
Em caso de erro de soquete, ambas as partes encerram a sessão e limpam os estados.
O telefone envia pacotes RTP para o servidor via UDP até receber um comando de parada ou perder a conexão.
O telefone analisa os cabeçalhos do arquivo (codec, timestamp, comprimento) para calcular a duração da reprodução e controlá-la.
A gravação local requer um pendrive USB. Suportado em BX5S/BX6; NÃO suportado em BX3S/BX4.
Ative a gravação através de Aplicativos > Gerenciamento de gravação, defina o modo como Local.

Configure uma tecla DSS/tecla de função como Gravar.
Insira o pendrive USB, faça uma chamada, pressione a tecla Gravar para iniciar.

Pressione novamente para parar a gravação.
Visualize/ reproduza gravações através de Aplicativos > USB.

Instale o software RecordServer (suporta PCMA/PCMU/G722).
Caminho do servidor: \\172.16.1.8\firmware\Applications\RecordServer
Execute RecordServer.exe para iniciar o serviço.
Na interface web do telefone, ative a gravação, defina o tipo como Rede, insira o IP/porta do servidor, selecione o codec.

Faça uma chamada, pressione a tecla DSS Gravar.

Pare a gravação e baixe os arquivos do servidor.

Registre o telefone em um servidor compatível com SIP INFO (por exemplo, 3CX).
Na interface web, ative a gravação e defina o tipo como SIP INFO.

Configure uma tecla DSS Gravar, inicie/ pare a gravação durante as chamadas.
Visualize as gravações no portal de gerenciamento do servidor SIP (3CX).