Difference between revisions of "RQ"
m (→Temperature Sensors: Add missing fablab sensor.) |
(→IRC: updating with new payload format. captured by using mqtt.fx client and triggering an !alert in the #makerslocal irc channel) |
||
(11 intermediate revisions by 4 users not shown) | |||
Line 14: | Line 14: | ||
== MQTT Info== | == MQTT Info== | ||
− | When connecting to mqtt be sure to set your clientid to something useful like 'rqirc'. This will help to determine who is causing problems if/when they do. | + | * Currently we only support mqtt connects, and not websockets (maybe soon). |
+ | * When connecting to mqtt be sure to set your clientid to something useful like 'rqirc'. This will help to determine who is causing problems if/when they do. | ||
==== Local Host ==== | ==== Local Host ==== | ||
+ | * type: mqtt | ||
* dns: iot | * dns: iot | ||
* ip: 10.56.0.18 | * ip: 10.56.0.18 | ||
Line 22: | Line 24: | ||
==== Remote Host ==== | ==== Remote Host ==== | ||
+ | * type: mqtt | ||
* host: 256.makerslocal.org | * host: 256.makerslocal.org | ||
* port: 35801 | * port: 35801 | ||
Line 30: | Line 33: | ||
[https://github.com/itsamenathan/rqirc rqirc] will send out a message for thing like '!string'. | [https://github.com/itsamenathan/rqirc rqirc] will send out a message for thing like '!string'. | ||
example: !alert I cut my finger off | example: !alert I cut my finger off | ||
− | ml256/irc/makerslocal/command/alert {"command":"alert", " | + | ml256/irc/makerslocal/command/alert {"command":"alert","nick":"jimshoe","channel":"#makerslocal","message":"I cut my finger off"} |
example: !shopstatus | example: !shopstatus | ||
Line 36: | Line 39: | ||
==== Temperature Sensors ==== | ==== Temperature Sensors ==== | ||
− | Six Synapse RM-150 wireless temperature sensors are placed around the building that check in every five minutes. They are currently located in the "kitchen", "office", "loft", "memberstorage", "fablab", and "tool" areas. The RM-150 in "memberstorage" has an additional external k-type themocouple input connected on "ext0". | + | Six Synapse Wireless Inc. RM-150 (unreleased & not-supported) wireless temperature sensors are placed around the building that check in every five minutes. They are currently located in the "kitchen", "office", "loft", "memberstorage", "fablab", and "tool" areas. The RM-150 in "memberstorage" has an additional external k-type themocouple input connected on "ext0". |
Ambient temperature in tool area: | Ambient temperature in tool area: | ||
− | ml256/tool/temp/ambient {"temperature": | + | ml256/tool/temp/ambient {"units": "f", "sensor": "ambient", "temperature": 84.56, "location": "tool"} |
Ambient temperature in the fablab: | Ambient temperature in the fablab: | ||
− | ml256/ | + | ml256/kitchen/temp/ambient {"units": "f", "sensor": "ambient", "temperature": 83.66, "location": "kitchen"} |
External thermocouple sensor temperature in member storage: | External thermocouple sensor temperature in member storage: | ||
− | ml256/memberstorage/temp/ext0 {"temperature": | + | ml256/memberstorage/temp/ext0 {"units": "f", "sensor": "ext0", "temperature": 84.91999999999999, "location": "memberstorage"} |
==== Wiki Changes ==== | ==== Wiki Changes ==== | ||
− | + | The wiki is using [https://www.mediawiki.org/wiki/Extension:XMLRC XMLRC] plugin to send an xml message out over udp. Currently this is happing from remote->dev. On dev a small nodejs script is running that is converting the XML to JSON and sending it out over mqtt. | |
+ | |||
+ | ml256/wiki/changes | ||
+ | { | ||
+ | "type":"edit", | ||
+ | "ns":"2", | ||
+ | "title":"User:Jimshoe", | ||
+ | "rcid":"20018", | ||
+ | "pageid":"1716", | ||
+ | "revid":"19945", | ||
+ | "old_revid":"19938", | ||
+ | "user":"Jimshoe", | ||
+ | "oldlen":"1147", | ||
+ | "newlen":"1146", | ||
+ | "timestamp":"2016-04-17T03:14:28Z", | ||
+ | "comment":"spaces", | ||
+ | "wikiid":"wikidb" | ||
+ | } | ||
+ | |||
+ | ==== Big Sign ==== | ||
+ | This is the big sign at the shop. | ||
+ | ml256/bigsign/alert {"source": "itsamenathan", "message": "this is only a test"} | ||
+ | |||
+ | ==== CasCADE ==== | ||
+ | This is the change machine at the shop. | ||
+ | |||
+ | Emitted when a withdrawal is made: | ||
+ | ml256/cascade/withdrawal {"user": "tylercrumpton", "amount": 0.50} | ||
+ | Also emitted when a withdrawal is made: | ||
+ | ml256/cascade/bank {"funds": 23.50} | ||
+ | Some errors are also emitted: | ||
+ | ml256/cascade/error {"error": "NO_MACHINE_FUNDS", "message": "Machine funds are depleted."} | ||
+ | ml256/cascade/error {"error": "NO_USER_FOUND", "message": "No user with that ID was found."} | ||
+ | |||
+ | ==== Events ==== | ||
+ | This is a message sent from [https://github.com/makerslocal/eventwitter eventwitter] | ||
+ | |||
+ | ml256/event/reminder | ||
+ | { | ||
+ | "type": "VEVENT", | ||
+ | "params": [], | ||
+ | "start": "2016-05-10T23:30:00.000Z", | ||
+ | "end": "2016-05-11T02:00:00.000Z", | ||
+ | "uid": "19SAp3aKyx2KXESnxLzpFA", | ||
+ | "summary": "Workshop Safety Class", | ||
+ | "url": "http://ml256.org/w34w", | ||
+ | "description": "http://ml256.org/w34w", | ||
+ | "msg": "week" | ||
+ | } | ||
== History == | == History == |
Latest revision as of 23:24, 22 February 2019
Contents
[hide]Overview
Redqueen is a way to pass messages between all the iot devices we have at the shop in a way that is documented and expected.
Network Setup
We currently have two mqtt brokers setup, one that is local to the shop and is wide open for anything to send/receive. The other broker is located on our remote webserver and is exposed publicly with SSL and a username/password, meaning you will need to ask an Admin for access. All messages are mirrored between the brokers.
Local only Available from outside -------------- -------------------------- | iot server | <----> | remote.makerslocal.org | -------------- --------------------------
Messages
Messages will be send in 1st person. As in "I (door) changed my status to open.". This is different than "Hey you, door....OPEN!".
MQTT Info
- Currently we only support mqtt connects, and not websockets (maybe soon).
- When connecting to mqtt be sure to set your clientid to something useful like 'rqirc'. This will help to determine who is causing problems if/when they do.
Local Host
- type: mqtt
- dns: iot
- ip: 10.56.0.18
- port: default, 1883
- user/pass: Not needed
Remote Host
- type: mqtt
- host: 256.makerslocal.org
- port: 35801
- user/pass: Ask admin for access
Messages
IRC
rqirc will send out a message for thing like '!string'.
example: !alert I cut my finger off ml256/irc/makerslocal/command/alert {"command":"alert","nick":"jimshoe","channel":"#makerslocal","message":"I cut my finger off"} example: !shopstatus ml256/irc/gen/command/shopstatus {"command":"shopstatus", "channel":"##gen", "user":"tylercrumpton", "message":""}
Temperature Sensors
Six Synapse Wireless Inc. RM-150 (unreleased & not-supported) wireless temperature sensors are placed around the building that check in every five minutes. They are currently located in the "kitchen", "office", "loft", "memberstorage", "fablab", and "tool" areas. The RM-150 in "memberstorage" has an additional external k-type themocouple input connected on "ext0".
Ambient temperature in tool area:
ml256/tool/temp/ambient {"units": "f", "sensor": "ambient", "temperature": 84.56, "location": "tool"}
Ambient temperature in the fablab:
ml256/kitchen/temp/ambient {"units": "f", "sensor": "ambient", "temperature": 83.66, "location": "kitchen"}
External thermocouple sensor temperature in member storage:
ml256/memberstorage/temp/ext0 {"units": "f", "sensor": "ext0", "temperature": 84.91999999999999, "location": "memberstorage"}
Wiki Changes
The wiki is using XMLRC plugin to send an xml message out over udp. Currently this is happing from remote->dev. On dev a small nodejs script is running that is converting the XML to JSON and sending it out over mqtt.
ml256/wiki/changes { "type":"edit", "ns":"2", "title":"User:Jimshoe", "rcid":"20018", "pageid":"1716", "revid":"19945", "old_revid":"19938", "user":"Jimshoe", "oldlen":"1147", "newlen":"1146", "timestamp":"2016-04-17T03:14:28Z", "comment":"spaces", "wikiid":"wikidb" }
Big Sign
This is the big sign at the shop.
ml256/bigsign/alert {"source": "itsamenathan", "message": "this is only a test"}
CasCADE
This is the change machine at the shop.
Emitted when a withdrawal is made:
ml256/cascade/withdrawal {"user": "tylercrumpton", "amount": 0.50}
Also emitted when a withdrawal is made:
ml256/cascade/bank {"funds": 23.50}
Some errors are also emitted:
ml256/cascade/error {"error": "NO_MACHINE_FUNDS", "message": "Machine funds are depleted."} ml256/cascade/error {"error": "NO_USER_FOUND", "message": "No user with that ID was found."}
Events
This is a message sent from eventwitter
ml256/event/reminder { "type": "VEVENT", "params": [], "start": "2016-05-10T23:30:00.000Z", "end": "2016-05-11T02:00:00.000Z", "uid": "19SAp3aKyx2KXESnxLzpFA", "summary": "Workshop Safety Class", "url": "http://ml256.org/w34w", "description": "http://ml256.org/w34w", "msg": "week" }
History
This is the documentation for the current version of RedQueen. RedQueen is a documented way to pass messages between devices inside and outside the shop. We have gone through a few versions.