mirror of https://github.com/nealey/irc-bot
oops, add newmont handler
This commit is contained in:
parent
6c4398aed9
commit
596cb3b29d
|
@ -0,0 +1,70 @@
|
|||
#! /usr/bin/lua
|
||||
|
||||
--
|
||||
-- Set global variables from environment
|
||||
--
|
||||
prefix = os.getenv("prefix")
|
||||
forum = os.getenv("forum")
|
||||
sender = os.getenv("sender")
|
||||
command = os.getenv("command")
|
||||
text = os.getenv("text")
|
||||
|
||||
--
|
||||
-- Write text to stderr (for debugging)
|
||||
--
|
||||
function log(text)
|
||||
io.stderr:write(text .. "\n")
|
||||
end
|
||||
|
||||
--
|
||||
-- Send a raw IRC command to the server
|
||||
--
|
||||
function raw(text)
|
||||
log("< " .. text)
|
||||
print(text)
|
||||
end
|
||||
|
||||
|
||||
--
|
||||
-- Send a message to the forum; if we've sent 4 lines
|
||||
-- already, start sending directly to the sender, to
|
||||
-- avoid spamming channels.
|
||||
--
|
||||
msgs_sent = 0
|
||||
msg_recip = forum
|
||||
|
||||
function msg(text)
|
||||
msgs_sent = msgs_sent + 1
|
||||
if ((msgs_sent == 5) and (forum ~= sender)) then
|
||||
raw("PRIVMSG " .. forum .. " :Sending the rest in private")
|
||||
msg_recip = sender
|
||||
end
|
||||
raw("PRIVMSG " .. msg_recip .. " :" .. text)
|
||||
end
|
||||
|
||||
--
|
||||
--
|
||||
-- Main program
|
||||
--
|
||||
--
|
||||
|
||||
-- Log what we got
|
||||
log(" > " .. (prefix or "") .. " " .. (sender or "-") .. "/" .. (forum or "-") .. " [" .. command .. "] :" .. (text or ""))
|
||||
|
||||
-- Our action depends on what the command is
|
||||
if (command == "INIT") then
|
||||
-- bot sends this when it first starts up, so we can log in
|
||||
raw("NICK nemont")
|
||||
raw("USER newmont newmont newmont :Sample bot")
|
||||
elseif (command == "433") then
|
||||
-- Couldn't get the nickname we asked for
|
||||
raw("NICK bot_" .. (os.time() % 500))
|
||||
elseif (command == "001") then
|
||||
-- IRC server sends this after successful login
|
||||
raw("JOIN #newmont")
|
||||
elseif (command == "PRIVMSG") then
|
||||
-- Somebody said something!
|
||||
if (text:find("strawberry")) then
|
||||
msg("Strawberries are delicious.")
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue