-
Para criar o
-
serviço na WS integrado com o demais
serviço,
-
o ideal é que a gente prepare
uma solução integrada
-
para que a gente fique mais fácil
de entender os passos necessários
-
para fazer a distribuição
e a comunicação entre os serviços na WS.
-
Então eu preparei para vocês
um diagrama para a gente visualizar
-
os principais serviços
que a gente vai utilizar
-
para receber imagens por meio de uma API
e depois distribuir
-
para diversos clientes
por meio de e-mails, por exemplo.
-
Então, aqui nós temos um diagrama.
-
Nós temos, por exemplo,
a nossa nuvem na WS,
-
a que está dentro da região
e o sistema é na nossa rede
-
padrão, a nossa VPC padrão
-
e que eu tenho três serviços na WS,
-
o SNS, que é um serviço
para mensageria do tipo
-
pub Sub, vai ser o primeiro serviço
que ele vai criar.
-
Na sequência
a gente vai criar uma função via lambda
-
para poder receber dados de uma API
-
e depois encaminhar pro SNS.
-
E para isso eu vou criar a minha API
que vai se integrar com a função lambda.
-
E por último, quando tiver todos os serviços prontos a gente vai fazer a integração
-
recebendo o arquivo.
-
Jeison Por meio da nossa API e por puro.
-
E por último, nós vamos enviar um email
para o destinatário já pré configurado.
-
Então,
para criar a nossa solução integrada,
-
a primeira coisa
vai criar um tópico no SNS.
-
Então vou mostrar para vocês como a gente
pode criar isso acessando a área do DF.
-
Boas da WS no nosso console da WS,
tanto aqui no nosso console.
-
Vou buscar aqui o serviço do SNS
que é o Simple Notification Service.
-
Clico nele.
-
E aqui
-
eu tenho o painel do SNS,
vou ver aqui quantos tópicos nós temos.
-
Já tenho aqui um pré configurado para mim.
-
Vou criar o novo tópico
clicando aqui no botão Criar Tópico.
-
Aqui nós temos algumas opções.
-
A gente vai escolher a opção padrão,
que é a opção mais simples
-
e vou colocar aqui
o nome do tópico recebe pedidos
-
porque nós vamos simular
-
o recebimento de pedidos de um parceiro
de um ecommerce, por exemplo.
-
Tá o nome de exemplo
-
O nome de exibição vai colocar o mesmo.
-
Não preciso marcar mais nada
-
e vou clicar aqui em Criar tópico.
-
Pronto, nós temos já aqui o tópico criado.
-
Já posso listar novamente
que é 1/1 da nossa solução, Então
-
esse tópico ele serve
-
para poder receber as informações
que vão vir.
-
Por exemplo, de uma API
que a gente ainda vai construir.
-
Mas antes disso precisa criar
-
uma função via lambda
que vai ser integrada com a nossa API.
-
Então já tem que eu estava criado.
-
Vamos criar a função via lambda.
-
Volto aqui na busca digito lambda
-
e vou acessar a função lambda,
-
então vou criar aqui uma nova função.
-
Selecionei aqui o botão Criar função
-
e vou dar um nome para ela.
-
Recebe pedidos.
-
A função a gente vai desenvolver ali
em Python já tem ela pronta aqui, né?
-
Pode ser essa versão do Python 3,9
-
nas permissões.
-
Como eu estava usando o ambiente
de testes, que é o que vocês tem acesso,
-
a gente vai alterar aqui
a função de execução
-
para uma função existente
-
que a função de IA chamada liberou.
-
E aí eu vou clicar aqui em Criar função.
-
Já temos aqui
a nossa visão geral da função.
-
Cabe agora
a de colocar o código da função.
-
Então vou colocar aqui o código que eu
já tinha copiado aqui da minha colinha.
-
Vamos ver aqui em detalhes o código.
-
Esse código
ele vai acessar o tópico do SNS,
-
aí vai pegar o nome do tópico
já já para poder colocar aqui
-
e vai receber uma informação
que vem na API.
-
Se a requisição não estiver vazia
-
então ela vai ter um corpo preenchido,
um Jeison por exemplo.
-
E aí ele vai fazer uma postagem
dentro desse tópico do SNS. Tá?
-
Se der certo
-
ele vai retornar o status code 200,
se não, vai dar um erro interno 500.
-
O que falta a gente fazer? Pegar primeiro
-
o nome do tópico do SNS.
-
Para isso eu vou abrir uma nova aba,
vou clicar aqui no logo da WS
-
com o botão do meio do mouse,
-
Abrir aqui uma nova guia.
-
Vou voltar aqui para o SNS.
-
Já tem até que para a gente
um atalho sem pão Notification Service
-
e vou clicar aqui em Tópicos que
foi o tópico A gente criou agora há pouco.
-
Por que?
-
Porque eu preciso desse número aqui,
que na verdade é o endereço do tópico
-
dentro da WS e o Amazon.
-
Nem copiei esse cara como trouxe.
-
Vou voltar aqui para minha função
via Lambda
-
e vou criar uma variável de ambiente
chamada SNS Topic.
-
Ai aqui embaixo do lado esquerdo inferior
-
tem aqui em vai viria a luz.
-
Nós temos aqui as variáveis e ambientes.
-
Vou adicionar aqui
uma nova variável de ambiente.
-
Vou adicionar uma nova variável
clicando no botão
-
Adicionar Variáveis de ambiente SNS Tópico
-
ai e vou colar o valor
-
que a gente copiou do endereço do tópico.
-
Vou clicar em Salvar.
-
SNS Top Carne, Vou conferir aqui.
-
Já está aqui criado.
-
Já estamos aqui com a variável criada
nas variáveis de ambiente E aí finalmente
-
eu posso fazer o deploy da minha função
via lâmina.
-
Vou clicar aqui em deploy.
-
Ele demora alguns instantes.
-
Já tem aqui a parte da minha função
-
lambda, pronta
para receber informações de uma API.
-
O próximo passo vai ser criar a API
-
para poder receber o arquivo de resumo
que vai ser nossa função lambda
-
e na sequência
encaminhar uma mensagem para o nosso SNS.
-
Então agora ele vai criar a nossa API
para poder receber o arquivo de resumo
-
e depois encaminhar a informação
para a nossa função via lambda
-
e na sequência
nós vai cadastrar uma assinatura
-
dentro do tópico
para receber um e-mail com.
-
Toda vez que a gente
receber uma nova requisição.
-
Então vou clicar aqui na busca
-
e vou digitar, por exemplo, a API
-
para selecionar o serviço do IP http,
-
vou clicar nele.
-
E vou criar aqui uma nova API.
-
Vou criar uma API simples no HTTP,
-
vou clicar na opção Compilar
-
e vou dar um nome para API API.
-
Recebe pedidos
-
Vou clica em Avançar.
-
Não marcam nada por enquanto.
-
Aqui também vou clicar em Avançar
-
e vou criar a nossa API.
-
Pronto, a nossa API foi criada.
-
Falta agora criar as rotas, então vou
clicar, vou clicar aqui em Criar.
-
E vou criar uma rota
-
usando o método Post do protocolo HTTP
-
para o endereço Barra Pedidos.
-
Então,
toda vez que eu fizer uma requisição
-
para esse endereço no endereço da API
Barra Pedidos,
-
ele vai solicitar a função
User lambda para poder gravar
-
no nosso tópico do SNS,
vou clicar aqui em Criar.
-
Já foi criado com sucesso.
-
Vou selecionar aqui o post
-
e vou anexar a minha função via Lambda,
esse método post.
-
Vou clicar aqui em Anexar Integração.
-
Vou criar uma nova integração.
-
Vou selecionar aqui,
por exemplo a função do lambda
-
e aqui na nossa região eu
-
vou selecionar as funções existentes.
-
Então eu já criei aqui a função via
-
tem a nossa função, recebe pedidos
que a gente criou agora pouco
-
e vou clicar aqui em Criar.
-
Pronto, já temos aqui a API pronta
-
pra poder receber uma informação do pedido
e encaminhar isso para a função dela.
-
Eu preciso anotar aqui
só o endereço da API,
-
então a gente clica aqui na API
-
e copia o endereço
-
de invocação dessa própria API.
-
A gente vai usar isso
para poder acionar a nossa função Azelan.
-
Só que antes disso
eu vou abrir aqui mais uma guia nova.
-
E vou voltar para o nosso tópico do SNS.
-
A gente tem aqui o nosso tópico
recebe pedidos
-
e aí eu vou criar uma assinatura
para toda vez que eu
-
receber uma informação
que vem lá da API que passou para Lambda,
-
ele mandar um e-mail para mim
me notificando.
-
Vou clicar aqui.
-
Assinaturas.
-
Criar assinatura.
-
E aí eu seleciono o tópico
que eu quero criar assinatura.
-
Quero ser um assinante para o tópico
Recebe pedidos, então toda vez que eu
-
receber uma informação nesse tópico,
ele vai mandar um e-mail para mim.
-
Vou selecionar aqui o protocolo
para ele poder me enviar um email
-
e vou colocar o meu e-mail.
-
No seu caso
vocês coloquem o e-mail de vocês.
-
E aí clica em Criar Assinatura.
-
Vou colocar aqui umas informações.
-
Criar assinatura.
-
Já posso visualizar as assinaturas criadas
-
que ele permite.
-
Ele pergunta para a gente toda vez
que eu adiciono uma nova assinatura,
-
principalmente por e-mail,
ele pede uma confirmação.
-
Então eu estou aqui
com a confirmação pendente.
-
Vou acessar aqui o meu email.
-
Já recebi uma notificação recebe pedidos
-
que é o e-mail que a própria WS
manda para a gente, Então SMS
-
ele já enviou um e-mail para mim
para confirmar essa assinatura.
-
Vou clicar em Confirmar subscrição.
-
Já foi confirmado,
-
então toda vez
que chegar uma informação no tópico,
-
eu vou receber essa informação por e-mail,
-
então vou voltar aqui
-
para nós, para o SNS.
-
Vou dar um
-
uma atualizada na página,
-
acessar aqui de novo assinaturas.
-
Já está confirmado.
-
Agora já está pronto para poder
-
simular o envio de um Jeison
-
de um pedido para nossa solução integrada.
-
Então agora você já viu como que a gente
faz para criar uma solução integrada
-
para receber pedidos
por meio de uma API na WS?