Componentes por Ordem Alfabética
A seguir, apresentamos os componentes com suas descrições, funções e exemplos, organizados por ordem alfabética.
Azure Storage Blob Service
-
Descrição: o componente Azure Storage Blob Service é usado para armazenar e recuperar blobs (objeto binário grande) do serviço Azure Storage Blob usando APIs do Azure v12.
-
Função: gatilho e conector.
-
Exemplo como conector
-
O fluxo inicia quando uma requisição
POST
é feita para o endpoint/hello
. -
Depois ele lista (
operation: "listBlobs"
) todos os blobs armazenados no contêinermyblobcontainer
da conta de armazenamentocamelstorageaccount01
no Azure. -
A autenticação é realizada por meio de uma chave de conta compartilhada.
-
Após a listagem, o fluxo registra as informações obtidas no log.
-
Script |
Diagrama |
|
AWS Lambda
-
Descrição: o componente AWS Lambda suporta as funções AWS Lambda:
create
,get
,list
,delete
einvoke
. -
Função: conector.
-
Exemplo
-
No fluxo, uma requisição
POST
é recebida no endpoint/hello
, ativando uma sequência de ações. -
Primeiro, o fluxo registra uma mensagem no log, indicando que a requisição foi recebida.
-
Em seguida, ele invoca uma função específica no AWS Lambda (
operation: "invokeFunction"
), utilizando credenciais de acesso (access key
esecret key
) para autenticação. -
Após a invocação da função Lambda, uma nova mensagem é registrada no log.
-
Script |
Diagrama |
|
AWS S3 Storage Service
-
Descrição: o componente AWS S3 Storage Service permite que você interaja com o serviço Amazon S3 (Simple Storage Service) da AWS e manipule dados em buckets S3 diretamente através das rotas de integração.
-
Função: gatilho e conector
-
Exemplo como gatilho:
-
O fluxo é ativado por novos eventos em um bucket S3 da AWS (
aws2-s3://bucket-s3
). -
Os parâmetros indicam as credenciais utilizadas (contidas em variáveis) e a localização do bucket.
-
Em seguida, o fluxo registra uma mensagem no log com o conteúdo do arquivo ou objeto processado do bucket.
-
Script |
Diagrama |
|
AWS Simple Notification System (SNS)
-
Descrição: o componente AWS SNS permite que mensagens sejam enviadas para um Amazon Simple Notification Topic.
-
Função: conector.
-
Exemplo
-
O fluxo começa com uma requisição
POST
no endpoint/hello
. -
Quando uma requisição é recebida, uma mensagem é enviada para um tópico do AWS Simple Notification Service (SNS).
-
Script |
Diagrama |
|
AWS Simple Queue Service (SQS)
-
Descrição: o componente AWS SQS oferece suporte ao envio e recebimento de mensagens para o serviço SQS da Amazon.
-
Função: gatilho e conector.
-
Exemplo como conector
-
O fluxo começa com uma requisição
POST
no endpoint/hello
. -
Quando uma requisição é recebida, uma mensagem é enviada para o serviço SQS da Amazon.
-
Script |
Diagrama |
|
Cron
-
Descrição: o componente Cron permite acionar eventos em intervalos de tempo específicos.
-
Função: gatilho.
-
Exemplo: o trecho abaixo configura uma rota para ser executada a cada 5 minutos, registrando uma mensagem no log.
Script |
Diagrama |
|
FTP
-
Descrição: o componente FTP fornece acesso a sistemas de arquivos remotos através dos protocolos FTP e SFTP. Funcionamento apenas no modo passivo.
-
Função: gatilho e conector.
-
Exemplo como gatilho
-
O fluxo se conecta a um servidor FTP e faz o download de arquivos de texto.
-
Os parâmetros indicam as credenciais usadas para autenticação (
username
epassword
) e que o texto deve filtrar e incluir apenas arquivos com a extensão.txt.
-
-
Depois, registra o conteúdo desses arquivos em um log.
-
Script |
Diagrama |
|
FTPS
-
Descrição: o FTPS é uma versão segura do FTP, que adiciona suporte para SSL/TLS para criptografar a conexão.
-
Função: gatilho e conector.
-
Exemplo como gatilho
-
O fluxo é configurado para se conectar a um servidor FTPS em
demo.wftpserver.com
, utilizando as credenciais fornecidas (username
epassword
) para baixar arquivos com a extensão.txt
. -
O fluxo inclui um atraso de 10 segundos entre as tentativas de download e opera em modo passivo.
-
Script |
Diagrama |
|
HTTP
-
Descrição: o componente HTTP permite a integração com serviços externos através do protocolo HTTP, facilitando o envio e recebimento de requisições e respostas. Ele suporta diversos métodos HTTP, como
GET
,POST
,PUT
eDELETE
. -
Função: conector.
-
Exemplo
-
O fluxo inicia ao receber uma requisição
POST
no endpoint/hello
. -
Depois, a mensagem recebida é encaminhada para o endpoint
http://teste.free.beeceptor.com.
-
Script |
Diagrama |
|
HTTPS
-
Descrição: o componente HTTPS é uma versão segura do HTTP, que utiliza SSL/TLS para criptografar os dados transmitidos entre o cliente e o servidor.
-
Função: conector.
-
Exemplo
-
O fluxo recebe uma requisição
GET
no endpoint/tracing
. -
Remove um cabeçalho específico (
CamelHttpPath
). -
Em seguida, faz uma requisição para uma API para obter informações sobre o endereço correspondente ao CEP especificado.
-
Script |
Diagrama |
|
JOLT
-
Descrição: o componente JOLT permite transformar e manipular dados JSON de forma declarativa, utilizando especificações definidas em arquivos JOLT.
-
Função: conector.
-
Exemplo
-
O fluxo começa com uma requisição
POST
no endpoint/jolt-poc
. -
O corpo da requisição é registrado nos logs.
-
O fluxo transforma o corpo da requisição usando um template Jolt localizado no arquivo
template.json
.-
Os parâmetros
inputType: JsonString
eoutputType: JsonString
garantem que a entrada e a saída sejam manipuladas como strings JSON. -
contentCache: true
permite cache dos resultados.
-
-
Por fim, o fluxo registra o resultado da transformação nos logs.
-
Script |
Diagrama |
|
JSLT
-
Descrição: o componente JSLT é utilizado para transformar dados usando templates escritos em JSLT. Ele processa informações de entrada, como JSON ou XML, reorganizando e formatando-as de acordo com um modelo que você define.
-
Função: conector
-
Exemplo
-
O fluxo começa com uma requisição
POST
no endpoint/hello
. -
Os dados da requisição são transformados por meio do componente JSLT usando o arquivo de template
expression.jslt
.-
O parâmetro
contentCache=true
habilita o cache do conteúdo do template.
-
-
Por fim, a mensagem transformada é registrada no log de nível
info
.
-
Script |
Diagrama |
|
JSONata
-
Descrição: o componente JSONata permite processar e transformar dados JSON utilizando a linguagem de consulta JSONata. Ele possibilita a realização de operações complexas, como filtragem, transformação e agregação de dados.
-
Função: conector.
-
Exemplo
-
O fluxo começa com uma requisição
POST
no endpoint/jsonata
. -
Depois, o conteúdo da requisição é transformado usando uma expressão JSONata armazenada no arquivo
expression.jsonata
. -
Os parâmetros indicam que:
-
os resultados da transformação podem ser armazenados em cache (
contentCache: true
); -
o tipo de entrada para a transformação é uma string JSON (
inputType: JsonString
) ; -
o tipo de saída também será uma string JSON (
outputType: JsonString
).
-
-
Depois, os dados são enviados a um endpoint externo
uri: https://enzcomwvg2nng.x.pipedream.net
via requisiçãoPOST
.
-
Script |
Diagrama |
|
JSON Schema Validator
-
Descrição: o componente JSON Schema Validator realiza validação de bean do corpo da mensagem.
-
Função: conector.
-
Exemplo
-
O fluxo começa quando uma requisição
POST
é recebida no endpoint/hello
. -
Depois o componente de validação JSON é usado para verificar se o corpo da requisição corresponde ao esquema definido no arquivo
my-json-schema.json
.
-
Script |
Diagrama |
|
Kafka
-
Descrição: o componente Kafka é usado para comunicação com o broker de mensagens Apache Kafka.
-
Função: gatilho e conector.
-
Exemplo como conector
-
O fluxo se inicia com uma requisição
POST
no endpoint/kafka
. -
A mensagem recebida é então enviada para um ou mais tópicos Kafka que correspondem ao padrão
retry*
. -
A conexão com o Kafka é feita através do broker especificado.
-
Parâmetros da URI:
-
brokers: "54.207.234.81:38082"
: especifica o endereço do broker Kafka (neste caso, 54.207.234.81 na porta 38082). -
topicIsPattern: true
: indica que o tópico para onde a mensagem está sendo enviada deve ser interpretado como um padrão, permitindo que mensagens sejam enviadas para todos os tópicos que correspondem ao padrãoretry*
.
-
-
-
Script |
Diagrama |
|
Log
-
Descrição: o componente Log é muito útil para registrar mensagens durante o processamento das rotas. Ele permite que você veja o que está acontecendo em suas integrações em tempo real, ajudando na depuração e monitoramento.
-
Função: conector.
-
Exemplo
-
O fluxo começa com uma requisição
POST
no endpoint/hello
. -
Remove o cabeçalho
Exchange.HTTP_PATH
da mensagem. -
Faz uma chamada HTTP para um endpoint externo.
-
Por fim, registra a resposta dessa chamada nos logs.
-
Script |
Diagrama |
|
-
Descrição: o componente Mail é usado para enviar e receber e-mails. Ele é é frequentemente dividido em três protocolos principais:
-
Função: gatilho e conector.
IMAP/IMAPS
-
Descrição: o componentes IMAP é um protocolo utilizado para receber emails, permitindo o acesso a várias pastas de correio e a manipulação de mensagens diretamente no servidor.
O IMAPS é uma versão segura do IMAP que transmite dados criptografados usando SSL/TLS.
-
Exemplo como gatilho: o fluxo é configurado para se conectar a uma conta de email usando o protocolo IMAP no servidor do Gmail (
imap.gmail.com
) na porta 993.-
Parâmetros da URI:
-
o fluxo utiliza as credenciais fornecidas (
username
epassword
) para autenticação; -
está configurado para não excluir emails (
delete=false
); -
está configurado para buscar apenas mensagens não lidas (
unseen=true
).; -
existe um atraso de 60 segundos (
delay=60000
), o que significa que ele irá verificar novos emails a cada minuto.
-
-
Quando um novo email é encontrado, o conteúdo completo do email é registrado em um log.
-
Script |
Diagrama |
|
POP3/POP3S
-
Descrição: o POP3 é usado principalmente para receber emails de um servidor de correio. No componente mail, ele permite que o Camel leia emails da caixa de entrada de um servidor POP3.
O POP3S é uma versão segura do POP3 que transmite dados criptografados usando SSL/TLS.
-
Exemplo como gatilho: o código mostra uma conexão com um servidor de email usando o protocolo POP3 seguro (POP3S) para acessar uma conta do Gmail.
-
Parâmetros da URI:
-
username=yourusername
: nome do usuário; -
password=yourpassword
: senha; -
delete=false
: especifica que as mensagens não devem ser deletadas do servidor após serem lidas; -
unseen=true
: indica que apenas as mensagens que ainda não foram lidas devem ser recuperadas; -
delay=60000
: define um atraso de 60 segundos entre cada tentativa de recuperação de novas mensagens.
-
-
Script |
Diagrama |
|
SMTP/SMTPS
-
Descrição: o SMTP é usado para enviar emails. No componente mail do Camel, o SMTP permite que o Camel envie emails a partir de um servidor SMTP.
O SMTPS é uma versão segura do SMTP que transmite dados criptografados usando SSL/TLS.
-
Exemplo como conector: quando uma requisição
POST
é recebida no endpoint/hello
, o fluxo envia um email através do servidor SMTP do Gmail utilizando uma conexão segura (SMTPS).-
Parâmetros da URI:
-
username: "yourusername"
: o nome de usuário da conta do Gmail que está sendo usada para autenticação. -
password: "yourpassword"
: a senha da conta do Gmail. -
mail.smtp.auth: "auth"
: este parâmetro indica que a autenticação SMTP deve ser utilizada. -
mail.smtp.starttls.enable: "starttls"
: este parâmetro habilita o STARTTLS, um mecanismo para atualizar uma conexão insegura para uma conexão segura usando TLS.
-
-
Script |
Diagrama |
|
Paho
-
Descrição: o componente Paho permite a integração de aplicações com o protocolo MQTT, facilitando a comunicação entre dispositivos e sistemas em ambientes de Internet das Coisas (IoT).
-
Função: gatilho e conector
-
Exemplo como gatilho:
-
O fluxo começa se inscrevendo no tópico
sensor/temperature
em um broker MQTT, utilizando uma conexão segura via SSL na URLbroker.brokername.com:8883
. -
Registra no log uma mensagem com o conteúdo recebido:
Got message ${body}.
-
Se uma mensagem com o conteúdo "Sensor data: 24°C" for publicada no tópico
sensor/temperature
, o log registrará: "Got message Sensor data: 24°C"
-
Script |
Diagrama |
|
Paho MQTT5
-
Descrição: o componente Paho MQTT5 permite a integração de aplicações com o protocolo MQTT (versão 5), oferecendo recursos avançados de mensageria, como sessões persistentes e controle de fluxo.
-
Função: gatilho e conector
-
Exemplo como gatilho:
-
O fluxo é idêntico ao fluxo descrito para o componente Paho, com a diferença que este usa a versão 5 do protocolo MQTT.
-
Script |
Diagrama |
|
Quartz
-
Descrição: o componente Quartz permite agendar e disparar eventos com base em expressões cron. Ele permite configurar tarefas para serem acionadas em horários regulares, como a cada minuto, hora ou dia, usando a sintaxe cron padrão.
-
Função: gatilho.
-
Exemplo: um fluxo é acionado pelo componente Quartz a cada hora, exatamente no 59º minuto.
Script |
Diagrama |
|
REST
-
Descrição: o componente REST permite criar e gerenciar endpoints RESTful, facilitando a comunicação entre aplicações por meio do protocolo HTTP. Ele possibilita a definição de rotas que respondem a requisições HTTP (como
GET
,POST
,PUT
eDELETE
), processando dados, invocando serviços e manipulando informações. -
Função: gatilho e conector.
-
Exemplo como gatilho
-
O fluxo começa com uma requisição
POST
em/demo
. -
Não há parâmetros adicionais, indicando que serão usadas as configurações padrão do endpoint.
-
Script |
Diagrama |
|
Scheduler
-
Descrição: o componente Scheduler é usado para gerar trocas de mensagens quando um agendador dispara.
-
Função: gatilho.
-
Exemplo
-
No trecho abaixo, a URI mostra um agendador chamado
mySchedulerName
, que é acionado a cada 60 segundos.
-
Script |
Diagrama |
|
SFTP
-
Descrição: o componente SFTP fornece acesso a sistemas de arquivos remotos através dos protocolos FTP e SFTP. Funcionamento apenas no modo passivo.
-
Função: gatilho e conector.
-
Exemplo como conector
-
O fluxo do exemplo é configurado para ser acionado por um agendador Quartz, que dispara a cada minuto.
-
Quando o gatilho é ativado, o corpo da mensagem é definido como
Hello World
. -
O fluxo então envia essa mensagem como um arquivo chamado
helloworld.txt
para um servidor SFTP no endereçodemo.wftpserver.com
, na porta2222
, no diretório/upload
.
-
Script |
Diagrama |
|
Slack
-
Descrição: o componente Slack permite que você envie mensagens, notificações e alertas para canais ou usuários do Slack diretamente de seus fluxos de integração.
-
Função: gatilho e conector
-
Exemplo como gatilho:
-
O fluxo escuta mensagens no canal do Slack especificado.
-
O token de autenticação do Slack está incluído nos parâmetros.
-
Quando uma mensagem é recebida, ela é capturada e registrada no log com o conteúdo.
-
Script |
Diagrama |
|
Timer
-
Descrição: o componente Timer é usado para gerar trocas de mensagens quando um temporizador dispara.
-
Função: gatilho.
-
Exemplo
-
No trecho abaixo, a URI mostra um temporizador chamado
mytimer
, que é acionado a cada 30 segundos (30.000 milissegundos).
-
Script |
Diagrama |
|
XSLT
-
Descrição: o componente XSLT é utilizado para transformar documentos XML usando uma folha de estilo XSLT, permitindo que os dados sejam convertidos para diferentes formatos ou estruturas.
-
Função: conector.
-
Exemplo
-
O fluxo começa com uma requisição
POST
no endpoint/source-xslt
. -
O EIP
toD
indica que o fluxo deve direcionar a execução para uma URI dinâmica. -
A rota então faz uma requisição
GET
para o endpointhttps://httpbin.org/xml
, obtendo uma resposta em XML. -
Depois, transforma a resposta XML em JSON utilizando um arquivo XSLT:
response_to_json.xslt
.
-
Script |
Diagrama |
|
XJ
-
Descrição: o componente XJ permite converter documentos XML e JSON sem a necessidade de objetos Java intermediários.
-
Função: conector.
-
Exemplo
-
O fluxo começa ao receber uma requisição
POST
no endpoint /example-xj. -
Faz uma chamada
GET
parahttps://httpbin.org/xml
. -
Transforma a resposta XML recebida em JSON usando o componente XSLT.
-
O parâmetro
transformDirection: XML2JSON
indica a direção da transformação, que neste caso é de XML para JSON.
-
-
Converte o JSON em um objeto Java.
-
Por fim, define o cabeçalho
Content-Type
comoapplication/json
para indicar o tipo da resposta.
-
Script |
Diagrama |
|
Share your suggestions with us!
Click here and then [+ Submit idea]