mirror of
https://forge.fsky.io/lda/Parsee.git
synced 2026-03-13 15:15:10 +00:00
This is still unstable(and I still need to design/document the exposed API)! Do(n't) go and use it!
57 lines
3.2 KiB
C
57 lines
3.2 KiB
C
/* C X-macro file */
|
|
#define XMPPCOMMANDS \
|
|
XMPP_COMMAND(StatusCallback, XMPPCMD_ALL, "stats", "Get Parsee statistics", {}) \
|
|
XMPP_COMMAND(CleanCallback, XMPPCMD_ADMINS, "clean", "Cleanup temporary Parsee data", {}) \
|
|
XMPP_COMMAND(AdminsCallback, XMPPCMD_ALL, "admin", "Get Parsee admin list", {}) \
|
|
XMPP_COMMAND(NoflyCallback, XMPPCMD_ADMINS, "nofly", "Get Parsee nofly list", {}) \
|
|
XMPP_COMMAND(AddAdminCallback, XMPPCMD_ADMINS, "add-admin", "Adds glob as admin", { \
|
|
XMPPOption *glob = XMPPCreateText(true, "glob", ""); \
|
|
XMPPSetDescription(glob, "Glob pattern to set as admin"); \
|
|
XMPPAddOption(cmd, glob); \
|
|
\
|
|
XMPPSetFormTitle(cmd, "Admin addition form"); \
|
|
XMPPSetFormInstruction(cmd, "Select a glob pattern to add as an admin"); \
|
|
}) \
|
|
XMPP_COMMAND(DelAdminCallback, XMPPCMD_ADMINS, "del-admin", "Removes glob from being admin", { \
|
|
XMPPCmdOptionsCreator(cmd, FormDelAdminCallback); \
|
|
XMPPSetFormTitle(cmd, "Admin removal form"); \
|
|
XMPPSetFormInstruction(cmd, "Select a glob pattern to remove as an admin"); \
|
|
}) \
|
|
XMPP_COMMAND(AddNoflyCallback, XMPPCMD_ADMINS, "add-nofly", "Adds user to nofly", { \
|
|
XMPPOption *entity = XMPPCreateText(true, "entity", ""); \
|
|
XMPPOption *reason = XMPPCreateText(false, "reason", "Not behaving"); \
|
|
XMPPSetDescription(entity, "Entity(glob) to no-fly"); \
|
|
XMPPAddOption(cmd, entity); \
|
|
XMPPSetDescription(reason, "Reason for the no-fly"); \
|
|
XMPPAddOption(cmd, reason); \
|
|
\
|
|
XMPPSetFormTitle(cmd, "No-fly addition form"); \
|
|
XMPPSetFormInstruction(cmd, "Select a glob pattern to add to the nofly"); \
|
|
}) \
|
|
XMPP_COMMAND(ClearWhitelistCallback, XMPPCMD_ADMINS, "clear-wl", "Removes the chat whitelist", {}) \
|
|
XMPP_COMMAND(AddWhitelistCallback, XMPPCMD_ADMINS, "add-wl", "Adds server to chat whitelist", { \
|
|
XMPPOption *serv = XMPPCreateText(true, "entity", ""); \
|
|
XMPPSetDescription(serv, "Server to mark as admin"); \
|
|
XMPPAddOption(cmd, serv); \
|
|
\
|
|
XMPPSetFormTitle(cmd, "Chatlist addition form"); \
|
|
XMPPSetFormInstruction(cmd, "Add a server to whitelist"); \
|
|
}) \
|
|
XMPP_COMMAND(WhitelistCallback, XMPPCMD_ADMINS, "wl", "Get Parsee's chat whitelist", {}) \
|
|
XMPP_COMMAND(MUCInformationID, XMPPCMD_MUC, "muc-info-id", "Get bridged Matrix room ID", {}) \
|
|
XMPP_COMMAND(MUCInformationCID, XMPPCMD_MUC, "muc-info-cid", "Get MUC's internal ID", {}) \
|
|
XMPP_COMMAND(MUCUnlink, XMPPCMD_MUC, "muc-unlink", "Unlinks MUC", {}) \
|
|
XMPP_COMMAND(MUCSetKey, XMPPCMD_MUC, "muc-set-key", "Sets a key within the MUC/room's context", { \
|
|
XMPPOption *key = XMPPCreateText(true, "key", ""); \
|
|
XMPPOption *val = XMPPCreateText(true, "val", ""); \
|
|
XMPPSetDescription(key, "Key"); \
|
|
XMPPSetDescription(val, "Value"); \
|
|
XMPPAddOption(cmd, key); \
|
|
XMPPAddOption(cmd, val); \
|
|
\
|
|
XMPPSetFormTitle(cmd, "Set a key-value pair"); \
|
|
XMPPSetFormInstruction(cmd, "Replace a key with a specific value"); \
|
|
}) \
|
|
XMPP_COMMAND(MUCGetKeys, XMPPCMD_MUC, "muc-get-keys", "Get all key-values in the MUC/room.", {}) \
|
|
|
|
XMPPCOMMANDS
|