Mercurial > prosody-modules
view mod_muc_bot/README.markdown @ 4931:13070c6a7ce8
mod_http_muc_log: Fix exception on lack of trailing slash in room path
A request to /room leads to the match call returning nil which in turn
calls nodeprep(nil). In Prosody 0.11.x this does nothing and simply
returns the nil, while in 0.12 it is an error.
Now it redirects to the calendar view at /room/ - even for non-existant
rooms.
Discovered at a deployment with http_paths = { muc_log = "/" } and
requests to /robots.txt and similar, which now result in a uses redirect
before returning 404.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 22 Apr 2022 14:29:32 +0200 |
parents | 9cbdb60e21f2 |
children | 55cf7f063af6 |
line wrap: on
line source
--- summary: Module for improving the life of bot authors --- This module makes it easier to write MUC bots by removing the requirement that the bot be online and joined to the room. All the bot needs to do is send a message and this module handles the rest. # Configuration Example configuration in Prosody: ```lua Component "muc.example.com" "muc" modules_enabled = { "muc_bot", } known_bots = { "bot@example.com" } bots_get_messages = false ignore_bot_errors = true ``` # Sending messages Simply send a stanza like this from your bot: ```xml <message type="groupchat" to="channel@muc.example.com"> <body>Beep boop, I'm a bot!</body> <nick xmlns="http://jabber.org/protocol/nick">Botty</nick> </message> ``` ## Use with mod_rest Using [mod_rest] to interact with MUC suffers from the same need to join with an online resource, so this module helps with that as well! ```bash curl https://xmpp.example.com/rest/message/groupchat/room@muc.example.com \ -d body="beep boop" \ -d nick="Botty" ``` # Compatibility Prosody **trunk** required.