smqd-bridge-mqtt


License

License

GroupId

GroupId

com.thing2x
ArtifactId

ArtifactId

smqd-bridge-mqtt_2.12
Last Version

Last Version

0.4.7
Release Date

Release Date

Type

Type

jar
Description

Description

smqd-bridge-mqtt
smqd-bridge-mqtt
Project URL

Project URL

https://github.com/smqd/
Project Organization

Project Organization

UANGEL
Source Code Management

Source Code Management

https://github.com/smqd/smqd-bridge-mqtt

Download smqd-bridge-mqtt_2.12

How to add to project

<!-- https://jarcasting.com/artifacts/com.thing2x/smqd-bridge-mqtt_2.12/ -->
<dependency>
    <groupId>com.thing2x</groupId>
    <artifactId>smqd-bridge-mqtt_2.12</artifactId>
    <version>0.4.7</version>
</dependency>
// https://jarcasting.com/artifacts/com.thing2x/smqd-bridge-mqtt_2.12/
implementation 'com.thing2x:smqd-bridge-mqtt_2.12:0.4.7'
// https://jarcasting.com/artifacts/com.thing2x/smqd-bridge-mqtt_2.12/
implementation ("com.thing2x:smqd-bridge-mqtt_2.12:0.4.7")
'com.thing2x:smqd-bridge-mqtt_2.12:jar:0.4.7'
<dependency org="com.thing2x" name="smqd-bridge-mqtt_2.12" rev="0.4.7">
  <artifact name="smqd-bridge-mqtt_2.12" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.thing2x', module='smqd-bridge-mqtt_2.12', version='0.4.7')
)
libraryDependencies += "com.thing2x" % "smqd-bridge-mqtt_2.12" % "0.4.7"
[com.thing2x/smqd-bridge-mqtt_2.12 "0.4.7"]

Dependencies

compile (1)

Group / Artifact Type Version
org.scala-lang : scala-library jar 2.12.6

provided (1)

Group / Artifact Type Version
com.thing2x : smqd-core_2.12 jar [0.4.7, 0.5)

test (2)

Group / Artifact Type Version
com.typesafe.akka : akka-testkit_2.12 jar 2.5.17
org.scalatest : scalatest_2.12 jar 3.0.5

Project Modules

There are no modules declared in this project.

SMQD MQTT Bridge

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

Usage

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

Configuration

smqd {
  bridge {
    drivers = [
      {
        name = mqtt_br
        entry.plugin = com.thing2x.smqd.bridge.MqttBridgeDriver
        config {
            destination = "127.0.0.1:1883"
            client-id = bridge_client
            user = userid
            password = userpassword
            queue = 20
            overflow-strategy = drop-buffer
            keep-alive-interval = 10s
            bridges = [
                {
                  topic = "sensor/+/temperature"
                  qos = 0
                },
                {
                  topic = "sensor/+/humidity"
                  prefix = "bridged/data/"
                  suffix = "/json"
                  qos = 1
                }
              ] 
        }
      }
    ]
  }
}

driver settings

  • destination

    desitnation mqtt server's address and port

  • client-id

    client-id used to connect for destination mqtt server (default: MqttBridge-${driver's name})

  • user and password

    login user name and password. one or both of them can be omitted from config as Mqtt Specification

  • keep-alive-interval

    mqtt keepAliveInterval setting. default is 60 seconds

    smqd sends PINGREQ to destination mqtt server for every interval of this value

  • 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

  • prefix & suffix

    if those settings are not defined, received messages will be published to destination mqtt server with same topic name.

    if exists, prefix and suffix will be appended at the head and tail of original topic path before published

  • qos

    0, 1, 2 (default: 0)

com.thing2x

SMQD

MQTT broker and embeddable concurrent messaging framework

Versions

Version
0.4.7
0.3.4