├── .github └── workflows │ └── mqtt-nats_test.yml ├── .gitignore ├── .golangci.yml ├── .idea ├── .gitignore ├── codeStyles │ └── codeStyleConfig.xml ├── inspectionProfiles │ └── Project_Default.xml ├── misc.xml ├── modules.xml ├── mqtt-nats.iml ├── vcs.xml └── watcherTasks.xml ├── LICENSE ├── README.md ├── bridge ├── client.go ├── client_test.go ├── nats.go ├── natspub.go ├── options.go ├── package.go ├── replytopic.go ├── retained.go ├── server.go └── session.go ├── cli ├── mqtt-nats.go └── package.go ├── examples ├── certs │ ├── .gitignore │ ├── ca.json │ ├── config.json │ ├── csr.json │ ├── generate.sh │ └── server.json ├── jmeter │ └── MQTT Pub Sampler.jmx ├── server.conf └── tools │ ├── nats-pub-repeat │ └── nats-pub-repeat.go │ └── nats-sub-reply │ └── nats-sub-reply.go ├── go.mod ├── go.sum ├── logger ├── logger.go └── logger_test.go ├── main.go ├── mqtt ├── package.go ├── pkg │ ├── connect.go │ ├── connect_test.go │ ├── credentials.go │ ├── idmanager.go │ ├── idmanager_test.go │ ├── packet.go │ ├── packet_test.go │ ├── ping.go │ ├── ping_test.go │ ├── publish.go │ ├── publish_test.go │ ├── subscribe.go │ ├── subscribe_test.go │ ├── unsubscribe.go │ ├── unsubscribe_test.go │ └── will.go ├── reader.go ├── reader_test.go ├── topic.go ├── topic_test.go ├── writer.go └── writer_test.go └── test ├── connect_test.go ├── full ├── bridge.go ├── client.go └── nats.go ├── main_test.go ├── mock ├── connection.go └── connection_test.go ├── package.go ├── packet ├── parse.go └── parse_test.go ├── publish_test.go ├── retained_test.go ├── tls ├── connect_test.go ├── main_test.go ├── package.go ├── server.conf └── testdata │ ├── ca-key.pem │ ├── ca.pem │ ├── client-key.pem │ ├── client.pem │ ├── server-key.pem │ └── server.pem └── utils ├── checks.go ├── checks_test.go ├── logger.go ├── logger_test.go ├── panics.go └── panics_test.go /.github/workflows/mqtt-nats_test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.github/workflows/mqtt-nats_test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.gitignore -------------------------------------------------------------------------------- /.golangci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.golangci.yml -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /workspace.xml -------------------------------------------------------------------------------- /.idea/codeStyles/codeStyleConfig.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.idea/codeStyles/codeStyleConfig.xml -------------------------------------------------------------------------------- /.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.idea/inspectionProfiles/Project_Default.xml -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.idea/misc.xml -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.idea/modules.xml -------------------------------------------------------------------------------- /.idea/mqtt-nats.iml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.idea/mqtt-nats.iml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /.idea/watcherTasks.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/.idea/watcherTasks.xml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/README.md -------------------------------------------------------------------------------- /bridge/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/client.go -------------------------------------------------------------------------------- /bridge/client_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/client_test.go -------------------------------------------------------------------------------- /bridge/nats.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/nats.go -------------------------------------------------------------------------------- /bridge/natspub.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/natspub.go -------------------------------------------------------------------------------- /bridge/options.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/options.go -------------------------------------------------------------------------------- /bridge/package.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/package.go -------------------------------------------------------------------------------- /bridge/replytopic.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/replytopic.go -------------------------------------------------------------------------------- /bridge/retained.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/retained.go -------------------------------------------------------------------------------- /bridge/server.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/server.go -------------------------------------------------------------------------------- /bridge/session.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/bridge/session.go -------------------------------------------------------------------------------- /cli/mqtt-nats.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/cli/mqtt-nats.go -------------------------------------------------------------------------------- /cli/package.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/cli/package.go -------------------------------------------------------------------------------- /examples/certs/.gitignore: -------------------------------------------------------------------------------- 1 | *.pem 2 | *.csr 3 | -------------------------------------------------------------------------------- /examples/certs/ca.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/examples/certs/ca.json -------------------------------------------------------------------------------- /examples/certs/config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/examples/certs/config.json -------------------------------------------------------------------------------- /examples/certs/csr.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/examples/certs/csr.json -------------------------------------------------------------------------------- /examples/certs/generate.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/examples/certs/generate.sh -------------------------------------------------------------------------------- /examples/certs/server.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/examples/certs/server.json -------------------------------------------------------------------------------- /examples/jmeter/MQTT Pub Sampler.jmx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/examples/jmeter/MQTT Pub Sampler.jmx -------------------------------------------------------------------------------- /examples/server.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/examples/server.conf -------------------------------------------------------------------------------- /examples/tools/nats-pub-repeat/nats-pub-repeat.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/examples/tools/nats-pub-repeat/nats-pub-repeat.go -------------------------------------------------------------------------------- /examples/tools/nats-sub-reply/nats-sub-reply.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/examples/tools/nats-sub-reply/nats-sub-reply.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/go.sum -------------------------------------------------------------------------------- /logger/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/logger/logger.go -------------------------------------------------------------------------------- /logger/logger_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/logger/logger_test.go -------------------------------------------------------------------------------- /main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/main.go -------------------------------------------------------------------------------- /mqtt/package.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/package.go -------------------------------------------------------------------------------- /mqtt/pkg/connect.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/connect.go -------------------------------------------------------------------------------- /mqtt/pkg/connect_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/connect_test.go -------------------------------------------------------------------------------- /mqtt/pkg/credentials.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/credentials.go -------------------------------------------------------------------------------- /mqtt/pkg/idmanager.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/idmanager.go -------------------------------------------------------------------------------- /mqtt/pkg/idmanager_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/idmanager_test.go -------------------------------------------------------------------------------- /mqtt/pkg/packet.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/packet.go -------------------------------------------------------------------------------- /mqtt/pkg/packet_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/packet_test.go -------------------------------------------------------------------------------- /mqtt/pkg/ping.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/ping.go -------------------------------------------------------------------------------- /mqtt/pkg/ping_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/ping_test.go -------------------------------------------------------------------------------- /mqtt/pkg/publish.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/publish.go -------------------------------------------------------------------------------- /mqtt/pkg/publish_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/publish_test.go -------------------------------------------------------------------------------- /mqtt/pkg/subscribe.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/subscribe.go -------------------------------------------------------------------------------- /mqtt/pkg/subscribe_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/subscribe_test.go -------------------------------------------------------------------------------- /mqtt/pkg/unsubscribe.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/unsubscribe.go -------------------------------------------------------------------------------- /mqtt/pkg/unsubscribe_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/unsubscribe_test.go -------------------------------------------------------------------------------- /mqtt/pkg/will.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/pkg/will.go -------------------------------------------------------------------------------- /mqtt/reader.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/reader.go -------------------------------------------------------------------------------- /mqtt/reader_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/reader_test.go -------------------------------------------------------------------------------- /mqtt/topic.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/topic.go -------------------------------------------------------------------------------- /mqtt/topic_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/topic_test.go -------------------------------------------------------------------------------- /mqtt/writer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/writer.go -------------------------------------------------------------------------------- /mqtt/writer_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/mqtt/writer_test.go -------------------------------------------------------------------------------- /test/connect_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/connect_test.go -------------------------------------------------------------------------------- /test/full/bridge.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/full/bridge.go -------------------------------------------------------------------------------- /test/full/client.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/full/client.go -------------------------------------------------------------------------------- /test/full/nats.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/full/nats.go -------------------------------------------------------------------------------- /test/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/main_test.go -------------------------------------------------------------------------------- /test/mock/connection.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/mock/connection.go -------------------------------------------------------------------------------- /test/mock/connection_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/mock/connection_test.go -------------------------------------------------------------------------------- /test/package.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/package.go -------------------------------------------------------------------------------- /test/packet/parse.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/packet/parse.go -------------------------------------------------------------------------------- /test/packet/parse_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/packet/parse_test.go -------------------------------------------------------------------------------- /test/publish_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/publish_test.go -------------------------------------------------------------------------------- /test/retained_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/retained_test.go -------------------------------------------------------------------------------- /test/tls/connect_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/connect_test.go -------------------------------------------------------------------------------- /test/tls/main_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/main_test.go -------------------------------------------------------------------------------- /test/tls/package.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/package.go -------------------------------------------------------------------------------- /test/tls/server.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/server.conf -------------------------------------------------------------------------------- /test/tls/testdata/ca-key.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/testdata/ca-key.pem -------------------------------------------------------------------------------- /test/tls/testdata/ca.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/testdata/ca.pem -------------------------------------------------------------------------------- /test/tls/testdata/client-key.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/testdata/client-key.pem -------------------------------------------------------------------------------- /test/tls/testdata/client.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/testdata/client.pem -------------------------------------------------------------------------------- /test/tls/testdata/server-key.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/testdata/server-key.pem -------------------------------------------------------------------------------- /test/tls/testdata/server.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/tls/testdata/server.pem -------------------------------------------------------------------------------- /test/utils/checks.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/utils/checks.go -------------------------------------------------------------------------------- /test/utils/checks_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/utils/checks_test.go -------------------------------------------------------------------------------- /test/utils/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/utils/logger.go -------------------------------------------------------------------------------- /test/utils/logger_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/utils/logger_test.go -------------------------------------------------------------------------------- /test/utils/panics.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/utils/panics.go -------------------------------------------------------------------------------- /test/utils/panics_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tada/mqtt-nats/HEAD/test/utils/panics_test.go --------------------------------------------------------------------------------