/ircbot

An irc bot capable of watching over channels and logging messages

Primary LanguageGo

ircbot

An feature rich irc bot capable of watching over channels and logging messages.

##Features

  • Remember users and their messages using Sqlite3
  • Listens to commands from both terminal and irc chat
  • Print out logs of user messages

##Installing To set up your own developing environment to run the ircbot is easy! Clone the repo by typing this into git:

	git clone https://github.com/brokenprogrammer/ircbot.git

Or simply just download the zip archive and extract it to where you want your workspace.

If you want the project to be in a separate directory go requires you to export your gopath variable. This is how i do it to set my Gopath to my ircbot directory which is in my home directory on Ubuntu:

	export GOPATH=$HOME/ircbot

When you have the bot in your directory you have to set up the config file to work your way, The configurations file is found under (yourpath/src/config/config.go)

Editing the config is pretty straight forward. Right now its only tested with sqlite3 as database driver. The two things you probably would like to change is "Channel" - The irc channel the bot connects to and "Nick" - The username the bot will connect with.

###Third Party Packages Sqlite3 for go

	go get github.com/mattn/go-sqlite3
	go install github.com/mattn/go-sqlite3

##Running ircbot Running the bot is really easy, just run it using go by entering the same directory as the main.go file (yourpath/src) then type:

	go run main.go

###Console Commands Commands you can type into the terminal while the bot is running to make the bot do tasks:

	Hello - Makes the bot print a hello message into the irc chat.
	Block Username - Replace Username with the user you wish to block, blocked users cannot use the chat commands.
	UnBlock Username - Replace Username with the user you wish to unblock.
    Extract Username - Extracts all messages stored for that user into a text file Example: user.txt.

###Chat Commands Commands users can type in the irc chat to make the bot do specific tasks:

	!help - Displays the chat commands the bot reacts to.
	!status - Displays the time the bot has been running as well as the ammount of tracked users and messages.
	!eval - Evaluates a given statement, Example: !eval 5 + 5