Giter VIP home page Giter VIP logo

beehive's Introduction

beehive – your zigbee command-line service

beehive wants to be a set of scripts to send commands to your zigbee devices via zigbee2mtqq.

It performs the same role as mosquitto-pub, but in a more limited way that is tailored specifically to zigbee2mtqq, with niceties such as shorter syntax, printing responses on console, and formatting/colouring of json.

Still alpha/experimental.

screenshot

What's working right now

  • publishing to publishable topics
  • automatically wait for a relevant message after publication, pretty-prints it colorfully
  • detailed logs
  • saves some typing
  • convenient syntax for key:value json, use at your own peril, it’s dangerous (it’s yaml)

Sample working commands:

tellbee myikealamp/set/state on

tellbee --host raspberry myikealamp/get/color

tellbee myikealamp/set/color '#ff00ff'

# proper json
tellbee myikealamp/set '{"color": "#0000ff", "transition": 2}'

# hacky version
tellbee myikealamp/set color:#0000ff,transition:2

tellbee --host raspberry bridge/request/health_check --timeout 10 --qos 0 --debug

Config file

All command-line options can have defaults saved in ~/.config/beehive/beehive.yaml, for example:

host: myhost.example.com
timeout: 4
qos: 0
guess: no

References

TODO

  • solve the push issue: how can we request at command-line time the information that z2m publishes at its own leisure?
    • is there a way to trigger topics after subscribing?
    • else we'll have to leave a lil dæmon running client-side
    • oor, dig through the syslog sever-side
    • ooor, ask z2m to reload itself :>
    • if a way is found, we could:
      • list devices
      • list device's capabilities
      • set friendly name
      • other kinds of bridge and device info
  • separate library/script code better
  • and write a beesaid(1)
  • static typing checks
  • pypi pkg
  • passwd auth
  • ssl auth

beehive's People

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.