// kafka-connector options: START
[[camel-pubnub-kafka-connector-sink]]
= camel-pubnub-kafka-connector sink configuration

When using camel-pubnub-kafka-connector as sink make sure to use the following Maven dependency to have support for the connector:

[source,xml]
----
<dependency>
  <groupId>org.apache.camel.kafkaconnector</groupId>
  <artifactId>camel-pubnub-kafka-connector</artifactId>
  <version>x.x.x</version>
  <!-- use the same version as your Camel Kafka connector version -->
</dependency>
----

To use this Sink connector in Kafka connect you'll need to set the following connector.class

[source,java]
----
connector.class=org.apache.camel.kafkaconnector.pubnub.CamelPubnubSinkConnector
----


The camel-pubnub sink connector supports 15 options, which are listed below.



[width="100%",cols="2,5,^1,2",options="header"]
|===
| Name | Description | Default | Priority
| *camel.sink.path.channel* | The channel used for subscribing/publishing events | null | HIGH
| *camel.sink.endpoint.uuid* | UUID to be used as a device identifier, a default UUID is generated if not passed. | null | MEDIUM
| *camel.sink.endpoint.lazyStartProducer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. | false | MEDIUM
| *camel.sink.endpoint.operation* | The operation to perform. PUBLISH: Default. Send a message to all subscribers of a channel. FIRE: allows the client to send a message to BLOCKS Event Handlers. These messages will go directly to any Event Handlers registered on the channel. HERENOW: Obtain information about the current state of a channel including a list of unique user-ids currently subscribed to the channel and the total occupancy count. WHERENOW: Obtain information about the current list of channels to which a uuid is subscribed to. GETSTATE: Used to get key/value pairs specific to a subscriber uuid. State information is supplied as a JSON object of key/value pairs SETSTATE: Used to set key/value pairs specific to a subscriber uuid GETHISTORY: Fetches historical messages of a channel. One of: [HERENOW] [WHERENOW] [GETSTATE] [SETSTATE] [GETHISTORY] [PUBLISH] [FIRE] | null | MEDIUM
| *camel.sink.endpoint.basicPropertyBinding* | Whether the endpoint should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | MEDIUM
| *camel.sink.endpoint.pubnub* | Reference to a Pubnub client in the registry. | null | MEDIUM
| *camel.sink.endpoint.synchronous* | Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). | false | MEDIUM
| *camel.sink.endpoint.authKey* | If Access Manager is utilized, client will use this authKey in all restricted requests. | null | MEDIUM
| *camel.sink.endpoint.cipherKey* | If cipher is passed, all communications to/from PubNub will be encrypted. | null | MEDIUM
| *camel.sink.endpoint.publishKey* | The publish key obtained from your PubNub account. Required when publishing messages. | null | MEDIUM
| *camel.sink.endpoint.secretKey* | The secret key used for message signing. | null | MEDIUM
| *camel.sink.endpoint.secure* | Use SSL for secure transmission. | true | MEDIUM
| *camel.sink.endpoint.subscribeKey* | The subscribe key obtained from your PubNub account. Required when subscribing to channels or listening for presence events | null | MEDIUM
| *camel.component.pubnub.lazyStartProducer* | Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing. | false | MEDIUM
| *camel.component.pubnub.basicPropertyBinding* | Whether the component should use basic property binding (Camel 2.x) or the newer property binding with additional capabilities | false | MEDIUM
|===
// kafka-connector options: END
