

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á.

# Criar uma aplicação de servidor para o SDK do Amazon Chime
<a name="build-server-app"></a>

As informações na seção a seguir explicam como criar um aplicativo de servidor do SDK do Amazon Chime. Cada seção fornece exemplo de código conforme necessário, e você pode adaptar esse código para atender às suas necessidades.

**Topics**
+ [Criar usuários ou perfis do IAM para o SDK do Amazon Chime](create-iam-users-roles.md)
+ [Configurando o AWS SDK para invocar o APIs para o Amazon Chime SDK](invoke-apis.md)
+ [Criar uma reunião para o SDK do Amazon Chime](create-meeting.md)
+ [Criar um participante para o SDK do Amazon Chime](create-attendee.md)
+ [Enviar uma resposta ao cliente do SDK do Amazon Chime](send-response-to-client.md)

# Criar usuários ou perfis do IAM para o SDK do Amazon Chime
<a name="create-iam-users-roles"></a>

Você cria usuários como usuários do IAM ou em perfis apropriados ao seu caso de uso. Depois, atribua a política a seguir a eles. Isso garante que você tenha as permissões necessárias para o AWS SDK incorporado ao seu aplicativo de servidor. Por sua vez, isso permite que você execute operações de ciclo de vida nos recursos da reunião e dos participantes.

```
   // Policy ARN:     arn:aws:iam::aws:policy/AmazonChimeSDK 
    // Description:    Provides access to Amazon Chime SDK operations
    {
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "chime:CreateMeeting",
                "chime:DeleteMeeting",
                "chime:GetMeeting",
                "chime:ListMeetings",
                "chime:CreateAttendee",
                "chime:BatchCreateAttendee",
                "chime:DeleteAttendee",
                "chime:GetAttendee",
                "chime:ListAttendees"
            ],
            "Effect": "Allow",
            "Resource": "*"
     }
 ]}
```

# Configurando o AWS SDK para invocar o APIs para o Amazon Chime SDK
<a name="invoke-apis"></a>

Esse exemplo de código mostra como passar credenciais para o AWS SDK e definir uma região e um endpoint. 

```
    AWS.config.credentials = new AWS.Credentials(accessKeyId, secretAccessKey, null);
    const chime = new AWS.Chime({ region: 'us-east-1' });
    chime.endpoint = new AWS.Endpoint('https://service.chime.aws.amazon.com/console');
```

# Criar uma reunião para o SDK do Amazon Chime
<a name="create-meeting"></a>

Uma chamada de API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_meeting-chime_CreateMeeting.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_meeting-chime_CreateMeeting.html) aceita um parâmetro obrigatório, o `ClientRequestToken`, que permite que os desenvolvedores transmitam um contexto exclusivo. Ela também aceita parâmetros opcionais, como `MediaRegion`, que representa a região do plano de dados dos serviços de mídia a ser escolhida para a reunião, o `MeetingHostId` usado para transmitir um identificador opaco a fim de representar o host da reunião, se aplicável, e o `NotificationsConfiguration` para receber eventos do ciclo de vida da reunião. Por padrão, a Amazon EventBridge entrega os eventos. Opcionalmente, você também pode receber eventos transmitindo o ARN de uma fila do SQS ou o ARN de um tópico do SNS em `NotificationsConfiguration`. A API retorna um objeto de reunião que contém um `MediaPlacement` objeto exclusivo`MeetingId`, mais o `MediaRegion` e o, com um conjunto de mídias URLs.

```
   meeting = await chime.createMeeting({
                ClientRequestToken: clientRequestToken,
                MediaRegion: mediaRegion,
                MeetingHostId: meetingHostId,
                NotificationsConfiguration: {
                   SqsQueueArn: sqsQueueArn,
                   SnsTopicArn: snsTopicArn
                }
            }).promise();
```

# Criar um participante para o SDK do Amazon Chime
<a name="create-attendee"></a>

Depois de criar uma reunião, você cria um recurso de participante que representa cada usuário tentando participar da sessão de mídia. A API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_meeting-chime_CreateAttendee.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_meeting-chime_CreateAttendee.html) utiliza o seguinte:
+ O `MeetingId` da reunião à qual você está adicionando o usuário.
+ Um `ExternalUserId`, que pode ser qualquer identificador de usuário opaco do seu sistema de identidade.

Por exemplo, se você usa o Active Directory (AD), pode ser o ID do objeto do usuário no AD. Isso `ExternalUserId` é valioso porque é repassado aos aplicativos do cliente quando eles recebem os eventos dos participantes do cliente SDKs. Isso permite que o aplicativo do cliente saiba quem entrou ou saiu da reunião e recupere informações adicionais do aplicativo do servidor sobre esse usuário, como nome de exibição, e-mail ou foto. 

As chamadas para a API `CreateAttendee` resultam em um objeto `Attendee`. O objeto contém um `AttendeeId` exclusivo que é gerado pelo serviço, o `ExternalUserId` que foi transmitido e um `JoinToken` assinado que permite que o participante acesse a reunião por toda sua duração ou até que a API [https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_meeting-chime_DeleteAttendee.html](https://docs.aws.amazon.com/chime-sdk/latest/APIReference/API_meeting-chime_DeleteAttendee.html) exclua o participante.

```
       attendee = await chime.createAttendee({
                MeetingId: meeting.MeetingId,
                ExternalUserId: externalUserId,
              }).promise();
```

# Enviar uma resposta ao cliente do SDK do Amazon Chime
<a name="send-response-to-client"></a>

Depois de criar os recursos da reunião e do participante, o aplicativo do servidor deve codificar e enviar os objetos da reunião e do participante de volta ao aplicativo do cliente. O cliente precisa dessas informações para iniciar a biblioteca JavaScript cliente do Amazon Chime SDK e permitir que um participante participe da reunião com sucesso a partir de um aplicativo web ou baseado em Electron.