Documentation:Modules/mqtt: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
Restructured as a table of commands and responses |
||
| (5 intermediate revisions by the same user not shown) | |||
| Line 17: | Line 17: | ||
|default=1883 | |default=1883 | ||
|description=Port number of MQTT broker to connect to | |description=Port number of MQTT broker to connect to | ||
}} | |||
{{Option | |||
|name=mqtt-username | |||
|value=string | |||
|default=none | |||
|description=The username to connect to the broker with | |||
}} | |||
{{Option | |||
|name=mqtt-password | |||
|value=string | |||
|default=none | |||
|description=The password to connect to the broker with | |||
}} | }} | ||
{{Option | {{Option | ||
| Line 24: | Line 36: | ||
|description=The topic name prefix to use | |description=The topic name prefix to use | ||
}} | }} | ||
{{Option | |||
|name=mqtt-clientid | |||
|value=string | |||
|default=random | |||
|description=The client identifier to connect to the broker as | |||
}} | |||
{{Option | |||
|name=mqtt-keepalive | |||
|value=string | |||
|default=10 | |||
|description=The keep alive time for the MQTT protocol (in seconds) | |||
}} | |||
{{Option | |||
|name=mqtt-qos | |||
|value=string | |||
|default=1 | |||
|description=The QoS level to publish and subscribe using (0, 1 or 2) | |||
}} | |||
== Protocol == | |||
=== Commands === | |||
Sent from client to VLC. | |||
{| class="wikitable" | |||
|- | |||
! Direction !! Topic !! Payload !! Description | |||
|- | |||
| <big>→</big> || vlc/command || <cmd> <arguments> || Any of the below | |||
|- | |||
| <big>→</big> || vlc/command/add || <url> || Add <url> to the playlist | |||
|- | |||
| <big>→</big> || vlc/command/delete || <pos> || delete item <pos> in playlist | |||
|- | |||
| <big>→</big> || vlc/command/clear || || clear the playlist | |||
|- | |||
| <big>→</big> || vlc/command/play || <pos> || Start playing item at <pos> | |||
|- | |||
| <big>→</big> || vlc/command/pause || || Pause Playback | |||
|- | |||
| <big>→</big> || vlc/command/stop || || Stop Playback | |||
|- | |||
| <big>→</big> || vlc/command/goto || <pos> || Goto item at index <pos> | |||
|- | |||
| <big>→</big> || vlc/command/next || || Start playing next item in playlist | |||
|- | |||
| <big>→</big> || vlc/command/prev || || Start playing prev item in playlist | |||
|- | |||
| <big>→</big> || vlc/command/seek || <time> || Seek to <time> in the current item (in seconds) | |||
|- | |||
| <big>→</big> || vlc/command/volume || <vol> || Set volume to <vol> (0 to 255) | |||
|- | |||
| <big>→</big> || vlc/command/volup || <vol> || Increase volume by <vol> | |||
|- | |||
| <big>→</big> || vlc/command/voldown || <vol> || Decrease volume by <vol> | |||
|- | |||
| <big>→</big> || vlc/command/repeat || <mode> || Turn on or off playlist ''repeat'' mode (0 or 1) | |||
|- | |||
| <big>→</big> || vlc/command/random || <mode> || Turn on or off playlist ''random'' mode (0 or 1) | |||
|- | |||
| <big>→</big> || vlc/command/loop || <mode> || Turn on or off playlist ''loop'' mode (0 or 1) | |||
|- | |||
|} | |||
=== Status === | |||
Sent from VLC to client. | |||
{| class="wikitable" | |||
|- | |||
! Direction !! Topic !! Payload !! Description | |||
|- | |||
| <big>←</big> || vlc/status/playlist || <json> || A JSON representation of the playlist is sent whenever the playlist changes. | |||
|- | |||
| <big>←</big> || vlc/status/state || <state> || This retained message is sent by VLC whenever the player changes state: | |||
* opening | |||
* buffering | |||
* playing | |||
* paused | |||
* stopped | |||
* ended | |||
* error | |||
* notconnected | |||
|- | |||
| <big>←</big> || vlc/status/playing || <json> || Information about the currently playing item as JSON is sent whenever a new item starts playing. | |||
|- | |||
| <big>←</big> || vlc/status/time || <time> || Progress through the current stream as decimal seconds | |||
|- | |||
| <big>←</big> || vlc/status/length || <time> || Duration of current stream as decimal seconds | |||
|- | |||
| <big>←</big> || vlc/status/volume || <vol> || The current volume between 0 and 255 (inclusive) | |||
|} | |||
[[Category:Interfaces]] | [[Category:Interfaces]] | ||
Latest revision as of 10:31, 5 May 2014
NOTE: this module is in active development and has not made it into the main tree yet.
| Module: mqtt | |
|---|---|
| Type | Interface |
| First VLC version | - |
| Last VLC version | - |
| Operating system(s) | Any that support the mosquitto library |
| Description | control VLC using the MQTT protocol |
| Shortcut(s) | - |
This module will let you send control messages to VLC using the MQTT protocol.
Options
- mqtt-host <string> : Hostname of MQTT broker to connect to default value: localhost
- mqtt-port <integer> : Port number of MQTT broker to connect to default value: 1883
- mqtt-username <string> : The username to connect to the broker with default value: none
- mqtt-password <string> : The password to connect to the broker with default value: none
- mqtt-prefix <string> : The topic name prefix to use default value: vlc/
- mqtt-clientid <string> : The client identifier to connect to the broker as default value: random
- mqtt-keepalive <string> : The keep alive time for the MQTT protocol (in seconds) default value: 10
- mqtt-qos <string> : The QoS level to publish and subscribe using (0, 1 or 2) default value: 1
Protocol
Commands
Sent from client to VLC.
| Direction | Topic | Payload | Description |
|---|---|---|---|
| → | vlc/command | <cmd> <arguments> | Any of the below |
| → | vlc/command/add | <url> | Add <url> to the playlist |
| → | vlc/command/delete | <pos> | delete item <pos> in playlist |
| → | vlc/command/clear | clear the playlist | |
| → | vlc/command/play | <pos> | Start playing item at <pos> |
| → | vlc/command/pause | Pause Playback | |
| → | vlc/command/stop | Stop Playback | |
| → | vlc/command/goto | <pos> | Goto item at index <pos> |
| → | vlc/command/next | Start playing next item in playlist | |
| → | vlc/command/prev | Start playing prev item in playlist | |
| → | vlc/command/seek | Seek to | |
| → | vlc/command/volume | <vol> | Set volume to <vol> (0 to 255) |
| → | vlc/command/volup | <vol> | Increase volume by <vol> |
| → | vlc/command/voldown | <vol> | Decrease volume by <vol> |
| → | vlc/command/repeat | <mode> | Turn on or off playlist repeat mode (0 or 1) |
| → | vlc/command/random | <mode> | Turn on or off playlist random mode (0 or 1) |
| → | vlc/command/loop | <mode> | Turn on or off playlist loop mode (0 or 1) |
Status
Sent from VLC to client.
| Direction | Topic | Payload | Description |
|---|---|---|---|
| ← | vlc/status/playlist | <json> | A JSON representation of the playlist is sent whenever the playlist changes. |
| ← | vlc/status/state | <state> | This retained message is sent by VLC whenever the player changes state:
|
| ← | vlc/status/playing | <json> | Information about the currently playing item as JSON is sent whenever a new item starts playing. |
| ← | vlc/status/time | Progress through the current stream as decimal seconds | |
| ← | vlc/status/length | Duration of current stream as decimal seconds | |
| ← | vlc/status/volume | <vol> | The current volume between 0 and 255 (inclusive) |