Buzz your hackerspace! And get a response! 🔊
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
hackspaceCommunicator
.Procfile
.gitignore
README.md
config.js
index.js
package.json

README.md

Hackerspace Communicator

Telegram bot and Arduino sketch talking over MQTT, which together allows people in a group chat to "buzz" their hackerspace.

Telegram Bot

Shoved on Heroku, it "Just Works". I've used a CloudMQTT MQTT server.

You'll need config values set before it'll work:

  • CLOUDMQTT_URL - the URL that your MQTT server is running on
  • TOKEN - Telegram bot token. Generate this by talking to the BotFather.
  • APP_URL - used for callbacks from Telegram API
  • PORT - defaults to 443

Run npm run start to get it going.

Arduino Code

The Arduino code can be found in /hackspaceCommunicator.

This is designed to run on a Wemos D1 Mini but can be used with nodeMCU as they both use the ESP8266.

You'll want to insert your WiFi details, and details of the cloudMQTT server. The wiring diagram:

Infrastructure

I've used Heroku for it's simplicity in getting something running and free tier features. You can use other services and your own MQTT server by changing the connection details in the arduino code and bot code.

For MQTT topics, I've used buzz/syn for when someone sends a buzz, buzz/ack for when it's acknowledged, and buzz/dnd for when the DND plunger is depressed.