All Projects → potrudeau → homebridge-messenger

potrudeau / homebridge-messenger

Licence: MIT license
Send HomeKit messages with HomeBridge (Pushover / IFTTT / Email)

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to homebridge-messenger

homebridge-keylights
Yet another Homebridge plugin for Elgato Key Light and Key Light Air. https://homebridge.io
Stars: ✭ 40 (-45.95%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-adb
Homebridge script to control remote ADB enabled Android device
Stars: ✭ 56 (-24.32%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-unifi-occupancy-sensor
An occupancy sensor for Homebridge and UniFi
Stars: ✭ 71 (-4.05%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-vsx
📻 A VSX and SC Plugin for homebridge
Stars: ✭ 12 (-83.78%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-pi-thermostat
Homebridge Plugin to make Raspberry Pi into Thermostat
Stars: ✭ 33 (-55.41%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-homee
use your homee with homebridge
Stars: ✭ 14 (-81.08%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-mijia-camera
Homebridge plugin for the Xiaomi Mijia 1080P Smart IP Camera, also known as Mi Home Security Camera.
Stars: ✭ 35 (-52.7%)
Mutual labels:  homebridge, homebridge-plugin
Homebridge Gsh
Allow Google Assistant to control your Homebridge accessories.
Stars: ✭ 190 (+156.76%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-vieramatic
Homebridge plugin for Panasonic™ Viera™ TVs (includes support for 2018 and later models)
Stars: ✭ 39 (-47.3%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-open-sesame
Homebridge plugin for SESAME3 and SESAME4
Stars: ✭ 14 (-81.08%)
Mutual labels:  homebridge, homebridge-plugin
Homebridge Mi Acpartner
XiaoMi AC Partner plugins for HomeBridge(https://github.com/nfarina/homebridge).
Stars: ✭ 250 (+237.84%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-z2m
Expose your Zigbee devices to HomeKit with ease, by integrating 🐝 Zigbee2MQTT with 🏠 Homebridge.
Stars: ✭ 197 (+166.22%)
Mutual labels:  homebridge, homebridge-plugin
Homebridge Myq
🚗 myQ Liftmaster and Chamberlain Plugin for Homebridge https://github.com/nfarina/homebridge
Stars: ✭ 222 (+200%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-panasonic
A Homebridge plugin for Panasonic Viera TV's. Written to support the new Homekit TV accessory.
Stars: ✭ 18 (-75.68%)
Mutual labels:  homebridge, homebridge-plugin
Homebridge Ewelink
Homebridge plugin to control eWeLink devices with original firmware.
Stars: ✭ 208 (+181.08%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-pilight
Accessory plugin for Homebridge allowing to manage and control pilight devices
Stars: ✭ 16 (-78.38%)
Mutual labels:  homebridge, homebridge-plugin
Homebridge Mi Hygrothermograph
Homebridge plugin for the Xiaomi Mi Bluetooth Temperature and Humidity Sensor
Stars: ✭ 179 (+141.89%)
Mutual labels:  homebridge, homebridge-plugin
Verified
Plugins Verified by Homebridge
Stars: ✭ 180 (+143.24%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-callmonitor
Signals incoming and outgoing calls using the call monitor facility in Fritz!Box devices via HomeKit
Stars: ✭ 25 (-66.22%)
Mutual labels:  homebridge, homebridge-plugin
homebridge-yamaha-avr
homebridge-plugin for Yamaha AVR. Audio Receiver Accessory with Power, Input, Volume & Remote Control
Stars: ✭ 39 (-47.3%)
Mutual labels:  homebridge, homebridge-plugin


homebridge-messenger

NPM downloads NPM version GitHub issues GitHub pull requests Licence verified-by-homebridge

Homebridge plugin which allow users to send messages from HomeKit.

Features

The plugin supports the following technologies:

Installation

Option 1: Install via Homebridge Config UI X:

Search for "messenger" in homebridge-config-ui-x and install homebridge-messenger.

Option 2: Manually Install:

sudo npm install -g homebridge-messenger

Configuration

The plugin adds to HomeKit a main switch and switches for each configured message.

The accessory name is used to specify the name of the main switch. If this main switch if turned OFF, no message will be sent by the plugin.

Message switches are stateless: they are turned OFF after being turned ON, once the message is sent.

There are two levels of configuration:

  • Service level properties defines the parameters for a specific technology. All messages related to that technology will be using the same properties for all messages.
    • Example: All emails will use the same SMTP configuration.
  • Message level properties contains the configuration of each message.
    • Example: Each message can have a different title and text.

All switches can be used in scenes and automation.

Homebridge Config UI X

Homebridge Config UI X is the easiest way to configure this plugin :

  • Every option is available through the UI
  • Configuration validation

Pushover

"accessories": [
      {
          "accessory": "HomebridgeMessenger",
          "name": "Messenger",
          "services": {
              "pushover": {
                  "user": "your_user",
                  "token": "your_token"
              }
          },
          "messages": [
              {
                  "type": "pushover",
                  "name": "Pushover message",
                  "text": "This is a test",
                  "sound": "pushover",
                  "device" : "iphone",
                  "priority": 0
              },
              {
                  "type": "pushover",
                  "name": "Critical message",
                  "text": "This is important",
                  "sound": "magic",
                  "priority": 2
              }         
          ]
      }
  ]
  • Service properties :
    • user (required): The user/group key of your user (or you).
    • token (required): Your application's API token.
  • Message properties :
    • type (required): Must be pushover.
    • name (required): Name of the switch and title of your message.
    • text (required): Body of the message.
    • sound (facultative): Name of the sound that will notify the user. If no valid value is provided, the default pushover sound will be used. For no sound, use silent. The Pushover API contains the list of all available sounds.
    • device (facultative): The device name to send the message to. If not specified, the message will be send to all your devices. You can send to multiple devices by using a coma.
    • priority (required): Priority of the message. Accepted values are -2, -1, 0, 1 or 2. You may refer to the Pushover API for more details. Critical messages (2), are sent with the following parameters :
      • Retry : 60 seconds
      • Expires: 3600 seconds

IFTTT (Webhooks service)

"accessories": [
    {
        "accessory": "HomebridgeMessenger",
        "name": "Messenger",
        "services": {
            "ifttt": {
                "key": "your_key"
            },
        },
        "messages": [
            {
                "type": "ifttt",
                "name": "Test IFTTT",
                "event": "my_webhook",
                "value1": "hello world",
                "value2": "foo bar",
                "value3": "chewbacca"
            }        
        ]
    }
]
  • Service properties :
    • key (required): Your key. To obtain your key, log into your IFTTT account and click on the Documentation link in the Webhooks service.
  • Message properties :
    • type (required): Must be ifttt.
    • name (required): Name of the switch. This will be not passed to IFTTT.
    • event (required): Name of your event configured in IFTTT (Webhooks service).
    • value1 (facultative): Value 1 to be passed to IFTTT.
    • value2 (facultative): Value 2 to be passed to IFTTT.
    • value3 (facultative): Value 3 to be passed to IFTTT.

Email

"accessories": [
    {
        "accessory": "HomebridgeMessenger",
        "name": "Messenger",
        "services": {
            "email": {
                "recipient": "[email protected]",
                "smtpServer": "smtp.domain.com",
                "smtpPort": 465,
                "smtpSecure": true,
                "smtpUsername": "your_username",
                "smtpPassword": "your_password"
            }
        },
        "messages": [
            {
                "type": "email",
                "name": "Test email",
                "text": "This is a test",
                "recipients": "[email protected], [email protected]"
            }        
        ]
    }
]
  • Service properties :
    • recipient (required): Default email address of the recipient.
    • smtpServer (required): Address of the SMTP host.
    • smtpPort (facultative): Port to connect to. (Default value is 25).
    • smtpSecure (facultative): Set to true if SMTP supports TLS. (Default value is false).
    • smtpUsername (facultative): Username for the SMTP server, if required.
    • smtpPassword (facultative): Password for the SMTP server, if required.
  • Message properties :
    • type (required): Must be email.
    • name (required): Name of the switch and subject of your email.
    • text (required): Body of the email.
    • recipients (facultative): Address of the recipients for this email. Multiple emails can be used, divided by a comma. If empty, the default email address at the service level will be used.

Advanced configuration

An example featuring all technologies is available here.

Coming next

Change Log

Available here

Credits

License

The homebridge-messenger plugin is released under the MIT license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].