Skip to content

smqd/smqd-bridge-http

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SMQD HTTP Bridge

License Build Status Sonatype Nexus (Releases) Sonatype Nexus (Snapshots)

Usage

    libraryDependencies += "com.thing2x.smqd" %% "smqd-bridge-http" % "x.y.z"

Configuration

smqd {
  bridge {

    drivers = [
      {
        name = http_br
        entry.plugin = thing2x-bridge-http
        config {
            parallelism = 4
            queue = 20
            overflow-strategy = drop-buffer
            bridges = [
              {
                topic = "sensor/+/temperature"
                content-type = text/plain
                method = POST     # PUT, POST
                prefix = http://192.168.1.100/api/receiver/
                suffix = ?from=smqd-01
              },
              {
                topic = "sensor/+/humidity"
                content-type = application/octet-stream
                method = POST     # PUT, POST
                uri = http://192.168.1.100/api/receiver/endpoint
              }
            ]
        }
      }
    ]
  }
}

driver settings

  • parallelism

    must be non-zero positive integer, default is 1

  • queue

    size of driver's queue, default is 10

  • overflow-strategy

    queue overflow strategy

    • drop-head
    • drop-tail
    • drop-buffer (default)
    • drop-new
    • backpressure
    • fail

bridge settings

  • topic

    topic filter that the bridge will subscribe

  • content-type

    if not specified, default is application/octet-stream

  • method

    http method, POST, PUT

  • prefix & suffix

    the final http endpoint will be prefix + topic + suffix.

    As example, if prefix = http://192.168.1.100:80/api/receiver/, suffix = ?from=smq-01, the messages published to sensor/123/temperature will be delivered to http://192.168.1.100:80/api/receiver/sensor/123/temperature?from=smq-01

  • uri

    if uri is defined, prefix and suffix are ignored.

    all messages published to the topic will be bridged to the specified uri