firstlegoleague / mq-protocols Goto Github PK
View Code? Open in Web Editor NEWMessage queue bus protocols
License: GNU General Public License v2.0
Message queue bus protocols
License: GNU General Public License v2.0
Currently, most (all?) topics used by the FLL apps are using a colon as separator between a 'subsystem' of an app and a 'command/event', e.g. clock:arm
.
Also, nodes are currently used for specifying an 'app' (e.g. overlay
).
However, MHub's topic system (and especially the pattern matching for subscribing and e.g. permission management) is based on path-like topics, e.g. /some/topic
, i.e. separated with slashes.
MHub nodes should also mostly be seen as 'virtual hosts', i.e. most components in a system would normally connect to the default
node.
The proposal is to change the naming scheme of nodes and topics as used by all current FLL apps to be more consistent with MHub's underlying concepts.
This basically means changing the node name of each app to default
, and changing the topic 'schema' to something like /app/subsystem/event
, e.g. /overlay/clock/arm
, /scoring/ranking/published/qualifying
.
Advantages:
default
node is already always available in the default MHub configuration, so for a simple setup it works out-of-the-boxDisadvantages:
I suppose the work is manageable, and we could even have a simple MHub Relay transform to also forward specific new style messages to their old naming or vice-versa, if necessary.
When pause the clock using the command prob (mhub-client -t clock:pause)
and later send a message to start the clock (mhub-client -t clock:start)
The clock file will reset its time
The overlay will continue counting down
(This does not happen if you use the overlay control window)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.