As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
StartCallRecording
A ação StartCallRecording inicia a gravação de um trecho de chamada. Você inicia a gravação de chamadas em seus aplicativos de mídia SIP, sob demanda ou em resposta a um evento SIP.
Para iniciar a gravação sob demanda de uma chamada, você usa a API
UpdateSipMediaApplicationpara invocar seu aplicativo e retornar a açãoStartCallRecording.Para iniciar a gravação de chamadas em resposta a um evento SIP, você retorna a ação
StartCallRecordingem seu aplicativo.
Você especifica se deseja gravar a faixa de áudio para a etapa de entrada, a etapa de saída ou ambas. As seções a seguir explicam como usar a ação StartCallRecording.
nota
As gravações feitas usando esse atributo podem estar sujeitas a leis ou regulamentos relacionados à gravação de comunicações eletrônicas. É responsabilidade sua e de seus usuários finais cumprir todas as leis aplicáveis em relação à gravação, incluindo notificar adequadamente todos os participantes de uma sessão ou comunicação gravada de que a sessão ou comunicação está sendo gravada e obter o consentimento deles.
Tópicos
Solicitando uma StartCallRecording ação
O exemplo a seguir mostra como solicitar a ação StartCallRecording para faixas BOTH.
- CallId
-
Descrição —
CallIddo participante naCallDetailsinvocação da AWS Lambda funçãoValores permitidos: um ID de chamada válido
Obrigatório – Sim
Valor-padrão: nenhum
- Faixa
-
Descrição – Áudio da
Trackda gravação da chamada.Valores permitidos:
BOTH,INCOMINGouOUTGOINGObrigatório – Sim
Valor-padrão: nenhum
- Destination.Type
-
Descrição – Tipo de destino. Somente o Amazon S3 é permitido.
Valores permitidos: Amazon S3
Obrigatório – Sim
Valor-padrão: nenhum
- Destination.Location
-
Descrição – Um bucket válido do Amazon S3 e um prefixo de chave opcional do Amazon S3. O bucket deve ter permissões para a entidade principal de serviço de conector de voz do SDK do Amazon Chime, o voiceconnector.chime.amazonaws.com.
Valores permitidos: um caminho do Amazon S3 válido para o qual o SDK do Amazon Chime tem acesso às ações
s3:PutObjectes3:PutObjectAcl.Obrigatório – Sim
Valor-padrão: nenhum
Como especificar um destino de gravação
O SDK do Amazon Chime fornece gravações de chamadas para se bucket do Amazon S3. O bucket deve pertencer à sua AWS conta. Você especifica a localização do bucket no parâmetro Destination da ação StartCallRecording. O campo Type no parâmetro Destination deve ser S3. O campo Location consiste em seu bucket do Amazon S3, além de um prefixo de chave de objeto opcional no qual a gravação da chamada é entregue.
O aplicativo de mídia SIP usa a Location especificada, a data e a hora do trecho da chamada, o ID da transação e o ID da chamada para formatar a chave de objeto do Amazon S3. A resposta da ação StartCallRecording retorna a chave de objeto completa do Amazon S3.
Quando você fornece somente o bucket do Amazon S3 no campo Location, o aplicativo de mídia SIP acrescenta um prefixo-padrão, Amazon-Chime-SMA-Call-Recordings, ao caminho do Amazon S3. O aplicativo de mídia SIP também anexa o ano, mês e dia do horário de início da chamada para ajudar a organizar as gravações. O exemplo a seguir mostra o formato geral de um caminho do Amazon S3 com o prefixo-padrão. Este exemplo usa myRecordingBucket como valor de Location.
myRecordingBucket/Amazon-Chime-SMA-Call-Recordings/2019/03/01/2019–03–01–17–10–00–010_c4640e3b–1478–40fb-8e38–6f6213adf70b_7ab7748e–b47d–4620-ae2c–152617d3333c.wav
O exemplo a seguir mostra os dados representados no nome de registro de caminho do Amazon S3.
s3Bucket/Amazon-Chime-SMA-Call-Recordings/year/month/date/year-month-date-hour-minute-second-millisecond_transactionId_callId.wav
Quando você fornece o bucket do Amazon S3 e o prefixo da chave do objeto no campo Location, o aplicativo de mídia SIP usa seu prefixo de chave de objeto no caminho de destino do Amazon S3 em vez do prefixo-padrão. O exemplo a seguir mostra o formato geral de um caminho do Amazon S3 de gravação de chamadas com seu prefixo. Por exemplo, você pode especificar myRecordingBucket /TechnicalSupport/English como o. Location
myRecordingBucket/technicalSupport/english/2019/03/01/2019–03–01–17–10–00–010_c4640e3b1478–40fb–8e38-6f6213adf70b_7ab7748e–b47d–4620–ae2c–152617d3333c.wav
O exemplo a seguir mostra os dados no caminho do Amazon S3.
s3Bucket/yourObjectKeyPrefix/year/month/date/year-month-date-hour-minute-second-millisecond_transactionId_callId.wav
A gravação enviada para seu bucket do Amazon S3 contém metadados de objetos do Amazon S3 adicionais sobre o trecho da chamada. A tabela a seguir lista os metadados do objeto do Amazon S3 compatíveis.
| Name (Nome) | Description |
|---|---|
transaction-id |
O ID da transação da chamada telefônica |
call-id |
CallId do participante na invocação CallDetails da AWS Lambda função |
recording-duration |
Duração da gravação de chamadas em segundos |
recording-audio-file-format |
Formato de arquivo de áudio de gravação de chamadas representado como tipo de mídia da Internet |
Como conceder permissões do bucket do Amazon S3
Seu bucket Amazon S3 de destino deve pertencer à mesma AWS conta do seu aplicativo. Além disso, a ação deve conceder permissão s3:PutObject e s3:PutObjectAcl à entidade principal responsável pelo serviço de conector de voz do SDK do Amazon Chime, voiceconnector.chime.amazonaws.com. O exemplo a seguir concede a permissão apropriada.
O serviço de áudio PSTN lê e grava no bucket do S3 em nome da aplicação de mídia Sip. Para evitar o problema do substituto confuso, você pode restringir as permissões do bucket do S3 a um único aplicativo de mídia SIP.
Resposta bem-sucedida da ação
Quando a gravação da chamada é iniciada com sucesso em um trecho de chamada, o aplicativo de mídia SIP invoca uma AWS Lambda função com o ACTION_SUCCESSFUL tipo de evento. A localização da gravação da chamada é retornada na resposta.
{ "SchemaVersion": "1.0", "Sequence": INTEGER, "InvocationEventType": "ACTION_SUCCESSFUL", "ActionData": { "Type" : "StartCallRecording", "Parameters": { "CallId": "call-id-1", "Track": "BOTH", "Destination": { "Type": "S3", "Location": "valid-bucket-name" } } "CallRecordingDestination": { "Type": "S3", "Location": "call-recording-bucket-and-key" } } "CallDetails": { ... } }
Resposta de erro da ação
Para erros de validação, o aplicativo de mídia SIP chama a AWS Lambda função com a mensagem de erro apropriada. A seguinte tabela lista as mensagens de erro.
| Erro | Mensagem | Motivo |
|---|---|---|
|
O parâmetro |
Qualquer parâmetro é inválido. |
|
Erro do sistema ao executar uma ação. |
Ocorreu outro tipo de erro do sistema na execução de uma ação. |
Quando a ação falha ao gravar a mídia em um trecho de chamada, o aplicativo de mídia SIP invoca uma função AWS Lambda com o tipo de evento ActionFailed.
O exemplo a seguir mostra uma resposta de erro típica.
{ "SchemaVersion": "1.0", "Sequence": 5, "InvocationEventType": "ACTION_FAILED", "ActionData": { "Type" : "StartCallRecording", "Parameters": { "CallId": "call-id-1", "Track": "BOTH", "Destination": { "Type": "S3", "Location": "valid-bucket-name" } } "Error": "NoAccessToDestination: Error while accessing destination" } "CallDetails": { ... } }
Veja um exemplo prático em GitHub: https://github.com/aws-samples/amazon-chime-sma-on-demand-recording