Coder Social home page Coder Social logo

seabird's Introduction

seabird

seabird is a golang library written as a wrapper around belak/irc to make making IRC bots more convenient. Note that currently there is no stability guarantee and interfaces may change at any time.

Requirements

  • Go 1.4
  • Mercurial
  • gcc
  • sqlite3 or postgresql
apt-get install golang mercurial gcc sqlite3

Building

Once you have go installed, set your GOPATH. For example

mkdir $HOME/go
export GOPATH=$HOME/go

export PATH=$PATH:$GOPATH/bin

Run the following to download and build seabird:

go get github.com/belak/seabird

This will build the seabird binary and place it in your $GOPATH/bin.

Configuring

A sample config file is provided here

Config is pulled from the environment variable SEABIRD_CONFIG. Set with

export SEABIRD_CONFIG=$HOME/config.toml

Running

Once the config file is set, create the sqlite database by running

cat $GOPATH/src/github.com/belak/seabird/schema.sql | sqlite3 dev.db

Start the bot by simply runnning

seabird

Note you can append & to the end of the seabird command to fork it to the background.

Muxes

Muxes are the building blocks of seabird. Three muxes are provided on top of belak/irc's BasicMux.

  • CommandMux - Separates PRIVMSG events out into commands with a configurable prefix.
  • CTCPMux - Separates CTCP events out of PRIVMSG events.
  • MentionMux - Tracks the bot's current name and filters PRIVMSG events which start with the bot's username.

seabird's People

Contributors

belak avatar scowcron avatar jsvana avatar jgknight avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.