Git Product home page Git Product logo

homebridge-dafang-mqtt-republish's Introduction

homebridge-dafang-mqtt-republish

npm npm verified-by-homebridge

This plugin handles MQTT messages from Dafang Hacks to allow control of many features from within HomeKit.

The "republish" in the name is because this started as a way to to republish motion MQTT messages for homebridge-camera-ffmpeg, but that plugin now can handle MQTT messages from Dafang Hacks directly when properly configured, so that functionality has been removed from this.

Installation

More detailed setup instructions available in the wiki.

  1. Install Homebridge using the official instructions.
  2. Install homebridge-camera-ffmpeg using sudo npm install -g homebridge-camera-ffmpeg --unsafe-perm.
  3. Install this plugin using sudo npm install -g homebridge-dafang-mqtt-republish.
  4. Update your configuration file. See configuration sample below.

Configuration

Edit your config.json accordingly. Configuration sample:

"platforms": [
   {
       "platform": "dafangMqtt",
       "server": "10.0.1.190",
       "port": 1883,
       "cameras": [
           {
               "name": "Cat Food Camera",
               "dafang_topic": "dafang/catcam"
           }
       ]
   }
]
  • server: The address of your MQTT server. (Default: 127.0.0.1)
  • port: The port of your MQTT server. (Default: 1883)
  • tls: Use TLS to connect to the MQTT server. (Default: false)
  • cameras: (Required) Array of Dafang Hacks camera configs (multiple supported).
    • name: (Required) Name of your camera. (Needs to be the same as in homebridge-camera-ffmpeg config)
    • dafang_topic: (Required) MQTT topic that your camera publishes to. (Must be unique per camera)
    • manufacturer: Manufacturer for exposed accessories.
    • model: Model for exposed accessories.
    • serialNumber: Serial number for exposed accessories.
    • firmwareRevision: Firmware revision for exposed accessories.
    • accessories
      • blueLed: Exposes blue LED as a lightbulb.
      • yellowLed: Exposes yellow LED as a lightbulb.
      • irLed: Exposes IR LED as a lightbulb.
      • irCut: Exposes IR filter as a switch.
      • brightness: Exposes brightness as a light sensor. Can be set to either hw or virtual and should match what your camera is configured to use. virtual is experimental and the values are unlikely to be accurate or useful.
      • nightMode: Exposes night mode as a switch.
      • motionTracking: Exposes motion tracking as a switch.
      • motorsVertical: Exposes tilting up and down as switches.
      • motorsHorizontal: Exposes panning left and right as switches.
      • motorsCalibrate: Exposes calibration as a switch.
      • recording: Exposes video recording as a switch.
      • snapshot: Exposes snapshot as a switch.
      • rtsp_mjpeg_server: Exposes RTSP MJPEG server as a switch.
      • rtsp_h264_server: Exposes RTSP H264 server as a switch.
      • remount_sdcard: Exposes remounting SD card as a switch.
      • reboot: Exposes rebooting as a switch.

homebridge-dafang-mqtt-republish's People

Contributors

dependabot[bot] avatar sunoo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

homebridge-dafang-mqtt-republish's Issues

"Multiple cameras configured" error, can't figure out where they are!

I'm seeing this in my log, and camera MQTT events aren't working:

3/9/2021, 8:17:14 AM [Dafang MQTT] Initializing dafangMqtt platform...
3/9/2021, 8:17:14 AM [Dafang MQTT] Configuring "GarageCam" on topic "yonder-alerts/garagecam".
3/9/2021, 8:17:14 AM [Dafang MQTT] Configuring "GateCam" on topic "yonder-alerts/gatecam".
3/9/2021, 8:17:14 AM [Dafang MQTT] WARNING: Multiple cameras named "GateCam" configured. Only the first loaded will function.
3/9/2021, 8:17:14 AM [Dafang MQTT] WARNING: Multiple cameras with topic "yonder-alerts/gatecam" configured. Only the first loaded will function.
3/9/2021, 8:17:14 AM [Dafang MQTT] There was error with the config so this camera was ignored.
3/9/2021, 8:17:14 AM [Dafang MQTT] Configuring "DoorbellCam" on topic "yonder-alerts/doorbellcam".
3/9/2021, 8:17:14 AM [Dafang MQTT] WARNING: Multiple cameras named "DoorbellCam" configured. Only the first loaded will function.
3/9/2021, 8:17:14 AM [Dafang MQTT] WARNING: Multiple cameras with topic "yonder-alerts/doorbellcam" configured. Only the first loaded will function.
3/9/2021, 8:17:14 AM [Dafang MQTT] There was error with the config so this camera was ignored.
3/9/2021, 8:17:14 AM [Dafang MQTT] Configuring "StudyCam" on topic "yonder-alerts/studycam".
3/9/2021, 8:17:14 AM [Dafang MQTT] WARNING: Multiple cameras named "StudyCam" configured. Only the first loaded will function.
3/9/2021, 8:17:14 AM [Dafang MQTT] WARNING: Multiple cameras with topic "yonder-alerts/studycam" configured. Only the first loaded will function.
3/9/2021, 8:17:14 AM [Dafang MQTT] There was error with the config so this camera was ignored.

Each camera is defined exactly once in the dafangMqtt section and in the Camera-ffmpeg sections of config.json. I've tried deleting everything in the "accessories" directory, and there are no duplicates in the "persist" directory. Where else do I need to look?

Saving snapshots and recordings

I recently found this plugin after using the "Homebridge Dafang" plugin for a while now. It's been pretty reliable for me despite a few quirks. Unfortunately, it looks like it has been abandoned.

I did notice that in Homebridge Dafang, you can set where your snapshots and videos are saved to. For instance, I was saving my files to my icloud drive. In homebridge-dafang-mqtt-republish, there doesn't seem to be this setting and will save recordings onto the sdcard. I have no idea where snapshots are saved to.

Is there a setting where I can set where snapshots and recordings are saved to and I just missed it?

Thank you!

Xiaofang 1S not reporting any motion via notification

I've followed the same config as stated, enabled notifications for this device on my phone, but I'm not getting any notification for motion detection despite having it turned on via camera's IP site.

Screenshot 2020-08-24 at 7 24 45 PM

I also found this toggle refused to turn on. After I turned it on, it goes back off again after refreshing the page.

How to set up an MQTT broker or is this plugin a broker itself?

Hi all,

I am a complete newbie and I need help. My goal is to receive a notification when the camera detects a motion so I can use it for automations.

I installed the firmware for the Wyze V2 camer and I am able to access in using the local IP address. I set it up as explained here: https://github.com/sahilchaddha/homebridge-dafang/blob/master/Setup_MQTT.md. I also have this plugin installed and configured.

Do I need a separate MQTT broker install? I do have MQTT-Things installed but have no idea how to configure it.

Any help would be appreciated. Thank you!

Feature request from homebridge-dafang

Hi, I'm having serious problems with rtsp service on Xiaomi Xiaofang 1S. Rtsp service suddenly gets killed, the only way to get it work again is rebooting or restarting rtsp process login at camera web UI.

It will be helpful if you implement some "Accessories" like it's done on homebridge-dafang plugin, like "remountSwitch", ""resetFFMPEG", "rtspSwitch" and "restartSwitch". With that implemented you can add an automation at Home app, so like every 3 hours, rtsp service is restarted.

It seems it's the only solution for rtsp service issue.

Thanks in advance

HomeKit not getting motion detection

Hi, I've installed this hack successfully for both Xiaofang and Dafang. However, despite troubleshooting and opening tickets to Dafang Hacks (not getting response), I'm still not getting any motion detection notification on the Home app.

I have enabled Motion -MQTT Message, enabled notification on the Home app. When I run mosquitto_sub -v -t '#' command I believe the motion was recognized by the camera.

Screenshot 2020-09-14 at 10 53 03 AM

I'm really stuck here, as these cameras were recently blocked by Xiaomi due to geographical restrictions :(

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.