Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const mqtt = require("mqtt");
- const initCassandra = require("./cassandra");
- const uuidV4 = require("uuid/v4");
- const WebSocket_URL = "ws://localhost:8083/mqtt";
- // TCP/TLS connect url
- // const TCP_URL = "mqtt://localhost:1883";
- // const TCP_TLS_URL = "mqtts://localhost:8883";
- const options = {
- connectTimeout: 4000,
- // Authentication
- clientId: "emqx_123",
- // username: 'emqx',
- // password: 'emqx',
- keepalive: 60,
- clean: false
- };
- const client = mqtt.connect(WebSocket_URL, options);
- const cassandra = initCassandra();
- const messagePayload = "This is message payload";
- try {
- // after connect
- client.on("connect", () => {
- console.log("Connected to", WebSocket_URL);
- client.subscribe("hello", { qos: 1 }, err => {
- console.log(err || "Subscribe Success");
- // if (!err) {
- // cosnole.log('Subscribe Success')
- // client.publish('hello', 'Hello EMQ X', { qos: 1, rein: false }, (error) => {
- // console.log(error || 'Publish Success')
- // })
- // }
- });
- client.publish("hello", messagePayload, { qos: 1 }, err => {
- console.log(err || "Publish Success");
- const payload = JSON.stringify({
- id: uuidV4(),
- message: messagePayload
- });
- // console.log(payload)
- cassandra.execute(`INSERT INTO hello.chat JSON '${payload}'`);
- });
- });
- // // handle message event
- client.on("message", (topic, message) => {
- console.log("Received from", topic, ":", message.toString());
- // console.log(message.toString());
- let messagePayload = JSON.parse(message.toString());
- // const payload = JSON.stringify({
- // id: uuidV4(),
- // message: messagePayload.msg
- // });
- // // console.log(payload)
- // cassandra.execute(`INSERT INTO hello.chat JSON '${payload}'`);
- // disconnect
- // client.end();
- });
- client.on("reconnect", error => {
- console.log("reconnecting:", error);
- });
- client.on("error", error => {
- console.log("Connect Error:", error);
- });
- } catch (err) {
- console.log("ERROR ==> ", err);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement