Skip to content

Latest commit

 

History

History
65 lines (55 loc) · 1.37 KB

README.md

File metadata and controls

65 lines (55 loc) · 1.37 KB

Vue-Mqtt

Connect to mqtt through websocket, implementation for Vuejs 2

Example

Example Vue-Mqtt-Example

Install

npm install vue-mqtt --save

Usage

Configuration

import VueMqtt from 'vue-mqtt';
Vue.use(VueMqtt, 'ws://iot.eclipse.org/ws', options);

options: https://github.com/mqttjs/MQTT.js#client

Subscribe

this.$mqtt.subscribe('param/param/param/test', options)

options: https://github.com/mqttjs/MQTT.js#subscribe

On Vuejs instance usage

The last parameter for reading is used

var vm = new Vue({
  mqtt: {
    'param/+/+/test': function(val) {
      console.log('param/+/+/test')
    },
    'param/#': function(val) {
      console.log('param/#')
    },
    'param/param/param/test': function(val) {
      console.log('param/param/param/test')
    },
    'template/+' (data, topic) {
      if (topic.split('/').pop() === '12345') {
        console.log('topic:', 'template/12345')
      }
    },
    'template/+/param/param' (data, topic) {
      if (topic.split('/')[1] === '12345') {
        console.log('topic:', 'template/12345/param/param')
      }
    }
  },
  methods: {
    clickSub: function(val) {
        this.$mqtt.subscribe('param/param/param/test')
    },
    clickPub: function(val) {
        this.$mqtt.publish('param/param/param/test', 'message')
    }
  }
})