--- apiVersion: v1 kind: List items: - apiVersion: v1 kind: ConfigMap metadata: labels: funktion.fabric8.io/kind: Connector provider: fabric8 project: connector-aws-ses version: 1.1.21 group: io.fabric8.funktion.connector name: aws-ses data: deployment.yml: | --- apiVersion: extensions/v1beta1 kind: Deployment metadata: labels: funktion.fabric8.io/kind: Subscription connector: aws-ses spec: replicas: 1 template: metadata: labels: funktion.fabric8.io/kind: Subscription connector: aws-ses spec: containers: - image: fabric8/connector-aws-ses:1.1.21 name: connector schema.yml: | --- component: kind: component scheme: aws-ses syntax: aws-ses:from title: AWS Simple Email Service description: The aws-ses component is used for sending emails with Amazon's SES service. label: cloud,mail deprecated: false async: false producerOnly: true javaType: org.apache.camel.component.aws.ses.SesComponent groupId: org.apache.camel artifactId: camel-aws version: 2.18.1 componentProperties: {} properties: from: kind: path group: producer required: true type: string javaType: java.lang.String deprecated: false secret: false description: The sender's email address. accessKey: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: Amazon AWS Access Key amazonSESClient: kind: parameter group: producer type: object javaType: com.amazonaws.services.simpleemail.AmazonSimpleEmailService deprecated: false secret: false description: To use the AmazonSimpleEmailService as the client amazonSESEndpoint: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: The region with which the AWS-SES client wants to work with. proxyHost: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: To define a proxy host when instantiating the SQS client proxyPort: kind: parameter group: producer type: integer javaType: java.lang.Integer deprecated: false secret: false description: To define a proxy port when instantiating the SQS client replyToAddresses: kind: parameter group: producer type: array javaType: java.util.List deprecated: false secret: false description: List of reply-to email address(es) for the message override it using 'CamelAwsSesReplyToAddresses' header. returnPath: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: The email address to which bounce notifications are to be forwarded override it using 'CamelAwsSesReturnPath' header. secretKey: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: Amazon AWS Secret Key subject: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: The subject which is used if the message header 'CamelAwsSesSubject' is not present. to: kind: parameter group: producer type: array javaType: java.util.List deprecated: false secret: false description: List of destination email address. Can be overriden with 'CamelAwsSesTo' header. synchronous: kind: parameter group: advanced label: advanced type: boolean javaType: boolean deprecated: false secret: false defaultValue: false description: Sets whether synchronous processing should be strictly used or Camel is allowed to use asynchronous processing (if supported). documentation.adoc: |+ [[AWS-SES-SESComponent]] SES Component ~~~~~~~~~~~~~ *Available as of Camel 2.8.4* The ses component supports sending emails with http://aws.amazon.com/ses[Amazon's SES] service. Prerequisites You must have a valid Amazon Web Services developer account, and be signed up to use Amazon SES. More information are available at http://aws.amazon.com/ses[Amazon SES]. [[AWS-SES-URIFormat]] URI Format ^^^^^^^^^^ [source,java] ------------------------ aws-ses://from[?options] ------------------------ You can append query options to the URI in the following format, ?options=value&option2=value&... [[AWS-SES-URIOptions]] URI Options ^^^^^^^^^^^ // component options: START The AWS Simple Email Service component has no options. // component options: END // endpoint options: START The AWS Simple Email Service component supports 12 endpoint options which are listed below: {% raw %} [width="100%",cols="2,1,1m,1m,5",options="header"] |======================================================================= | Name | Group | Default | Java Type | Description | from | producer | | String | *Required* The sender's email address. | accessKey | producer | | String | Amazon AWS Access Key | amazonSESClient | producer | | AmazonSimpleEmailService | To use the AmazonSimpleEmailService as the client | amazonSESEndpoint | producer | | String | The region with which the AWS-SES client wants to work with. | proxyHost | producer | | String | To define a proxy host when instantiating the SQS client | proxyPort | producer | | Integer | To define a proxy port when instantiating the SQS client | replyToAddresses | producer | | List | List of reply-to email address(es) for the message override it using 'CamelAwsSesReplyToAddresses' header. | returnPath | producer | | String | The email address to which bounce notifications are to be forwarded override it using 'CamelAwsSesReturnPath' header. | secretKey | producer | | String | Amazon AWS Secret Key | subject | producer | | String | The subject which is used if the message header 'CamelAwsSesSubject' is not present. | to | producer | | List | List of destination email address. Can be overriden with 'CamelAwsSesTo' header. | synchronous | advanced | false | boolean | Sets whether synchronous processing should be strictly used or Camel is allowed to use asynchronous processing (if supported). |======================================================================= {% endraw %} // endpoint options: END Required SES component options You have to provide the amazonSESClient in the link:registry.html[Registry] or your accessKey and secretKey to access the http://aws.amazon.com/ses[Amazon's SES]. [[AWS-SES-Usage]] Usage ^^^^^ [[AWS-SES-MessageheadersevaluatedbytheSESproducer]] Message headers evaluated by the SES producer +++++++++++++++++++++++++++++++++++++++++++++ [width="100%",cols="10%,10%,80%",options="header",] |======================================================================= |Header |Type |Description |`CamelAwsSesFrom` |`String` |The sender's email address. |`CamelAwsSesTo` |`List` |The destination(s) for this email. |`CamelAwsSesSubject` |`String` |The subject of the message. |`CamelAwsSesReplyToAddresses` |`List` |The reply-to email address(es) for the message. |`CamelAwsSesReturnPath` |`String` |The email address to which bounce notifications are to be forwarded. |`CamelAwsSesHtmlEmail` |`Boolean` |*Since Camel 2.12.3* The flag to show if email content is HTML. |======================================================================= [[AWS-SES-MessageheaderssetbytheSESproducer]] Message headers set by the SES producer +++++++++++++++++++++++++++++++++++++++ [width="100%",cols="10%,10%,80%",options="header",] |======================================================================= |Header |Type |Description |`CamelAwsSesMessageId` |`String` |The Amazon SES message ID. |======================================================================= [[AWS-SES-AdvancedAmazonSimpleEmailServiceconfiguration]] Advanced AmazonSimpleEmailService configuration +++++++++++++++++++++++++++++++++++++++++++++++ If you need more control over the `AmazonSimpleEmailService` instance configuration you can create your own instance and refer to it from the URI: [source,java] ------------------------------------------------------------- from("direct:start") .to("aws-ses://example@example.com?amazonSESClient=#client"); ------------------------------------------------------------- The `#client` refers to a `AmazonSimpleEmailService` in the link:registry.html[Registry]. For example if your Camel Application is running behind a firewall: [source,java] ---------------------------------------------------------------------------------------------------------- AWSCredentials awsCredentials = new BasicAWSCredentials("myAccessKey", "mySecretKey"); ClientConfiguration clientConfiguration = new ClientConfiguration(); clientConfiguration.setProxyHost("http://myProxyHost"); clientConfiguration.setProxyPort(8080); AmazonSimpleEmailService client = new AmazonSimpleEmailServiceClient(awsCredentials, clientConfiguration); registry.bind("client", client); ---------------------------------------------------------------------------------------------------------- [[AWS-SES-Dependencies]] Dependencies ^^^^^^^^^^^^ Maven users will need to add the following dependency to their pom.xml. *pom.xml* [source,xml] --------------------------------------- org.apache.camel camel-aws ${camel-version} --------------------------------------- where `${camel-version`} must be replaced by the actual version of Camel (2.8.4 or higher). [[AWS-SES-SeeAlso]] See Also ^^^^^^^^ * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] * link:endpoint.html[Endpoint] * link:getting-started.html[Getting Started] * link:aws.html[AWS Component]