A skill to control your Mycroft instance via MQTT protocol
Go to [[https://account.mycroft.ai/skills]], find Installer skill, paste url https://github.com/jumper047/mycroft-mqtt-adapter into "Skill URL" field and press "Save". As alternate way you can connect to your Mycroft instance via ssh and enter mycroft-skill install https://github.com/jumper047/mycroft-mqtt-adapter
To use this skill you need MQTT server and (possibly) some sort of home automation server. All features were tested with HomeAssistant but should also work with other servers (except, maybe, MQTT discovery - it was designed primary for HomeAssistant). Via this skill you can:
- Mute Mycroft's speaker and microphone
- Check if mycroft listening or speaking
- Activate command by button instead of wakeword
- Send commands directly to messagebus
MQTT credentials needed to connect to server should be setted via settings through home.mycroft.ai; after that Mycroft will connect to server. If discovery enabled (should be by default, can be changed via settings), you shold see Mycroft into Settings->Devices section. Also you can set up all switches/sensors manually using information below.
This skill uses topic mycroft/subtopic
if you set subtopic via settings, or just mycroft
if not. Below I'll assume you have only one mycroft instance and use it without device name. So there are topics you can use:
Availability topic:
mycroft/available
(payload -ONLINE
orOFFLINE
)
Mute microphone switch:
mycroft/mic_mute/set
(payload -ON
orOFF
)mycroft/mic_mute/state
(payload -ON
orOFF
)
Mute speaker switch:
mycroft/vol_mute/set
(payload -ON
orOFF
)mycroft/vol_mute/set
(payload -ON
orOFF
)
Speaking sensor:
mycroft/speaking
(payload -ON
orOFF
)
Listening sensor:
mycroft/listening
(payload -ON
orOFF
)
Listen button:
mycroft/listen_button
(payload -PRESS
)
Command topic:
mycroft/command
(payload - any command)
@jumper047
IoT
#IoT #MQTT #HomeAutomation #HomeAssistant