Strona główna Kontakt Jogger

Bazylowy Jogg

O makach, życiu i innych pierdołach

DISKLEJMER

Chwilowo brak disklejmera :P

-- Bazyl

Chęściowo rosterowo

Częściowo roster już działa, ale jeszcze nie do końca. Na razie tylko go ściąga. Teraz pora na połączenie rostera z presence, żeby w strukturach były trzymane informacje na temat użytkownika, jego zalogowanych zasobach itp. To będzie dobre. Do tego dołoży się iq:version i zrobi się pełen automat :)

Do tego muszę zmodyfikować lekko API. Muszę dołożyć jeden parametr do tworzenia kontekstu - język. To ważny element, który kompletnie wypadł mi z głowy... :)

6 komentarzy. Poziom: 0; Kategorie: Ogólne ; 26 lipca 2005 00:14:32.

Deadlocki

Mnie wykańczają. Na szczęście w końcu znalazłem chwasta i wyrwałem. Problem z głowy :) Zserializowałem też pisanie do socketa. Przecież przy wielowątkowości się to zepsuje ani chybi :) Pozostało odpalanie zdarzeń w osobnym wątku kolejkowanym i sprawa będzie z głowy. Potem w końcu będę mógł przejść do jabber:iq:roster, skonczyć to i wydać nową, już używalną wersję :)

Dodaj komentarz. Poziom: 0; Kategorie: Ogólne ; 24 lipca 2005 03:51:22.

Kompatybilność z Mac OS X

Udało się. Naprawiłem burolki. Po prostu niektóre struktury są na maczku trzymane w innych plikach nagłówkowych. Naprawione i pozamiatane. Co prawda są jeszcze jakieś problemy, ale sądzę, że to też się z czasem naprawi. Na razie mam ważniejsze naprawy do wykonania. No i implementacja jabber:iq:roster :)

Chwilowo - zmiany poszły na CVS.

Dodaj komentarz. Poziom: 0; Kategorie: Ogólne ; 24 lipca 2005 02:22:25.

jabber:iq:version

Działa i to fajnie. Problem w tym, że przy testowaniu okazało się, że na maczku inaczej się operuje na strukturach socketu. Zły jestem. Muszę poczytać trochę znów.

Ble.

Dodaj komentarz. Poziom: 0; Kategorie: Ogólne ; 23 lipca 2005 16:02:17.

Faszystowska nadgorliwość

Fajnie. Tylko, że jeszcze potrwa zanim ktokolwiek tego będzie mógł wygodnie użyć :)

5 komentarzy. Poziom: 0; Kategorie: Ogólne ; 22 lipca 2005 14:46:18.

Najważniejsze TODO

Najważniejsze - przejście na kontekst - zakończyło się sukcesem. Ale to nie koniec zmian. Na pewno to już koniec zmian w API, ale nie w samej strukturze biblioteki. Będzie musiało powstać znacznie więcej wątków. Wątek, który czyta i wrapuje zwrotki zostanie jak jest. Z tą różnicą, że zamiast samemu wywoływać callbacki będzie przekazywał odczytane elementy do kolejki fifo, która będzie obsłużona przez inny, zupełnie osobny wątek.
Geneza problemu naświetlona mi przez patrysa (znowu) jest prosta. Jeśli funkcja callbackowa będzie za duża i za długo będzie trwała, to połączenie TCP po prostu padnie. To samo tyczy się wysyłania. Muszę zserializować funkcję wysyłającą zwrotki, bo się bardzo łatwo może coś zwyczajnie zepsuć.

Z ciekawostek ważne jest to, że działa. Jeśli uda mi się spiąć siedzenie w troki to może dziś nawet odpalę już jabber:iq:version i jabber:iq:roster. Będę mógł ze spokojem sumienia złożyć paczkę i ją wystawić, choć do prawdziwej używalności jeszcze jest daleka droga.

BTW: Jest ktoś biegły w autotoolach, bo nie mogę sobie z paroma rzeczami poradzić...

Dodaj komentarz. Poziom: 0; Kategorie: Ogólne ; 22 lipca 2005 11:57:04.

Przesiadka na kontekst

Udana!
Pozostały mi już tylko stare błędy! Cieszę się jak dziecko :D

Dodaj komentarz. Poziom: 0; Kategorie: Ogólne ; 22 lipca 2005 01:19:13.

(23:49:38) Patryś: jestes leniwym programista
(23:49:54) Patryś: nie myslisz kodem tylko efektami
(23:50:17) Patryś: w podstawowce mnie nauczyli ze to jest leniwy programista
(23:50:29) Patryś: pokaze kierunek, a inni przepisza jego kod od zera po ludzku
(23:50:53) bazyl: ej, mistrzu
(23:51:22) bazyl: generalnie robię to wszystko po raz pierwszy w życiu
(23:51:29) bazyl: to mój pierwszy większy projekt w C ;]
(23:52:07) Patryś: no to czekam jak w wieku 40 lat jako jeden z FORTUNE 1000 bedziesz dziekowal mi w jakims publicznym wystapieniu
(23:52:23) bazyl: nie licz na to (23:52:28) Patryś: za to ze swa ironia, cynizmem i sarkazmem zmotywowalem cie do pracy
(23:52:30) Patryś: ;]
(23:52:46) bazyl: hm
(23:52:53) bazyl: nie, to mnie raczej nie motywuje
(23:53:16) bazyl: jestem zdeterminowany samym sobą jestem. A ironia cynizm i sarkazm robią we mnie zupełnie odwrotne odruchy

1 komentarz. Poziom: 0; Kategorie: Ogólne ; 21 lipca 2005 23:59:21.

Praca

Nudzi mnie coraz bardziej.
Ciekawe jest to, że w ciągu ostatnich dwóch dni dostałem dwie propozycje pracy. Jedną w Polsce i jedną w Anglii. Czekam na szczegóły. Może się zrobi ciekawiej :)

2 komentarze. Poziom: 0; Kategorie: Ogólne ; 20 lipca 2005 16:12:57.

Walki na froncie

I stało się.
Prace ruszyły kompletnie pełną parą. Brak uploadów na CVS spowodowany jest głównie faktem, że zmiany, które wprowadziłem nie pozwalają zbytnio na kompilację biblioteki. Dlaczego? Pierwszym punktem było wywalenie wszelkich zmiennych statycznych i stworzenie kontekstu dla połączenia. Dzięki temu biblioteka jest reużywalna i co najważniejsza - można się połączyć do kilku serwerów jednocześnie.
Dodatkowo potrzeba była na skonstruowanie odpowiedniego pliku nagłówkowego, który przetrzymuje wszelkie interfejsowe deklaracje srtuktur i funkcji.

O ile drugi punkt jest praktycznie już zakończony, tyle przebudowa rozwiązania na kontekstowe wywołania zakrawa o delikatny sadyzm. Znacznie wygodniejsze było by rozwiązanie z pomocą klas. Jednak ja piszę w golusim C, głównie dlatego, że potrzebuję takiego rozwiązania do późniejszych implementacji. Nie upraszcza to sprawy w żaden sposób, ale jest nawet czytelne.

Sądzę, że potrzeba jeszcze kilku dni, zanim biblioteka w pełnej obudowie autotoolowej, instalowalna i działająca bez zarzutów pojawiła się na CVSie i jako paczka do ściągnięcia. A należy to zrobić jeszcze zanim zostaną rozpoczęte prace nad interfejsem użytkownika.

Aktualne TODO zawiera następujące punkty:

  • Zakończyć przebudowę na rozwiązanie kontekstowe
  • Dodać obsługę jabber:iq:version w module iq
  • Dodać moduł obsługi rostera

Dopiero potem zostanie utworzona paczka 0.1. Już używalna, ale pozostanie do miłej funkcjonalności jeszcze:

  • Obsługa SASL auth
  • Obsługa TLS
  • Obsługa disco
  • Obsługa xforms

Oj, długa walka jeszcze przede mną. Bo w sumie uzyskanie wszystkich tych elementów to też jeszcze daleko od końca jakiejś wygodnej obsługi biblioteki. Ale uzyskanie tej funkcjonalności pozwoli mi na rozpoczęcie prac nad budową jakiegokolwiek GUI.

Trzymać kciuki :)

Dodaj komentarz. Poziom: 0; Kategorie: Ogólne ; 20 lipca 2005 08:53:16.

Walki z pierdołami

To jest jednak irytujące.
Z niewielką pomocą przyjaciół udało mi się wyeliminować wszystkie wycieki pamięci i segv'y. Biblioteczka działa. Problemem pozostał server berlios'a, który chyba zapomniał o mnie totalnie. Muszę chyba kogoś kopnąć w zadek :P

2 komentarze. Poziom: 1; Kategorie: Ogólne ; 18 lipca 2005 09:30:57.

Konto projektu na berliOS

W końcu! Mam już konto projektu na berliOS. Niah niah! Jak tylko wyeliminuję ostatniego core dumpa, to wrzucam pierwszą wersję pre-alpha :P

Jestem szczęśliwy :D

1 komentarz. Poziom: 1; Kategorie: Ogólne ; 15 lipca 2005 18:06:35.

Test layoutu

Pobrany ze strony podanej przez zgodę. Mnie się podoba i chyba go wykorzystam do strony projektu :) If you don't mind :)

6 komentarzy. Poziom: 1; Kategorie: Ogólne ; 13 lipca 2005 16:55:56.

Layout strony projektu

Szukam pomocy do stworzenia witryny projektu biblioteki Jabbah. Każda pomoc będzie nieoceniona :)

9 komentarzy. Poziom: 0; Kategorie: Ogólne ; 13 lipca 2005 14:09:40.

Jabbah ożył

Biblioteka jabbah ożyła. Potrafi już się podłączyć do serwera, zalogować (niestety jeszcze nie SASLem tylko poprzez JEPowego IQ). Można już zarejestrować funkcje na przychodzące wiadomości i zmiany stanów. Można te stany sobie ustawiać i wysyłać różnego rodzaju wiadomości. Dziś będzie można już ściągnąć roster.
Po prostu pięknie. Szczególnie, że przygotowałem się również na połączenia szyfrowane, które będą dostępne również już dziś. Chyba pora się w końcu projektem podzielić ze światem. Nie wiem tylko jeszcze gdzie ten projekt zarejestrować. Szczególnie, że JabberStudio milczy, jak się wysyła prośbę o założenie takowego.
Jakieś pomysły?

5 komentarzy. Poziom: 0; Kategorie: Ogólne ; 13 lipca 2005 08:55:29.

Wyznanie

Przyznaję się bez bicia. Nie potrafię się już bawić...

3 komentarze. Poziom: 1; Kategorie: Ogólne ; 10 lipca 2005 02:01:24.

Wtajemniczeni zrozumieją

  • Zmiana pracy
  • Wyprowadzenie się z mieszkania
  • Szybkie awanse
  • Samotna podróż przez pół Europy w samochodzie bez mapy
  • Zmiana kraju zamieszkania

Ja muszę być rzucany na głęboką wodę, żebym czuł, że jeszcze umiem pływać...

9 komentarzy. Poziom: 1; Kategorie: Ogólne ; 02 lipca 2005 20:23:42.