JSPM

  • Created
  • Published
  • Downloads 594
  • Score
    100M100P100Q102232F
  • License Apache-2.0

Matterbridge dynamic plugin

Package Exports

  • matterbridge-example-dynamic-platform
  • matterbridge-example-dynamic-platform/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (matterbridge-example-dynamic-platform) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Matterbridge Logo   Matterbridge dynamic platform example plugin

npm version npm downloads Docker Version Docker Pulls Node.js CI CodeQL codecov

power by power by power by power by


Matterbridge dynamic platform example plugin is a template to develop your own plugin using the dynamic platform.

It exposes 41 virtual devices:

  • a switch with onOff cluster
  • a light with onOff
  • a light with onOff and levelControl (dimmer)
  • a light with onOff, levelControl and colorControl (with XY, HS and CT) clusters
  • a light with onOff, levelControl and colorControl (with HS and CT) clusters
  • a light with onOff, levelControl and colorControl (with XY and CT) clusters
  • a light with onOff, levelControl and colorControl (with CT only) clusters
  • an outlet (plug) with onOff cluster
  • a cover with windowCovering cluster and lift feature
  • a cover with windowCovering cluster and both lift and tilt features
  • a lock with doorLock cluster
  • a thermo autoMode (i.e. with Auto Heat and Cool features) with thermostat cluster and 3 sub endpoints with flowMeasurement cluster, temperatureMeasurement cluster and relativeHumidityMeasurement cluster (to show how to create a composed device with sub endpoints)
  • a thermo heat only with two external temperature sensors (tagged like Indoor and Outdoor)
  • a thermo cool only
  • a fan with FanControl cluster
  • a rainSensor device
  • a waterFreezeDetector device
  • a waterLeakDetector device
  • a smokeCoAlarm (with smoke and co features) sensor (supported by Apple Home)
  • a smokeCoAlarm (with smoke only feature) sensor (supported by Apple Home)
  • a smokeCoAlarm (with co only feature) sensor (supported by Apple Home)
  • an airConditioner device
  • an airPurifier device with temperature and humidity sensor (supported by Apple Home)
  • a pumpDevice device
  • a waterValve device
  • an airQuality device with all concentration measurements clusters (supported by Apple Home with the concentration measurements from version 18.5)
  • a momentary switch composed by three switches (tagged with One Two Three and Top Middle Bottom)
  • a latching switch
  • a Robot Vacuum Cleaner device (supported by SmartThings, Alexa, Home Assistant and partially by Apple Home). Read also https://github.com/Luligu/matterbridge/discussions/264.
  • a onOff Mounted Switch device (supported by SmartThings, Alexa, Home Assistant)
  • a dimmer Mounted Switch device (supported by SmartThings, Alexa, Home Assistant)
  • a laundry Washer device (supported by SmartThings, Alexa and Home Assistant)
  • a laundry Dryer device (supported by SmartThings, Alexa and Home Assistant)
  • a dishwasher device (supported by SmartThings, Alexa and Home Assistant)
  • a refrigerator device (supported by SmartThings, Alexa and Home Assistant)
  • an oven device (supported by SmartThings, Alexa and Home Assistant)
  • a microwave Oven device (supported by SmartThings, Alexa and Home Assistant)
  • an extractor Hood device (supported by SmartThings, Alexa and Home Assistant)
  • a cooktop device (supported by SmartThings, Alexa and Home Assistant)
  • a water heater device (supported by SmartThings and Home Assistant)
  • a car charger device (supported by Home Assistant)

All these devices continuously change state and position. The plugin also shows how to use all the command handlers (you can control all the devices), how to subscribe to attributes and how to trigger events.

If you want to write your plugin, the easiest way to start create a new plugin is to clone the Matterbridge Plugin Template which has Dev Container support for instant development environment and all tools and extensions (like Node.js, npm, TypeScript, ESLint, Prettier, Jest and Vitest) already loaded and configured.

If you like this project and find it useful, please consider giving it a star on GitHub at https://github.com/Luligu/matterbridge-example-dynamic-platform and sponsoring it.

Buy me a coffee

Prerequisites

Matterbridge

See the guidelines on Matterbridge for more information.