IRC Bot

Opis projektu

Kanał HS-owy bez IRC bota? IRC bot musi być :)
Najlepszy do tego będzie Erlang (z biblioteką ealirc), bo:

  • działa
  • przeładowanie kodu bez restartowania bota
  • kod bota będzie ładniejszy

Kod źródłowy bota: haircut (Hackerspace Approved IRC Uber Tool)

Zarządca

Chętni do pomocy

Dobrze by było cokolwiek wiedzieć o Erlangu, ale dozzie chętnie opowie i nauczy.

TODO techniczne

  • instalacja/konfiguracja
  • daemonizacja
  • ładowanie konfiguracji
  • obsługa zerwanych połączeń (reconnect)
  • system pluginów
  • przeładowanie kodu bota na żywo
  • README i reszta dokumentacji

Proponowane funkcje

Większość poniższych wymyślił swistak35. Na razie nie wiadomo, które z nich to dobry pomysł, a które nie. Jeśli masz jakiś pomysł - edytuj wiki, ew. pingnij mnie z nim na IRC-u.

  • data i agenda najbliższego przyszłego spotkania
  • lista trzech najbliższych autobusów nocnych z godzinami odjazdu
  • interfejs WWW dla niektórych komend (np. agendy i autobusów)
  • kto zapłacił w tym miesiącu składkę
  • szukajka na wiki, zwracająca link do pierwszej odpowiedzi
  • blacklistowanie niektórych użytkowników (bot odmówi wykonywania komend)
  • ping → pong
  • logowanie obecności ludzi na kanale
  • tweetowanie?
  • wlokalu (stan czujników i lista osób)
  • informowanie w czasie semi-rzeczywistym o zmianach na wiki
  • logowanie linków z kanału (szukanie? publikowanie na stronie?)
  • logowanie rozmów i archiwum WWW
    • !lastlog, link z historią od ostatniej obecności
  • pobieranie wiadomości z twittera, albo informacji o tym, że nas ktoś obserwuje
  • poczta z {public,members}@lists.hswro.org?
  • skracacz URL-i
  • funkcja „sru” (ma taką ood z #hackerspace-pl).
    • Funkcja o wybitnych walorach rozrywkowych ;)
    • Działa na zasadzie rosyjskiej ruletki - po wywołaniu komendy user ma 1/6 szansy na kicka z kanału (ew. w wersji hardcore szansa rośnie z każdą iteracją).
    • Można też czekać, aż zgłosi się sześciu userów, po czym wywalić jednego z kanału
  • zwracanie losowego cytatu z dowolnego źródła, jak fortunes, czy też filmy (np. baza IMDB), komiksy, anime (Inferno cop? ;-))

Historia

Projekt kiedyś należał do użytkownika swistak35, ale długo w nim się nic nie działo, a swistak35 się nie pojawia na spotkaniach. Projekt został przejęty przez dozziego.

Repozytorium ze starym botem w Haskellu: hsbot