X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Firccap.h;h=c3fd5bdada91b6fd1c1e8f80d8b6684d85166dec;hp=bbee7cddcc5d37aa0baa0650f6208c669a3a940b;hb=e90ec7aa079d9e821ffbb125ef42722a2dededcf;hpb=6241df540a42b307e7768333848e219e381e95a5 diff --git a/src/common/irccap.h b/src/common/irccap.h index bbee7cdd..c3fd5bda 100644 --- a/src/common/irccap.h +++ b/src/common/irccap.h @@ -106,6 +106,18 @@ namespace IrcCap { */ namespace Vendor { + /** + * Twitch.tv membership message support + * + * User list in a channel can be quite large and often non required for bot users and is then optional. + * + * From Twitch.tv documentation: + * "Adds membership state event data. By default, we do not send this data to clients without this capability." + * + * https://dev.twitch.tv/docs/v5/guides/irc/#twitch-irc-capability-membership + */ + const QString TWITCH_MEMBERSHIP = "twitch.tv/membership"; + /** * Self message support, as recognized by ZNC. * @@ -131,6 +143,7 @@ namespace IrcCap { MULTI_PREFIX, SASL, USERHOST_IN_NAMES, + Vendor::TWITCH_MEMBERSHIP, Vendor::ZNC_SELF_MESSAGE }; // NOTE: If you modify the knownCaps list, update the constants above as needed. @@ -141,22 +154,6 @@ namespace IrcCap { * http://ircv3.net/specs/extensions/sasl-3.1.html */ namespace SaslMech { - - /** - * Check if the given authentication mechanism is likely to be supported. - * - * @param[in] saslCapValue QString of SASL capability value, e.g. capValue(IrcCap::SASL) - * @param[in] saslMechanism Desired SASL mechanism - * @return True if mechanism supported or unknown, otherwise false - */ - inline bool maybeSupported(const QString &saslCapValue, const QString &saslMechanism) { return - ((saslCapValue.length() == 0) || (saslCapValue.contains(saslMechanism, Qt::CaseInsensitive))); } - // SASL mechanisms are only specified in capability values as part of SASL 3.2. In - // SASL 3.1, it's handled differently. If we don't know via capability value, assume it's - // supported to reduce the risk of breaking existing setups. - // See: http://ircv3.net/specs/extensions/sasl-3.1.html - // And: http://ircv3.net/specs/extensions/sasl-3.2.html - /** * PLAIN authentication, e.g. hashed password */