Zaloguj się

Jog Jajcusia

xmpp:jajcus@jajcus.net

Wieczorem sam w domu...

Przez moją sklerozę żona poszła się upić. )-; A ja zostałem w domu dziecka (śpiącego na szczęście) pilnować.

Może ten czas spożytkuję na porządki w kodzie PyXMPP. Do pomocy zatrudniłem pylinta, który mi pokazuje wszelkie moje grzechy w kodowaniu. Teraz plik TODO.pylint liczy 1158 linii (905 ostrzeżeń, 68 błędów) mimo, że i tak pomocnika trochę uciszyłem. Ale lista się kurczy co oznacza, że jest chyba coraz lepiej. Najczęstrzym moim grzechem jest brak docstrings, a więc dokumentacji kodu. A w przypadku biblioteki to spore przewinienie... Jak dobrze pójdzie, to dzisiaj przynajmniej ten największy z modułów — pyxmpp.stream — uporządkuję.

2 komentarze do wpisu „ Wieczorem sam w domu...”


Plugin świra

Właśnie napisałem plugin Joggera dla swojego CJC. Oczywiście jeszcze można wiele w nim zrobić, ale już powinno dać się wysyłać wiadomości. A nawet nie tylko. Dla każdej wiadomości można wybrać poziom, a przed wysłaniem jest walidowana wybranym DTD (domyślnie XHTML Strict). A więc koniec wpisów psujących joggera! :-) Oczywiście edycja odbywa się w edytorze wybranym przez użytkownika (domyślnie $EDITOR lub vi, jak to w UNIXach). To będzie pierwsza wiadomość wysłana z tego plugina na prawdziwego joggera, więc ciekawe czy i jak dojdzie.

W przedostatnim wpisie pisałem o planowanym przejściu na ejabberd. W kolejnym krótko napisałem, że się udało. Krótko, bo było za wcześnie aby mówić o wielkim sukcesie no i dlatego, że nie miałem plugina w CJC. Z dokładną oceną chciałem trochę poczekać i już chyba nadszedł odpowiedni czas.

A więc z nowego serwerka jestem bardzo zadowolony. Większość użytkowników chyba nawet nie zauważyła zmiany. Niektórzy wręcz założyli, że skoro dalej wszystko działa, to znaczy, że wróciłem do starego. Po prostu działa. Rozczarował mnie nieco interfejs administratora — zarówno z WWW jak i z tkabbera. Okazało się, że nie da się przez to zakładać użytkowników. Trzeba z shella za pomocą ejabberdctl albo pozwolić userom samym się rejestrować, a tego nie chcę.

A co do tytułu wpisu... Dzisiaj byłem u psychiatry. Dostałem receptę. To już chyba jestem oficjalnie świrem ;-). Prawdopodobnie ta wizyta to tylko pieniądze wyrzucone w błoto, ale spróbować zawsze warto.

5 komentarzy do wpisu „ Plugin świra”


Linux naucza muzyki

Googlałem za oprogramowaniem które ułatwiłoby moje zabawy z gitarą. Dokładnie to chciałem znaleźć jakiś program do tabulatur, co umiałby zaimportować tabulatury ASCII i je potem zagrać jako MIDI. Na razie nic takiego nie znalazłem, ale znalazłem ten oto ciekawy artykulik. Mimo, że nie wspomina o tym, czego szukałem, to i tak zaraz zabieram się za ściąganie opisanego tam oprogramowania.

2 komentarze do wpisu „Linux naucza muzyki”


ejabberd...

O dziwo wszystko (tak mi się wydaje) na tym ejabberd działa. Stanowczo za gładko to poszło... Zobaczymy co będzie jutro, czy jacyś użytkownicy będą się skarzyć.

Jedynie z SSL miałem problemy — najpierw w ogóle nie działało, bo spieprzyłem paczkę z Erlangiem dla PLD (oczywiście już poprawiona), a potem się rozłączało zaraz przy próbie połączenia — potrzebny był patch na Erlanga, do którego namiary były w bug-trackerze ejabberd.

3 komentarze do wpisu „ejabberd...”


A może ejabberd?

Dość mam już jabberd 1.4.x. Nie po to powstała specyfikacja XMPP (sam też starałem sie dopilnować, żeby była jak najlepsza), żeby dalej się trzymać starego protokołu z jego błędami, ograniczeniami i ficzerami. Próbowałem już jabberd 2.0, jeszcze w fazie beta jego rozwoju. Była to kompletna porażka. Do pełnej kompatybilności z XMPP sporo mu brakowało, a stabilność była stanowczo poniżej oczekiwań. Od tego czasu wyszła wersja stable, ale nie wygląda na to że wiele się zmieniło. Chociażby patrząc na doświadczenia smoka z migracją chrome.pl. A teraz jeszcze ten produkt został porzucony przez głównego i praktycznie jedynego autora. Jeśli chodzi tempo rozwoju to teraz jabberd 1.4.x wypada lepiej i ma nawet szansę przegonić dwójkę w kompatybilności z XMPP. Mnie się jednak nie chce czekać.

Trzeba było więc poszukać czegoś innego. WP Jabber pojawił się z hukiem i w tamtym czasie (no, po poprawieniu tych paru błędów które wyszyły przy włączeniu S2S) był naprawdę dobrym rozwiązaniem. Niestety związanym mocno z Linuksem i konkretną (spatchowaną) wersją kernela. Przez jakiś czas nawet szybko się rozwijał, ale potem ucichło. Wsparcia XMPP praktycznie brak.

A więc z darmowych serwerów pisanych standardowo w C (właściwie czemu kierować się użytym językiem?) nie zostało nic. Pozostał Javowy OpenIM i napisany w Erlangu ejabber (czytając o nim pierwszy raz spotkałem się z tym językiem programowania) i pewnie parę innych o których nie słyszałem bądź nie pamiętam (co oznacza, że pewnie nie są warte zainteresowania). O OpenIM zresztą też nie słyszałem wiele poza tym, że jest. Za to ejabberd zawsze kusił. Straszył jedynie ten Erlang (którego nawet nie było w mojej dystrybucji) i budowa wszystko w jednym co potencjalnie mogło utrudniać integrację z czymkolwiek innym.

A czym to ten ejabberd kusi? Ano tym:

  • Obsługa dużej części XMPP (StartTLS jeszcze nie ma w oficjalnym wydaniu, ale w CVS już podobno jest), łącznie z privacy lists
  • Zarządzanie (rejestracja użytkowników itp.) z linii komend, przez WWW i z klienta Jabbera (tkabber ma odpowiedni plugin).
  • Możliwość tworzenia rozproszonych serwerów odpornych na awarię (to akurat na razie nie jest mi potrzebne).
  • Wbudowane serwisy takie jak katalog użytkowników, czaty grupowe (MUC), transport IRCa (nie będę używał, bo JJIGW jest napewno lepsze ;-)), czy pubsub itp.

A więc zdecydowałem — spróbuję tego ejabberd. Paczki z Erlangiem i samym ejabberd zrobione. Na localhost w pracy nawet udało mi się to odpalić. Użytkownikom dałem odpowiedni komunikat. Dzisiaj wieczorem będę unowocześniał mój serwer!

No to dość tych optymistycznych akcentów. Kolejna notka (jeżeli w ogóle będę miał ją z czego wysłać) pewnie będzie o tym, czemu ejabber też jest do d...

8 komentarzy do wpisu „A może ejabberd?”



[szpieg] Jesteście obserwowani...