summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSadie Powell <sadie@witchery.services>2024-10-22 16:16:32 +0100
committerSadie Powell <sadie@witchery.services>2024-10-22 16:29:22 +0100
commitf1751dcb213b953ff362eda3276e210258a7cdb2 (patch)
treefab818dd75eaafee74d0b80e9d3da3e28aa0244c
parent8b026135492c13ae030b27cb6ec6c5b09131c0bd (diff)
Replace usestrictprivmsg with something actually useful.
Every IRC server we support (other than Bahamut which is probably on the chopping bock) uses UIDs so this setting does nothing. Instead, allow configuring a server-side alias for each service and use that when servicealias is enabled.
-rw-r--r--data/anope.example.conf10
-rw-r--r--data/botserv.example.conf11
-rw-r--r--data/chanserv.example.conf11
-rw-r--r--data/global.example.conf11
-rw-r--r--data/hostserv.example.conf11
-rw-r--r--data/memoserv.example.conf11
-rw-r--r--data/nickserv.example.conf11
-rw-r--r--data/operserv.example.conf11
-rw-r--r--docs/Changes.conf2
-rw-r--r--include/bots.h5
-rw-r--r--include/config.h6
-rw-r--r--include/language.h10
-rw-r--r--language/anope.en_US.po148
-rw-r--r--modules/botserv/botserv.cpp8
-rw-r--r--modules/botserv/bs_badwords.cpp4
-rw-r--r--modules/botserv/bs_kick.cpp8
-rw-r--r--modules/botserv/bs_set.cpp4
-rw-r--r--modules/chanserv/chanserv.cpp6
-rw-r--r--modules/chanserv/cs_access.cpp12
-rw-r--r--modules/chanserv/cs_drop.cpp4
-rw-r--r--modules/chanserv/cs_register.cpp4
-rw-r--r--modules/chanserv/cs_set.cpp4
-rw-r--r--modules/chanserv/cs_xop.cpp8
-rw-r--r--modules/memoserv/memoserv.cpp8
-rw-r--r--modules/memoserv/ms_read.cpp4
-rw-r--r--modules/memoserv/ms_set.cpp4
-rw-r--r--modules/nickserv/nickserv.cpp14
-rw-r--r--modules/nickserv/ns_drop.cpp4
-rw-r--r--modules/nickserv/ns_set.cpp8
-rw-r--r--src/bots.cpp7
-rw-r--r--src/command.cpp10
-rw-r--r--src/config.cpp8
-rw-r--r--src/messages.cpp10
33 files changed, 242 insertions, 155 deletions
diff --git a/data/anope.example.conf b/data/anope.example.conf
index f365b744a..d9a35050f 100644
--- a/data/anope.example.conf
+++ b/data/anope.example.conf
@@ -430,13 +430,11 @@ options
timeoutcheck = 3s
/*
- * If set, will force services to only respond to PRIVMSGs addresses to
- * Nick@ServerName - e.g. NickServ@example.com. This should be used in
- * conjunction with IRCd aliases. This directive is optional.
- *
- * This option will have no effect on some IRCds, such as TS6 IRCds.
+ * If set Anope will tell users to use a server-side alias for messaging
+ * services instead of /msg. The alias for each service defaults to the
+ * bot name but can be configured in the service block.
*/
- #usestrictprivmsg = yes
+ #servicealias = yes
/*
* If set, Anope will only show /stats o to IRC Operators. This directive
diff --git a/data/botserv.example.conf b/data/botserv.example.conf
index 2357c1e93..8e7346bd1 100644
--- a/data/botserv.example.conf
+++ b/data/botserv.example.conf
@@ -59,6 +59,17 @@ service
* Prefixes may be given to the channels in the form of mode characters or prefix symbols.
*/
#channels = "@#services,#mychan"
+
+ /*
+ * The server alias that can be used to securely message this service. If
+ * your IRC server does not have an alias for this service you can set this
+ * to an empty string to tell users to use /msg instead.
+ *
+ * This setting is ignored when options:servicealias is disabled.
+ *
+ * Defaults to the nick of the service if not set.
+ */
+ #alias = "BS"
}
/*
diff --git a/data/chanserv.example.conf b/data/chanserv.example.conf
index 8858453e2..c7506b878 100644
--- a/data/chanserv.example.conf
+++ b/data/chanserv.example.conf
@@ -49,6 +49,17 @@ service
* Prefixes may be given to the channels in the form of mode characters or prefix symbols.
*/
#channels = "@#services,#mychan"
+
+ /*
+ * The server alias that can be used to securely message this service. If
+ * your IRC server does not have an alias for this service you can set this
+ * to an empty string to tell users to use /msg instead.
+ *
+ * This setting is ignored when options:servicealias is disabled.
+ *
+ * Defaults to the nick of the service if not set.
+ */
+ #alias = "CS"
}
/*
diff --git a/data/global.example.conf b/data/global.example.conf
index 5b99f0178..15b6347e6 100644
--- a/data/global.example.conf
+++ b/data/global.example.conf
@@ -49,6 +49,17 @@ service
* Prefixes may be given to the channels in the form of mode characters or prefix symbols.
*/
#channels = "@#services,#mychan"
+
+ /*
+ * The server alias that can be used to securely message this service. If
+ * your IRC server does not have an alias for this service you can set this
+ * to an empty string to tell users to use /msg instead.
+ *
+ * This setting is ignored when options:servicealias is disabled.
+ *
+ * Defaults to the nick of the service if not set.
+ */
+ #alias = "GL"
}
/*
diff --git a/data/hostserv.example.conf b/data/hostserv.example.conf
index 0f74ba467..e1275cc7a 100644
--- a/data/hostserv.example.conf
+++ b/data/hostserv.example.conf
@@ -49,6 +49,17 @@ service
* Prefixes may be given to the channels in the form of mode characters or prefix symbols.
*/
#channels = "@#services,#mychan"
+
+ /*
+ * The server alias that can be used to securely message this service. If
+ * your IRC server does not have an alias for this service you can set this
+ * to an empty string to tell users to use /msg instead.
+ *
+ * This setting is ignored when options:servicealias is disabled.
+ *
+ * Defaults to the nick of the service if not set.
+ */
+ #alias = "HS"
}
/*
diff --git a/data/memoserv.example.conf b/data/memoserv.example.conf
index 0d1aebdb2..e05e1c14a 100644
--- a/data/memoserv.example.conf
+++ b/data/memoserv.example.conf
@@ -49,6 +49,17 @@ service
* Prefixes may be given to the channels in the form of mode characters or prefix symbols.
*/
#channels = "@#services,#mychan"
+
+ /*
+ * The server alias that can be used to securely message this service. If
+ * your IRC server does not have an alias for this service you can set this
+ * to an empty string to tell users to use /msg instead.
+ *
+ * This setting is ignored when options:servicealias is disabled.
+ *
+ * Defaults to the nick of the service if not set.
+ */
+ #alias = "MS"
}
/*
diff --git a/data/nickserv.example.conf b/data/nickserv.example.conf
index dd84b7a5e..001137feb 100644
--- a/data/nickserv.example.conf
+++ b/data/nickserv.example.conf
@@ -49,6 +49,17 @@ service
* Prefixes may be given to the channels in the form of mode characters or prefix symbols.
*/
#channels = "@#services,#mychan"
+
+ /*
+ * The server alias that can be used to securely message this service. If
+ * your IRC server does not have an alias for this service you can set this
+ * to an empty string to tell users to use /msg instead.
+ *
+ * This setting is ignored when options:servicealias is disabled.
+ *
+ * Defaults to the nick of the service if not set.
+ */
+ #alias = "NS"
}
/*
diff --git a/data/operserv.example.conf b/data/operserv.example.conf
index 77c969309..a320bd824 100644
--- a/data/operserv.example.conf
+++ b/data/operserv.example.conf
@@ -49,6 +49,17 @@ service
* Prefixes may be given to the channels in the form of mode characters or prefix symbols.
*/
#channels = "@#services,#mychan"
+
+ /*
+ * The server alias that can be used to securely message this service. If
+ * your IRC server does not have an alias for this service you can set this
+ * to an empty string to tell users to use /msg instead.
+ *
+ * This setting is ignored when options:servicealias is disabled.
+ *
+ * Defaults to the nick of the service if not set.
+ */
+ #alias = "OS"
}
/*
diff --git a/docs/Changes.conf b/docs/Changes.conf
index 2b27f9cd7..2d7ef3aea 100644
--- a/docs/Changes.conf
+++ b/docs/Changes.conf
@@ -1,7 +1,9 @@
Anope Version 2.1.10-git
------------------------
+Added options:servicesalias.
Moved nickserv/set/message and nickserv/saset/message to the ns_set_message module.
Removed options:useprivmsg.
+Removed options:usestrictprivmsg
Anope Version 2.1.9
-------------------
diff --git a/include/bots.h b/include/bots.h
index 711e306b5..e64c097df 100644
--- a/include/bots.h
+++ b/include/bots.h
@@ -31,6 +31,8 @@ public:
time_t lastmsg;
/* Map of actual command names -> service name/permission required */
CommandInfo::map commands;
+ /* The server-side alias used to message this bot. */
+ Anope::string alias;
/* Modes the bot should have as configured in service:modes */
Anope::string botmodes;
/* Channels the bot should be in as configured in service:channels */
@@ -126,6 +128,9 @@ public:
*/
CommandInfo *GetCommand(const Anope::string &cname);
+ /** Get the command that users can use to send a message to this bot. */
+ Anope::string GetQueryCommand() const;
+
/** Find a bot by nick
* @param nick The nick
* @param nick_only True to only look by nick, and not by UID
diff --git a/include/config.h b/include/config.h
index 42445637d..0a0a3103d 100644
--- a/include/config.h
+++ b/include/config.h
@@ -94,13 +94,11 @@ namespace Configuration
Anope::string DefLanguage;
/* options:timeoutcheck */
time_t TimeoutCheck;
- /* options:usestrictprivmsg */
- bool UseStrictPrivmsg;
+ /* options:servicealias */
+ bool ServiceAlias;
/* networkinfo:nickchars */
Anope::string NickChars;
- /* either "/msg " or "/" */
- Anope::string StrictPrivmsg;
/* List of uplink servers to try and connect to */
std::vector<Uplink> Uplinks;
/* A vector of our logfile options */
diff --git a/include/language.h b/include/language.h
index 7c95611ca..5d2e28bb5 100644
--- a/include/language.h
+++ b/include/language.h
@@ -65,9 +65,9 @@ namespace Language
} // namespace Language
/* Commonly used language strings */
-#define CONFIRM_DROP _("Please confirm that you want to drop \002%s\002 with \002%s%s DROP %s %s\002")
+#define CONFIRM_DROP _("Please confirm that you want to drop \002%s\002 with \002%s DROP %s %s\002")
#define SERVICE_UNAVAILABLE _("Sorry, %s is temporarily unavailable.")
-#define MORE_INFO _("\002%s%s HELP %s\002 for more information.")
+#define MORE_INFO _("\002%s HELP %s\002 for more information.")
#define BAD_USERHOST_MASK _("Mask must be in the form \037user\037@\037host\037.")
#define BAD_EXPIRY_TIME _("Invalid expiry time.")
#define USERHOST_MASK_TOO_WIDE _("%s coverage is too wide; Please use a more specific mask.")
@@ -93,7 +93,7 @@ namespace Language
#define NO_EXPIRE _("does not expire")
#define LIST_INCORRECT_RANGE _("Incorrect range specified. The correct syntax is \002#\037from\037-\037to\037\002.")
#define NICK_IS_SECURE _("This nickname is registered and protected. If it is your\n" \
- "nick, type \002%s%s IDENTIFY \037password\037\002. Otherwise,\n" \
+ "nick, type \002%s IDENTIFY \037password\037\002. Otherwise,\n" \
"please choose a different nick.")
#define FORCENICKCHANGE_NOW _("This nickname has been registered; you may not use it.")
#define NICK_CANNOT_BE_REGISTERED _("Nickname \002%s\002 may not be registered.")
@@ -111,9 +111,9 @@ namespace Language
#define CHAN_INFO_HEADER _("Information about channel \002%s\002:")
#define CHAN_EXCEPTED _("\002%s\002 matches an except on %s and cannot be banned until the except has been removed.")
#define MEMO_NEW_X_MEMO_ARRIVED _("There is a new memo on channel %s.\n" \
- "Type \002%s%s READ %s %zu\002 to read it.")
+ "Type \002%s READ %s %zu\002 to read it.")
#define MEMO_NEW_MEMO_ARRIVED _("You have a new memo from %s.\n" \
- "Type \002%s%s READ %zu\002 to read it.")
+ "Type \002%s READ %zu\002 to read it.")
#define MEMO_HAVE_NO_MEMOS _("You have no memos.")
#define MEMO_X_HAS_NO_MEMOS _("%s has no memos.")
#define MEMO_HAVE_NO_NEW_MEMOS _("You have no new memos.")
diff --git a/language/anope.en_US.po b/language/anope.en_US.po
index 1ec3c030d..6b7b56577 100644
--- a/language/anope.en_US.po
+++ b/language/anope.en_US.po
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Anope\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-10-11 18:54+0100\n"
-"PO-Revision-Date: 2024-10-11 18:54+0100\n"
+"POT-Creation-Date: 2024-10-22 16:28+0100\n"
+"PO-Revision-Date: 2024-10-22 16:29+0100\n"
"Last-Translator: Sadie Powell <sadie@witchery.services>\n"
"Language-Team: English\n"
"Language: en_US\n"
@@ -82,47 +82,47 @@ msgid ""
"It has been created for users that can't host or\n"
"configure a bot, or for use on networks that don't\n"
"allow user bots. Available commands are listed\n"
-"below; to use them, type %s%s command. For\n"
+"below; to use them, type %s command. For\n"
"more information on a specific command, type\n"
-"%s%s %s command.\n"
+"%s %s command.\n"
msgstr ""
"%s allows you to have a bot on your own channel.\n"
"It has been created for users that can't host or\n"
"configure a bot, or for use on networks that don't\n"
"allow user bots. Available commands are listed\n"
-"below; to use them, type %s%s command. For\n"
+"below; to use them, type %s command. For\n"
"more information on a specific command, type\n"
-"%s%s %s command.\n"
+"%s %s command.\n"
#, c-format
msgid ""
"%s allows you to register a nickname and\n"
"prevent others from using it. The following\n"
"commands allow for registration and maintenance of\n"
-"nicknames; to use them, type %s%s command.\n"
+"nicknames; to use them, type %s command.\n"
"For more information on a specific command, type\n"
-"%s%s %s command.\n"
+"%s %s command.\n"
msgstr ""
"%s allows you to register a nickname and\n"
"prevent others from using it. The following\n"
"commands allow for registration and maintenance of\n"
-"nicknames; to use them, type %s%s command.\n"
+"nicknames; to use them, type %s command.\n"
"For more information on a specific command, type\n"
-"%s%s %s command.\n"
+"%s %s command.\n"
#, c-format
msgid ""
"%s allows you to register an account.\n"
"The following commands allow for registration and maintenance of\n"
-"accounts; to use them, type %s%s command.\n"
+"accounts; to use them, type %s command.\n"
"For more information on a specific command, type\n"
-"%s%s %s command.\n"
+"%s %s command.\n"
msgstr ""
"%s allows you to register an account.\n"
"The following commands allow for registration and maintenance of\n"
-"accounts; to use them, type %s%s command.\n"
+"accounts; to use them, type %s command.\n"
"For more information on a specific command, type\n"
-"%s%s %s command.\n"
+"%s %s command.\n"
#, c-format
msgid ""
@@ -131,16 +131,16 @@ msgid ""
"malicious users from \"taking over\" channels by limiting\n"
"who is allowed channel operator privileges. Available\n"
"commands are listed below; to use them, type\n"
-"%s%s command. For more information on a\n"
-"specific command, type %s%s HELP command.\n"
+"%s command. For more information on a\n"
+"specific command, type %s HELP command.\n"
msgstr ""
"%s allows you to register and control various\n"
"aspects of channels. %s can often prevent\n"
"malicious users from \"taking over\" channels by limiting\n"
"who is allowed channel operator privileges. Available\n"
"commands are listed below; to use them, type\n"
-"%s%s command. For more information on a\n"
-"specific command, type %s%s HELP command.\n"
+"%s command. For more information on a\n"
+"specific command, type %s HELP command.\n"
#, c-format
msgid "%s already exists in %s bad words list."
@@ -387,8 +387,8 @@ msgid "%s will now permanently be ignored."
msgstr "%s will now permanently be ignored."
#, c-format
-msgid "%s%s HELP %s for more information."
-msgstr "%s%s HELP %s for more information."
+msgid "%s HELP %s for more information."
+msgstr "%s HELP %s for more information."
msgid "ADD nick user host real"
msgstr "ADD nick user host real"
@@ -458,11 +458,11 @@ msgstr ""
#, c-format
msgid ""
"User access levels can be seen by using the\n"
-"%s command; type %s%s HELP LEVELS for\n"
+"%s command; type %s HELP LEVELS for\n"
"information."
msgstr ""
"User access levels can be seen by using the\n"
-"%s command; type %s%s HELP LEVELS for\n"
+"%s command; type %s HELP LEVELS for\n"
"information."
#, c-format
@@ -947,12 +947,12 @@ msgstr ""
#, c-format
msgid ""
" \n"
-"See the %s command (%s%s HELP ACCESS) for\n"
+"See the %s command (%s HELP ACCESS) for\n"
"information on giving a subset of these privileges to\n"
"other channel users.\n"
msgstr ""
" \n"
-"See the %s command (%s%s HELP ACCESS) for\n"
+"See the %s command (%s HELP ACCESS) for\n"
"information on giving a subset of these privileges to\n"
"other channel users.\n"
@@ -1219,11 +1219,11 @@ msgstr ""
#, c-format
msgid ""
" \n"
-"Type %s%s HELP command for help on any of the\n"
+"Type %s HELP command for help on any of the\n"
"above commands."
msgstr ""
" \n"
-"Type %s%s HELP command for help on any of the\n"
+"Type %s HELP command for help on any of the\n"
"above commands."
#, c-format
@@ -1249,10 +1249,6 @@ msgstr " Loaded at: %p"
msgid " but %s mysteriously dematerialized."
msgstr " but %s mysteriously dematerialized."
-#, c-format
-msgid "\"/msg %s\" is no longer supported. Use \"/msg %s@%s\" or \"/%s\" instead."
-msgstr "\"/msg %s\" is no longer supported. Use \"/msg %s@%s\" or \"/%s\" instead."
-
msgid "\"Jupiter\" a server"
msgstr "\"Jupiter\" a server"
@@ -4790,7 +4786,7 @@ msgid ""
"Maintains the bad words list for a channel. The bad\n"
"words list determines which words are to be kicked\n"
"when the bad words kicker is enabled. For more information,\n"
-"type %s%s HELP KICK %s.\n"
+"type %s HELP KICK %s.\n"
" \n"
"The ADD command adds the given word to the\n"
"bad words list. If SINGLE is specified, a kick will be\n"
@@ -4805,7 +4801,7 @@ msgstr ""
"Maintains the bad words list for a channel. The bad\n"
"words list determines which words are to be kicked\n"
"when the bad words kicker is enabled. For more information,\n"
-"type %s%s HELP KICK %s.\n"
+"type %s HELP KICK %s.\n"
" \n"
"The ADD command adds the given word to the\n"
"bad words list. If SINGLE is specified, a kick will be\n"
@@ -5414,8 +5410,8 @@ msgid "Persistent"
msgstr "Persistent"
#, c-format
-msgid "Please confirm that you want to drop %s with %s%s DROP %s %s"
-msgstr "Please confirm that you want to drop %s with %s%s DROP %s %s"
+msgid "Please confirm that you want to drop %s with %s DROP %s %s"
+msgstr "Please confirm that you want to drop %s with %s DROP %s %s"
msgid "Please contact an Operator to get a vhost assigned to this nick."
msgstr "Please contact an Operator to get a vhost assigned to this nick."
@@ -5911,18 +5907,18 @@ msgstr "Secureops enforced on %s."
#, c-format
msgid ""
-"See %s%s HELP %s for more information\n"
+"See %s HELP %s for more information\n"
"about the access list."
msgstr ""
-"See %s%s HELP %s for more information\n"
+"See %s HELP %s for more information\n"
"about the access list."
#, c-format
msgid ""
-"See %s%s HELP %s for more information\n"
+"See %s HELP %s for more information\n"
"about the flags system."
msgstr ""
-"See %s%s HELP %s for more information\n"
+"See %s HELP %s for more information\n"
"about the flags system."
msgid "Send a memo to a nick or channel"
@@ -6236,7 +6232,7 @@ msgid ""
"option tells the bot to kick users who say certain words\n"
"on the channels.\n"
"You can define bad words for your channel using the\n"
-"BADWORDS command. Type %s%s HELP BADWORDS for\n"
+"BADWORDS command. Type %s HELP BADWORDS for\n"
"more information.\n"
" \n"
"ttb is the number of times a user can be kicked\n"
@@ -6247,7 +6243,7 @@ msgstr ""
"option tells the bot to kick users who say certain words\n"
"on the channels.\n"
"You can define bad words for your channel using the\n"
-"BADWORDS command. Type %s%s HELP BADWORDS for\n"
+"BADWORDS command. Type %s HELP BADWORDS for\n"
"more information.\n"
" \n"
"ttb is the number of times a user can be kicked\n"
@@ -6473,7 +6469,7 @@ msgid ""
" LIMIT Sets the maximum number of memos you can\n"
" receive\n"
" \n"
-"Type %s%s HELP %s option for more information\n"
+"Type %s HELP %s option for more information\n"
"on a specific option."
msgstr ""
"Sets various memo options. option can be one of:\n"
@@ -6483,7 +6479,7 @@ msgstr ""
" LIMIT Sets the maximum number of memos you can\n"
" receive\n"
" \n"
-"Type %s%s HELP %s option for more information\n"
+"Type %s HELP %s option for more information\n"
"on a specific option."
msgid "Sets various nickname options. option can be one of:"
@@ -6539,8 +6535,8 @@ msgstr ""
"may not get set automatically."
#, c-format
-msgid "Setting %s not known. Type %s%s HELP LEVELS for a list of valid settings."
-msgstr "Setting %s not known. Type %s%s HELP LEVELS for a list of valid settings."
+msgid "Setting %s not known. Type %s HELP LEVELS for a list of valid settings."
+msgstr "Setting %s not known. Type %s HELP LEVELS for a list of valid settings."
msgid "Setting for DEBUG must be ON, OFF, or a positive number."
msgstr "Setting for DEBUG must be ON, OFF, or a positive number."
@@ -7450,10 +7446,10 @@ msgstr "There is %zu memo on channel %s."
#, c-format
msgid ""
"There is a new memo on channel %s.\n"
-"Type %s%s READ %s %zu to read it."
+"Type %s READ %s %zu to read it."
msgstr ""
"There is a new memo on channel %s.\n"
-"Type %s%s READ %s %zu to read it."
+"Type %s READ %s %zu to read it."
#, c-format
msgid "There is no bot assigned to %s anymore."
@@ -7750,20 +7746,20 @@ msgstr "This nickname is suspended."
#, c-format
msgid ""
"This nickname is registered and protected. If it is your\n"
-"nick, type %s%s IDENTIFY password. Otherwise,\n"
+"nick, type %s IDENTIFY password. Otherwise,\n"
"please choose a different nick."
msgstr ""
"This nickname is registered and protected. If it is your\n"
-"nick, type %s%s IDENTIFY password. Otherwise,\n"
+"nick, type %s IDENTIFY password. Otherwise,\n"
"please choose a different nick."
#, c-format
-msgid "To delete, type: %s%s %s %d"
-msgstr "To delete, type: %s%s %s %d"
+msgid "To delete, type: %s %s %d"
+msgstr "To delete, type: %s %s %d"
#, c-format
-msgid "To delete, type: %s%s %s %s %d"
-msgstr "To delete, type: %s%s %s %s %d"
+msgid "To delete, type: %s %s %s %d"
+msgstr "To delete, type: %s %s %s %d"
msgid "To protect ops against bot kicks"
msgstr "To protect ops against bot kicks"
@@ -7918,21 +7914,21 @@ msgstr "Type"
#, c-format
msgid ""
-"Type %s%s HELP %s option for more information\n"
+"Type %s HELP %s option for more information\n"
"on a specific option."
msgstr ""
-"Type %s%s HELP %s option for more information\n"
+"Type %s HELP %s option for more information\n"
"on a specific option."
#, c-format
msgid ""
-"Type %s%s HELP %s option for more information\n"
+"Type %s HELP %s option for more information\n"
"on a specific option.\n"
" \n"
"Note: access to this command is controlled by the\n"
"level SET."
msgstr ""
-"Type %s%s HELP %s option for more information\n"
+"Type %s HELP %s option for more information\n"
"on a specific option.\n"
" \n"
"Note: access to this command is controlled by the\n"
@@ -7940,25 +7936,25 @@ msgstr ""
#, c-format
msgid ""
-"Type %s%s HELP %s option for more information\n"
+"Type %s HELP %s option for more information\n"
"on a specific option. The options will be set on the given\n"
"nickname."
msgstr ""
-"Type %s%s HELP %s option for more information\n"
+"Type %s HELP %s option for more information\n"
"on a specific option. The options will be set on the given\n"
"nickname."
#, c-format
msgid ""
-"Type %s%s HELP %s option for more information on a\n"
+"Type %s HELP %s option for more information on a\n"
"particular option."
msgstr ""
-"Type %s%s HELP %s option for more information on a\n"
+"Type %s HELP %s option for more information on a\n"
"particular option."
#, c-format
-msgid "Type %s%s SET EMAIL email in order to set your email."
-msgstr "Type %s%s SET EMAIL email in order to set your email."
+msgid "Type %s SET EMAIL email in order to set your email."
+msgstr "Type %s SET EMAIL email in order to set your email."
msgid "Un-Load a module"
msgstr "Un-Load a module"
@@ -8006,16 +8002,16 @@ msgid "Unknown command %s."
msgstr "Unknown command %s."
#, c-format
-msgid "Unknown command %s. \"%s%s HELP\" for help."
-msgstr "Unknown command %s. \"%s%s HELP\" for help."
+msgid "Unknown command %s. \"%s HELP\" for help."
+msgstr "Unknown command %s. \"%s HELP\" for help."
#, c-format
msgid "Unknown command %s. Did you mean %s?"
msgstr "Unknown command %s. Did you mean %s?"
#, c-format
-msgid "Unknown command %s. Did you mean %s? \"%s%s HELP\" for help."
-msgstr "Unknown command %s. Did you mean %s? \"%s%s HELP\" for help."
+msgid "Unknown command %s. Did you mean %s? \"%s HELP\" for help."
+msgstr "Unknown command %s. Did you mean %s? \"%s HELP\" for help."
#, c-format
msgid "Unknown mode character %c ignored."
@@ -8361,10 +8357,6 @@ msgid "You can't logout %s, they are a Services Operator."
msgstr "You can't logout %s, they are a Services Operator."
#, c-format
-msgid "You cannot %s on this network."
-msgstr "You cannot %s on this network."
-
-#, c-format
msgid "You cannot set the %c flag."
msgstr "You cannot set the %c flag."
@@ -8438,10 +8430,10 @@ msgstr "You have 1 new memo."
#, c-format
msgid ""
"You have a new memo from %s.\n"
-"Type %s%s READ %zu to read it."
+"Type %s READ %zu to read it."
msgstr ""
"You have a new memo from %s.\n"
-"Type %s%s READ %zu to read it."
+"Type %s READ %zu to read it."
#, c-format
msgid "You have been invited to %s by %s."
@@ -8913,3 +8905,15 @@ msgstr "{nick | channel}"
msgid "{nick | channel} memo-text"
msgstr "{nick | channel} memo-text"
+
+#, c-format
+#~ msgid "\"/msg %s\" is no longer supported. Use \"/msg %s@%s\" or \"/%s\" instead."
+#~ msgstr "\"/msg %s\" is no longer supported. Use \"/msg %s@%s\" or \"/%s\" instead."
+
+#, c-format
+#~ msgid "To delete, type: %s%s %s %s %d"
+#~ msgstr "To delete, type: %s%s %s %s %d"
+
+#, c-format
+#~ msgid "You cannot %s on this network."
+#~ msgstr "You cannot %s on this network."
diff --git a/modules/botserv/botserv.cpp b/modules/botserv/botserv.cpp
index 85db067d2..4d2ddb0ec 100644
--- a/modules/botserv/botserv.cpp
+++ b/modules/botserv/botserv.cpp
@@ -153,11 +153,11 @@ public:
"It has been created for users that can't host or\n"
"configure a bot, or for use on networks that don't\n"
"allow user bots. Available commands are listed\n"
- "below; to use them, type \002%s%s \037command\037\002. For\n"
+ "below; to use them, type \002%s \037command\037\002. For\n"
"more information on a specific command, type\n"
- "\002%s%s %s \037command\037\002.\n"),
- BotServ->nick.c_str(), Config->StrictPrivmsg.c_str(), BotServ->nick.c_str(),
- Config->StrictPrivmsg.c_str(), BotServ->nick.c_str(), source.command.c_str());
+ "\002%s %s \037command\037\002.\n"),
+ BotServ->nick.c_str(), BotServ->GetQueryCommand().c_str(),
+ BotServ->GetQueryCommand().c_str(), source.command.c_str());
}
return EVENT_CONTINUE;
diff --git a/modules/botserv/bs_badwords.cpp b/modules/botserv/bs_badwords.cpp
index 2396a91c6..95478a0df 100644
--- a/modules/botserv/bs_badwords.cpp
+++ b/modules/botserv/bs_badwords.cpp
@@ -430,7 +430,7 @@ public:
source.Reply(_("Maintains the \002bad words list\002 for a channel. The bad\n"
"words list determines which words are to be kicked\n"
"when the bad words kicker is enabled. For more information,\n"
- "type \002%s%s HELP KICK %s\002.\n"
+ "type \002%s HELP KICK %s\002.\n"
" \n"
"The \002ADD\002 command adds the given word to the\n"
"bad words list. If SINGLE is specified, a kick will be\n"
@@ -440,7 +440,7 @@ public:
"will be done if a user says a word that ends with\n"
"\037word\037. If you don't specify anything, a kick will\n"
"be issued every time \037word\037 is said by a user.\n"
- " \n"), Config->StrictPrivmsg.c_str(), source.service->nick.c_str(), source.command.c_str());
+ " \n"), source.service->GetQueryCommand().c_str(), source.command.c_str());
source.Reply(_("The \002DEL\002 command removes the given word from the\n"
"bad words list. If a list of entry numbers is given, those\n"
"entries are deleted. (See the example for LIST below.)\n"
diff --git a/modules/botserv/bs_kick.cpp b/modules/botserv/bs_kick.cpp
index ba2ace0dd..584f34f9d 100644
--- a/modules/botserv/bs_kick.cpp
+++ b/modules/botserv/bs_kick.cpp
@@ -153,11 +153,11 @@ public:
}
}
- source.Reply(_("Type \002%s%s HELP %s \037option\037\002 for more information\n"
+ source.Reply(_("Type \002%s HELP %s \037option\037\002 for more information\n"
"on a specific option.\n"
" \n"
"Note: access to this command is controlled by the\n"
- "level SET."), Config->StrictPrivmsg.c_str(), source.service->nick.c_str(), this_name.c_str());
+ "level SET."), source.service->GetQueryCommand().c_str(), this_name.c_str());
return true;
}
@@ -308,12 +308,12 @@ public:
"option tells the bot to kick users who say certain words\n"
"on the channels.\n"
"You can define bad words for your channel using the\n"
- "\002BADWORDS\002 command. Type \002%s%s HELP BADWORDS\002 for\n"
+ "\002BADWORDS\002 command. Type \002%s HELP BADWORDS\002 for\n"
"more information.\n"
" \n"
"\037ttb\037 is the number of times a user can be kicked\n"
"before it gets banned. Don't give ttb to disable\n"
- "the ban system once activated."), Config->StrictPrivmsg.c_str(), source.service->nick.c_str());
+ "the ban system once activated."), source.service->GetQueryCommand().c_str());
return true;
}
};
diff --git a/modules/botserv/bs_set.cpp b/modules/botserv/bs_set.cpp
index dac0e4ed3..64b762d72 100644
--- a/modules/botserv/bs_set.cpp
+++ b/modules/botserv/bs_set.cpp
@@ -58,8 +58,8 @@ public:
}
}
}
- source.Reply(_("Type \002%s%s HELP %s \037option\037\002 for more information on a\n"
- "particular option."), Config->StrictPrivmsg.c_str(), source.service->nick.c_str(), this_name.c_str());
+ source.Reply(_("Type \002%s HELP %s \037option\037\002 for more information on a\n"
+ "particular option."), source.service->GetQueryCommand().c_str(), this_name.c_str());
return true;
}
diff --git a/modules/chanserv/chanserv.cpp b/modules/chanserv/chanserv.cpp
index b517770b1..882845074 100644
--- a/modules/chanserv/chanserv.cpp
+++ b/modules/chanserv/chanserv.cpp
@@ -262,9 +262,9 @@ public:
"malicious users from \"taking over\" channels by limiting\n"
"who is allowed channel operator privileges. Available\n"
"commands are listed below; to use them, type\n"
- "\002%s%s \037command\037\002. For more information on a\n"
- "specific command, type \002%s%s HELP \037command\037\002.\n"),
- ChanServ->nick.c_str(), ChanServ->nick.c_str(), Config->StrictPrivmsg.c_str(), ChanServ->nick.c_str(), Config->StrictPrivmsg.c_str(), ChanServ->nick.c_str());
+ "\002%s \037command\037\002. For more information on a\n"
+ "specific command, type \002%s HELP \037command\037\002.\n"),
+ ChanServ->nick.c_str(), ChanServ->nick.c_str(), ChanServ->GetQueryCommand().c_str(), ChanServ->GetQueryCommand().c_str());
return EVENT_CONTINUE;
}
diff --git a/modules/chanserv/cs_access.cpp b/modules/chanserv/cs_access.cpp
index b7c39ac6d..5e4f0cffe 100644
--- a/modules/chanserv/cs_access.cpp
+++ b/modules/chanserv/cs_access.cpp
@@ -630,8 +630,8 @@ public:
Anope::string cmd;
if (Command::FindCommandFromService("chanserv/levels", bi, cmd))
source.Reply(_("\002User access levels\002 can be seen by using the\n"
- "\002%s\002 command; type \002%s%s HELP LEVELS\002 for\n"
- "information."), cmd.c_str(), Config->StrictPrivmsg.c_str(), bi->nick.c_str());
+ "\002%s\002 command; type \002%s HELP LEVELS\002 for\n"
+ "information."), cmd.c_str(), bi->GetQueryCommand().c_str());
return true;
}
};
@@ -665,7 +665,10 @@ class CommandCSLevels final
{
Privilege *p = PrivilegeManager::FindPrivilege(what);
if (p == NULL)
- source.Reply(_("Setting \002%s\002 not known. Type \002%s%s HELP LEVELS\002 for a list of valid settings."), what.c_str(), Config->StrictPrivmsg.c_str(), source.service->nick.c_str());
+ {
+ source.Reply(_("Setting \002%s\002 not known. Type \002%s HELP LEVELS\002 for a list of valid settings."),
+ what.c_str(), source.service->GetQueryCommand().c_str());
+ }
else
{
bool override = !source.AccessFor(ci).HasPriv("FOUNDER");
@@ -706,7 +709,8 @@ class CommandCSLevels final
return;
}
- source.Reply(_("Setting \002%s\002 not known. Type \002%s%s HELP LEVELS\002 for a list of valid settings."), what.c_str(), Config->StrictPrivmsg.c_str(), source.service->nick.c_str());
+ source.Reply(_("Setting \002%s\002 not known. Type \002%s HELP LEVELS\002 for a list of valid settings."),
+ what.c_str(), source.service->GetQueryCommand().c_str());
}
static void DoList(CommandSource &source, ChannelInfo *ci)
diff --git a/modules/chanserv/cs_drop.cpp b/modules/chanserv/cs_drop.cpp
index 91032905f..ea7f07b50 100644
--- a/modules/chanserv/cs_drop.cpp
+++ b/modules/chanserv/cs_drop.cpp
@@ -58,8 +58,8 @@ public:
*code = Anope::Random(15);
}
- source.Reply(CONFIRM_DROP, ci->name.c_str(), Config->StrictPrivmsg.c_str(),
- source.service->nick.c_str(), ci->name.c_str(), code->c_str());
+ source.Reply(CONFIRM_DROP, ci->name.c_str(), source.service->GetQueryCommand().c_str(),
+ ci->name.c_str(), code->c_str());
return;
}
diff --git a/modules/chanserv/cs_register.cpp b/modules/chanserv/cs_register.cpp
index 1610a98ba..1a660efa9 100644
--- a/modules/chanserv/cs_register.cpp
+++ b/modules/chanserv/cs_register.cpp
@@ -100,9 +100,9 @@ public:
Anope::string cmd;
if (Command::FindCommandFromService("chanserv/access", bi, cmd))
source.Reply(_(" \n"
- "See the \002%s\002 command (\002%s%s HELP ACCESS\002) for\n"
+ "See the \002%s\002 command (\002%s HELP ACCESS\002) for\n"
"information on giving a subset of these privileges to\n"
- "other channel users.\n"), cmd.c_str(), Config->StrictPrivmsg.c_str(), bi->nick.c_str());
+ "other channel users.\n"), cmd.c_str(), bi->GetQueryCommand().c_str());
source.Reply(_(" \n"
"NOTICE: In order to register a channel, you must have\n"
"first registered your nickname."));
diff --git a/modules/chanserv/cs_set.cpp b/modules/chanserv/cs_set.cpp
index a68aefa3c..93be5c8b4 100644
--- a/modules/chanserv/cs_set.cpp
+++ b/modules/chanserv/cs_set.cpp
@@ -59,8 +59,8 @@ public:
c->OnServHelp(source);
}
}
- source.Reply(_("Type \002%s%s HELP %s \037option\037\002 for more information on a\n"
- "particular option."), Config->StrictPrivmsg.c_str(), source.service->nick.c_str(), this_name.c_str());
+ source.Reply(_("Type \002%s HELP %s \037option\037\002 for more information on a\n"
+ "particular option."), source.service->GetQueryCommand().c_str(), this_name.c_str());
return true;
}
};
diff --git a/modules/chanserv/cs_xop.cpp b/modules/chanserv/cs_xop.cpp
index db8456492..e9a4899d2 100644
--- a/modules/chanserv/cs_xop.cpp
+++ b/modules/chanserv/cs_xop.cpp
@@ -594,11 +594,11 @@ public:
source.Reply(_("Alternative methods of modifying channel access lists are\n"
"available."));
if (!access_cmd.empty())
- source.Reply(_("See \002%s%s HELP %s\002 for more information\n"
- "about the access list."), Config->StrictPrivmsg.c_str(), access_bi->nick.c_str(), access_cmd.c_str());
+ source.Reply(_("See \002%s HELP %s\002 for more information\n"
+ "about the access list."), access_bi->GetQueryCommand().c_str(), access_cmd.c_str());
if (!flags_cmd.empty())
- source.Reply(_("See \002%s%s HELP %s\002 for more information\n"
- "about the flags system."), Config->StrictPrivmsg.c_str(), flags_bi->nick.c_str(), flags_cmd.c_str());
+ source.Reply(_("See \002%s HELP %s\002 for more information\n"
+ "about the flags system."), flags_bi->GetQueryCommand().c_str(), flags_cmd.c_str());
}
return true;
}
diff --git a/modules/memoserv/memoserv.cpp b/modules/memoserv/memoserv.cpp
index 3b2a521c7..219d4b33e 100644
--- a/modules/memoserv/memoserv.cpp
+++ b/modules/memoserv/memoserv.cpp
@@ -101,7 +101,7 @@ public:
if (ci->AccessFor(cu->user).HasPriv("MEMO"))
{
if (cu->user->Account() && cu->user->Account()->HasExt("MEMO_RECEIVE"))
- cu->user->SendMessage(MemoServ, MEMO_NEW_X_MEMO_ARRIVED, ci->name.c_str(), Config->StrictPrivmsg.c_str(), MemoServ->nick.c_str(), ci->name.c_str(), mi->memos->size());
+ cu->user->SendMessage(MemoServ, MEMO_NEW_X_MEMO_ARRIVED, ci->name.c_str(), MemoServ->GetQueryCommand().c_str(), ci->name.c_str(), mi->memos->size());
}
}
}
@@ -116,7 +116,7 @@ public:
{
User *user = User::Find(na->nick, true);
if (user && user->IsIdentified())
- user->SendMessage(MemoServ, MEMO_NEW_MEMO_ARRIVED, source.c_str(), Config->StrictPrivmsg.c_str(), MemoServ->nick.c_str(), mi->memos->size());
+ user->SendMessage(MemoServ, MEMO_NEW_MEMO_ARRIVED, source.c_str(), MemoServ->GetQueryCommand().c_str(), mi->memos->size());
}
}
@@ -229,8 +229,8 @@ public:
if (!params.empty() || source.c || source.service != *MemoServ)
return;
source.Reply(_(" \n"
- "Type \002%s%s HELP \037command\037\002 for help on any of the\n"
- "above commands."), Config->StrictPrivmsg.c_str(), MemoServ->nick.c_str());
+ "Type \002%s HELP \037command\037\002 for help on any of the\n"
+ "above commands."), MemoServ->GetQueryCommand().c_str());
}
};
diff --git a/modules/memoserv/ms_read.cpp b/modules/memoserv/ms_read.cpp
index 5e9c8fd83..75d0fef11 100644
--- a/modules/memoserv/ms_read.cpp
+++ b/modules/memoserv/ms_read.cpp
@@ -91,9 +91,9 @@ public:
if (Command::FindCommandFromService("memoserv/del", bi, cmd))
{
if (ci)
- source.Reply(_("To delete, type: \002%s%s %s %s %d\002"), Config->StrictPrivmsg.c_str(), bi->nick.c_str(), cmd.c_str(), ci->name.c_str(), index + 1);
+ source.Reply(_("To delete, type: \002%s %s %s %d\002"), bi->GetQueryCommand().c_str(), cmd.c_str(), ci->name.c_str(), index + 1);
else
- source.Reply(_("To delete, type: \002%s%s %s %d\002"), Config->StrictPrivmsg.c_str(), bi->nick.c_str(), cmd.c_str(), index + 1);
+ source.Reply(_("To delete, type: \002%s %s %d\002"), bi->GetQueryCommand().c_str(), cmd.c_str(), index + 1);
}
source.Reply("%s", m->text.c_str());
diff --git a/modules/memoserv/ms_set.cpp b/modules/memoserv/ms_set.cpp
index e018baa1c..5e03562a6 100644
--- a/modules/memoserv/ms_set.cpp
+++ b/modules/memoserv/ms_set.cpp
@@ -232,8 +232,8 @@ public:
" LIMIT Sets the maximum number of memos you can\n"
" receive\n"
" \n"
- "Type \002%s%s HELP %s \037option\037\002 for more information\n"
- "on a specific option."), Config->StrictPrivmsg.c_str(), source.service->nick.c_str(), source.command.c_str());
+ "Type \002%s HELP %s \037option\037\002 for more information\n"
+ "on a specific option."), source.service->GetQueryCommand().c_str(), source.command.c_str());
}
else if (subcommand.equals_ci("NOTIFY"))
source.Reply(_("Syntax: \002NOTIFY {ON | LOGON | NEW | MAIL | NOMAIL | OFF}\002\n"
diff --git a/modules/nickserv/nickserv.cpp b/modules/nickserv/nickserv.cpp
index 1718af690..d38119d69 100644
--- a/modules/nickserv/nickserv.cpp
+++ b/modules/nickserv/nickserv.cpp
@@ -195,7 +195,7 @@ public:
if (!na->nc->HasExt("KILL_IMMED"))
{
- u->SendMessage(NickServ, NICK_IS_SECURE, Config->StrictPrivmsg.c_str(), NickServ->nick.c_str());
+ u->SendMessage(NickServ, NICK_IS_SECURE, NickServ->GetQueryCommand().c_str());
}
if (na->nc->HasExt("KILLPROTECT"))
{
@@ -362,8 +362,8 @@ public:
u->SendMessage(NickServ, _("You must now supply an email for your nick.\n"
"This email will allow you to retrieve your password in\n"
"case you forget it."));
- u->SendMessage(NickServ, _("Type \002%s%s SET EMAIL \037email\037\002 in order to set your email."),
- Config->StrictPrivmsg.c_str(), NickServ->nick.c_str());
+ u->SendMessage(NickServ, _("Type \002%s SET EMAIL \037email\037\002 in order to set your email."),
+ NickServ->GetQueryCommand().c_str());
}
for (auto *c : collides)
@@ -465,15 +465,15 @@ public:
source.Reply(_("\002%s\002 allows you to register a nickname and\n"
"prevent others from using it. The following\n"
"commands allow for registration and maintenance of\n"
- "nicknames; to use them, type \002%s%s \037command\037\002.\n"
+ "nicknames; to use them, type \002%s \037command\037\002.\n"
"For more information on a specific command, type\n"
- "\002%s%s %s \037command\037\002.\n"), NickServ->nick.c_str(), Config->StrictPrivmsg.c_str(), NickServ->nick.c_str(), Config->StrictPrivmsg.c_str(), NickServ->nick.c_str(), source.command.c_str());
+ "\002%s %s \037command\037\002.\n"), NickServ->nick.c_str(), NickServ->GetQueryCommand().c_str(), NickServ->GetQueryCommand().c_str(), source.command.c_str());
else
source.Reply(_("\002%s\002 allows you to register an account.\n"
"The following commands allow for registration and maintenance of\n"
- "accounts; to use them, type \002%s%s \037command\037\002.\n"
+ "accounts; to use them, type \002%s \037command\037\002.\n"
"For more information on a specific command, type\n"
- "\002%s%s %s \037command\037\002.\n"), NickServ->nick.c_str(), Config->StrictPrivmsg.c_str(), NickServ->nick.c_str(), Config->StrictPrivmsg.c_str(), NickServ->nick.c_str(), source.command.c_str());
+ "\002%s %s \037command\037\002.\n"), NickServ->nick.c_str(), NickServ->GetQueryCommand().c_str(), NickServ->GetQueryCommand().c_str(), source.command.c_str());
return EVENT_CONTINUE;
}
diff --git a/modules/nickserv/ns_drop.cpp b/modules/nickserv/ns_drop.cpp
index 6042bf326..5a31d74f9 100644
--- a/modules/nickserv/ns_drop.cpp
+++ b/modules/nickserv/ns_drop.cpp
@@ -72,8 +72,8 @@ public:
*code = Anope::Random(15);
}
- source.Reply(CONFIRM_DROP, na->nick.c_str(), Config->StrictPrivmsg.c_str(),
- source.service->nick.c_str(), na->nick.c_str(), code->c_str());
+ source.Reply(CONFIRM_DROP, na->nick.c_str(), source.service->GetQueryCommand().c_str(),
+ na->nick.c_str(), code->c_str());
return;
}
diff --git a/modules/nickserv/ns_set.cpp b/modules/nickserv/ns_set.cpp
index 25c4e5a0d..f8391a519 100644
--- a/modules/nickserv/ns_set.cpp
+++ b/modules/nickserv/ns_set.cpp
@@ -57,8 +57,8 @@ public:
}
}
- source.Reply(_("Type \002%s%s HELP %s \037option\037\002 for more information\n"
- "on a specific option."), Config->StrictPrivmsg.c_str(), source.service->nick.c_str(), this_name.c_str());
+ source.Reply(_("Type \002%s HELP %s \037option\037\002 for more information\n"
+ "on a specific option."), source.service->GetQueryCommand().c_str(), this_name.c_str());
return true;
}
@@ -100,9 +100,9 @@ public:
}
}
- source.Reply(_("Type \002%s%s HELP %s \037option\037\002 for more information\n"
+ source.Reply(_("Type \002%s HELP %s \037option\037\002 for more information\n"
"on a specific option. The options will be set on the given\n"
- "\037nickname\037."), Config->StrictPrivmsg.c_str(), source.service->nick.c_str(), this_name.c_str());
+ "\037nickname\037."), source.service->GetQueryCommand().c_str(), this_name.c_str());
return true;
}
};
diff --git a/src/bots.cpp b/src/bots.cpp
index b109f8680..323fbc29a 100644
--- a/src/bots.cpp
+++ b/src/bots.cpp
@@ -265,6 +265,13 @@ CommandInfo *BotInfo::GetCommand(const Anope::string &cname)
return NULL;
}
+Anope::string BotInfo::GetQueryCommand() const
+{
+ if (Config->ServiceAlias && !this->alias.empty())
+ return Anope::printf("/%s", this->alias.c_str());
+ return Anope::printf("/msg %s", this->nick.c_str());
+}
+
BotInfo *BotInfo::Find(const Anope::string &nick, bool nick_only)
{
if (!nick_only && IRCD != NULL && IRCD->RequiresID)
diff --git a/src/command.cpp b/src/command.cpp
index e242b50fb..ae391b433 100644
--- a/src/command.cpp
+++ b/src/command.cpp
@@ -199,7 +199,7 @@ void Command::OnSyntaxError(CommandSource &source, const Anope::string &subcomma
this->SendSyntax(source);
bool has_help = source.service->commands.find("HELP") != source.service->commands.end();
if (has_help)
- source.Reply(MORE_INFO, Config->StrictPrivmsg.c_str(), source.service->nick.c_str(), source.command.c_str());
+ source.Reply(MORE_INFO, source.service->GetQueryCommand().c_str(), source.command.c_str());
}
namespace
@@ -226,13 +226,13 @@ namespace
bool has_help = source.service->commands.find("HELP") != source.service->commands.end();
if (has_help && similar.empty())
{
- source.Reply(_("Unknown command \002%s\002. \"%s%s HELP\" for help."), message.c_str(),
- Config->StrictPrivmsg.c_str(), source.service->nick.c_str());
+ source.Reply(_("Unknown command \002%s\002. \"%s HELP\" for help."), message.c_str(),
+ source.service->GetQueryCommand().c_str());
}
else if (has_help)
{
- source.Reply(_("Unknown command \002%s\002. Did you mean \002%s\002? \"%s%s HELP\" for help."),
- message.c_str(), similar.c_str(), Config->StrictPrivmsg.c_str(), source.service->nick.c_str());
+ source.Reply(_("Unknown command \002%s\002. Did you mean \002%s\002? \"%s HELP\" for help."),
+ message.c_str(), similar.c_str(), source.service->GetQueryCommand().c_str());
}
else if (similar.empty())
{
diff --git a/src/config.cpp b/src/config.cpp
index 28be07318..890cf57fe 100644
--- a/src/config.cpp
+++ b/src/config.cpp
@@ -195,8 +195,7 @@ Conf::Conf() : Block("")
}
this->ReadTimeout = options->Get<time_t>("readtimeout");
- this->UseStrictPrivmsg = options->Get<bool>("usestrictprivmsg");
- this->StrictPrivmsg = !UseStrictPrivmsg ? "/msg " : "/";
+ this->ServiceAlias = options->Get<bool>("servicealias");
{
std::vector<Anope::string> defaults;
spacesepstream(this->GetModule("nickserv")->Get<const Anope::string>("defaults")).GetTokens(defaults);
@@ -338,7 +337,8 @@ Conf::Conf() : Block("")
&host = service->Get<const Anope::string>("host"),
&gecos = service->Get<const Anope::string>("gecos"),
&modes = service->Get<const Anope::string>("modes"),
- &channels = service->Get<const Anope::string>("channels");
+ &channels = service->Get<const Anope::string>("channels"),
+ &alias = service->Get<const Anope::string>("alias", nick.upper());
ValidateNotEmptyOrSpaces("service", "nick", nick);
ValidateNotEmptyOrSpaces("service", "user", user);
@@ -349,6 +349,8 @@ Conf::Conf() : Block("")
BotInfo *bi = BotInfo::Find(nick, true);
if (!bi)
bi = new BotInfo(nick, user, host, gecos, modes);
+
+ bi->alias = alias;
bi->conf = true;
std::vector<Anope::string> oldchannels = bi->botchannels;
diff --git a/src/messages.cpp b/src/messages.cpp
index b21a27f37..4c252f666 100644
--- a/src/messages.cpp
+++ b/src/messages.cpp
@@ -324,18 +324,8 @@ void Privmsg::Run(MessageSource &source, const std::vector<Anope::string> &param
if (!servername.equals_ci(Me->GetName()))
return;
}
- else if (!IRCD->RequiresID && Config->UseStrictPrivmsg)
- {
- BotInfo *bi = BotInfo::Find(receiver);
- if (!bi)
- return;
- Log(LOG_DEBUG) << "Ignored PRIVMSG without @ from " << u->nick;
- u->SendMessage(bi, _("\"/msg %s\" is no longer supported. Use \"/msg %s@%s\" or \"/%s\" instead."), bi->nick.c_str(), bi->nick.c_str(), Me->GetName().c_str(), bi->nick.c_str());
- return;
- }
BotInfo *bi = BotInfo::Find(botname, nick_only);
-
if (bi)
{
Anope::string ctcpname, ctcpbody;