3
0
mirror of https://github.com/ergochat/ergo.git synced 2024-12-22 18:52:41 +01:00

Ignore non-privmsg commands to services.

This avoids "No such nick" responses to +draft/typing TAGMSG, etc.
This commit is contained in:
Alex Jaspersen 2020-05-25 14:47:09 +00:00
parent 9a555f6f30
commit b7c9fb56c2

View File

@ -1906,18 +1906,25 @@ func dispatchMessageToTarget(client *Client, tags map[string]string, histType hi
} }
channel.SendSplitMessage(command, lowestPrefix, tags, client, message, rb) channel.SendSplitMessage(command, lowestPrefix, tags, client, message, rb)
} else { } else {
// NOTICE and TAGMSG to services are ignored lowercaseTarget := strings.ToLower(target)
service, isService := OragonoServices[lowercaseTarget]
_, isZNC := zncHandlers[lowercaseTarget]
if histType == history.Privmsg { if histType == history.Privmsg {
lowercaseTarget := strings.ToLower(target) if isService {
if service, isService := OragonoServices[lowercaseTarget]; isService {
servicePrivmsgHandler(service, server, client, message.Message, rb) servicePrivmsgHandler(service, server, client, message.Message, rb)
return return
} else if _, isZNC := zncHandlers[lowercaseTarget]; isZNC { } else if isZNC {
zncPrivmsgHandler(client, lowercaseTarget, message.Message, rb) zncPrivmsgHandler(client, lowercaseTarget, message.Message, rb)
return return
} }
} }
// NOTICE and TAGMSG to services are ignored
if isService || isZNC {
return
}
user := server.clients.Get(target) user := server.clients.Get(target)
if user == nil { if user == nil {
if histType != history.Notice { if histType != history.Notice {