środa, 4 lutego 2009

Bot do czatowania via GG

Wpadłem ostatnio na pomysł, dość ciekawy dla mnie, żeby napisać sobie prostego bota do czatowania via Gadu-Gadu. Zainteresował mnie tym znajomy, który posiada już takiego, ale nie może go rozwijać - wiadomo, posiada tylko binarkę.
Bot z założenia ma być banalnie prosty, łatwy w rozwoju. Przy okazji mogę także podszlifować obsługe Qt.
Tak, jest pisany w Qt - lecz tylko jako wersja konsolowa. Zresztą po co wiecej jak na bota, który będzie robił prostą analizę wiadomości jakie dostaje i rozsyłał je dalej.
Co z tego wyjdzie jako końcowa wersja - nie wiem. W tej chwili mam tylko troszkę czasu w weekendy i wtedy też dodaję kolejne funkcjonalności.

Dla zainteresowanych oczywiście link: http://code.google.com/p/ggchatbot/
Licencja LGPL - więc proszę, bawcie się do woli ;)

piątek, 30 stycznia 2009

Telepatyczne Kopete

Parę dni temu zacząłem dodawać obsługę Telepathy w Kopete. Dokładniej przeróbki starego kodu opartego na Decibel i Tapioca na TelepathyQt4 - nową implementację Telepathy pisaną w Qt4.

Na początek poszedł nowy branch (dla zainteresowanych http://websvn.kde.org/branches/work/kopete/kopete-tpqt4/ ) i analiza istniejącego kodu. Swoją drogą dość starego ale o dziwo prawie działającego. Oczywiście nie obyło się bez problemów z okazji, że chłopaki z Collabora są w trakcie (sic.) implementacji Telepathy w Qt4.

Dość przednia zabawa gdy trzeba napisać kawałek kodu opartego na kodzie, który "chyba" istnieje i działa, przynajmniej w teorii. W praktyce wyglądało to tak, że dokumentacja swoje a framework swoje. Z reguły coś co było opisane nie działało, część, która działała nie była opisana, a jeśli już była to działała inaczej :) Po prostu skakałem ze szczęścia - Wwee \o/ !

Po kilku rozmowach, poprawkach i wczorajszym commicie nagle wszystko, a przynajmniej ta część, którą psułem zaczęła automagicznie działać.

Można już wybrać dostępne w systemie manadżery połączeń:


oraz edytować ustawienia dla danego protokołu (na obrazku przykład dla irc'a):


Do zrobienia została edycja/tworzenie konta no i realizacja połączeń. Osobiście jestem ciekaw co z tego wyjdzie. Kopete z obsługą jednego wieloprotokołowego standardu. Mam nadzieję, że twórcy obsługi innych, pojedynczych protokołów dla Kopete nie poczują się odsunięci :)

Zresztą alternatyw nigdy za wiele, przynajmniej użytkownicy będą mieli dość pokaźny wybór.

P.S. Ciekawe czy dało by się z czasem dodać obsługę twittero-podobnych serwisów, jedno API - wiele serwisów i zintegrować to z Kopete - taki psikus :)