WIP: Move to using modules for implementing core behavior
Since modules can now intercept all messages in the channels they're listening for, it'd be cool to have modules handling things like making sure the Omnibot.State stays updated as appropriate, and that pings are ponged, etc. This will probably deprecate the router, since it's been reduced to a single function call, but we'll see about that. Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This commit is contained in:
@@ -65,6 +65,17 @@ defmodule Omnibot.Irc.Msg do
|
||||
params: params,
|
||||
}
|
||||
end
|
||||
|
||||
@doc "Gets the channel that the given message is targeting, if any."
|
||||
def channel(msg) do
|
||||
case String.upcase(msg.command) do
|
||||
"PRIVMSG" -> Enum.at(msg.params, 0)
|
||||
"JOIN" -> Enum.at(msg.params, 0)
|
||||
"PART" -> Enum.at(msg.params, 0)
|
||||
"KICK" -> Enum.at(msg.params, 0)
|
||||
_ -> nil
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
defimpl String.Chars, for: Irc.Msg.Prefix do
|
||||
|
||||
Reference in New Issue
Block a user