Tak, jak w tytule – od jakiegoś czasu POP3 na GMailu nie działa, i to zarówno na zwykłym, jak i „domenowym”. Ostatnio Google coś ma problemy (ewentualnie kombinują dużo), bo niedawno również nie można było się dostać w kilku krajach na konta Google.
Kategoria: Techblog
Ankieta nt rozwoju Google Talk
Niedawno w komentarzu pisałem o ankietach od Google w sprawie zmian ichniego Talka. Otóż myliłem się – nie są one regularne, po prostu stale dostępna jest ankieta do wypełnienia. Wybrać można do pięciu funkcji, i to zarówno dla aplikacji Google Talk, jak i kont, których ona używa. Można też wpisać w polu tekstowym własne, niewymienione pomysły. Ja wybrałem z listy cztery funkcje oraz zasugerowałem opisowo poprawę komunikacji server-to-server.
Zachęcam wszystkich użytkowników (który po padzie jabberpl.org przybyło na Joggerze) do wypełnienia tej ankiety.
To i ja ponarzekam – jabberpl.org
Tak, dzisiaj bluszcz zrobił sobie jaja z wyłączenia serwera. Powód na pewno jest inny, w każdym bądź razie na blogu podał za niego ratunek dla Tybetu. Dowcipnie, chociaż raczej nie dla użytkowników jabberpl.org.
Generalnie, mnie to narzekanie nie powinno dotyczyć, bo nie mam i nigdy nie miałem u nich konta. Ale miałem konta na kilku innych serwerach XMPP. I o ile wtedy byłem młodym ideowcem, o tyle dzisiaj już nie zacząłbym ponownie przygody z Jabberem.
Zaczęło się od serwera jabber.wroc.pl. Używałem go przez dość długi czas, aż pewnego dnia transport GG zaczął na nim kuleć – łączyć się parę minut, itp. Pisałem wtedy nawet do administratora, częściowo rozwiązaliśmy problem poprzez zmianę serwera GG, z którego korzystał transport. Ale to dalej nie było to. Przerzuciłem się bowiem na jabber.autocom.pl.
Było dobrze, nawet bardzo. Stabilny serwer, dużo transportów (w tym wyśmienicie działający GG i SMS). Męki z przerzuceniem historii oraz rostera na ten serwer zostały w pełni wynagrodzone. Po drodze padł serwer chrome.pl. Były podobne narzekania, co teraz.
Jednak sielanka się skończyła – zaczęły się problemy z transportem GG. Na początku kolargol stwierdził, że to GG blokuje serwery jabber.autocom.pl. Pisali w tej sprawie niby maile, ale to nic nie pomagało. Aż w końcu, pewnego dnia, logując się do serwera, uświadczyłem brak transportu GG. Od razu po wejściu na forum dowiedziałem się, o co chodzi – kolargol nie daje sobie rady (tylko o tym już nie napisał) i rezygnuje z transportu GG na jabber.autocom.pl. Powód? Jak zwykle ideologiczne pieprzenie, że Jabber to Jabber, a nie bramka do GG. Widać zmiękł jednak po bodajże tygodniu (czyżby zobaczył statystyki?), ponieważ wtedy automagicznie transport pojawił się znowu – tym razem bez komentarza administratora.
Następne problemy – likwidacja jabber.autocom.pl i migracja na jabster.pl. Dziwię się, że nie zostało to zrobione automatycznie. Użytkownicy zostali powiadomieni o możliwości migracji ręcznej na nowy serwer.
Można powiedzieć, że jabster.pl jest od niemal początku serwerem pechowym. Po kilku miesiącach stabilnej pracy, zaczęły się problemy. Znów z transportem GG. Dłuższe łączenie, itp. Nastąpiły jakieś zmiany wersji transportu. Znów zaczęło działać dobrze. Jednak wtedy pojawił się problem z łączami TP. Na początku potwierdzały go nawet konsultantki TP, jednak problem do dzisiaj nie został rozwiązany. Kolargol stwierdził (równie odważnie, jak niegdyś z wyłączeniem transportu GG), że to nie ich problem i że nie ma zamiaru nic z tym robić. Powstało więc proxy postawione przez rootnode.net, które nie dość, iż widocznie buforowało wiadomości (pisałem o tym kiedyś na forum jabstera – po połączeniu z serwerem dostawałem komplet tych samych wiadomości, które otrzymałem przy pierwszym użyciu ich proxy, gdzieś więc musiały być gromadzone), to jeszcze przestało działać parę tygodni temu. No cóż, nie wiem, jak inni, ale ja od tamtej pory zmieniłem serwer XMPP. Nie mam powodów, by nie wierzyć kolargolowi, że to wina TP. Jednak mówienie o tym, że to nie jest problem jabstera to tak, jakby powiedzieć, że dziurawy dojazd do naszego sklepu to problem wydziału dróg: fakt, jedni z lepszym zawieszeniem przejadą, ale większość nie będzie ryzykować. I wydawać się może, że porównanie nietrafne (bo jabster to nie sklep ani żadna inna komercyjna działalność), ale mimo wszystko – jeżeli sami nie poprawią tej „drogi”, to stracą użytkowników. A jak widać po poprzednich akcjach (np. przywrócenie transportu GG mimo problemów), na użytkownikach im zależy.
Pisałem, że przerzuciłem się na serwer Google, z użyciem mojej domeny. I oprócz standardowych męczarni z przerzuceniem rostera (z tym mniejszy problem) i przeniesienia historii (tu już trochę zabawy jest), większych trudności nie napotkałem. Było trochę problemu z botem Jabbera, jednak rozwiązał się sam (wystarczyło użyć Google Talka). I póki co jestem szczęśliwy, padów brak, i – co najważniejsze – żaden garażowiec nie postanowi pewnego dnia, aby go tak po prostu wyłączyć. GG używam na innym serwerze, na którym zarejestrowany mam tylko transport do tej sieci. I jest to chyba najstabilniejsze rozwiązanie.
Firefox 3 – zmiany
Jako, iż dzisiaj – 17 czerwca 2008 – jest tzw. Download Day, postaram się z tej okazji opisać zmiany w Firefox 3 w stosunku do poprzedniej wersji oraz nieco zachęcić do ściągnięcia go i – co najważniejsze – używania. 🙂
Skupię się głównie na zmianach funkcjonalnych, ponieważ nie zauważyłem, aby Fx3 jakoś znacznie przyspieszył (chociaż nie ma momentów „zwiechy” np. przy dodawaniu kolejnych kart).
- Awesome bar
To chyba kluczowa zmiana w nowej wersji Firefoksa. Swoją drogą, jest dość kontrowersyjny – albo się go uwielbia, albo nienawidzi. Jeśli chodzi o mnie, to zmienił zupełnie moje nawyki w przeglądaniu internetu. Ale czym w ogóle jest ten pasek?

Do tej pory, gdy wpisywałeś adres w pasek adresu, autouzupełnianie działało jedynie dla pierwszych liter adresu (ewentualnie pomijając „www”). Teraz wyobraź sobie, że widziałeś stronę, którą chciałbyś obejrzeć ponownie, lub po prostu podać komuś do niej link. Nie pamiętasz jej adresu, ale znasz fragment tytułu. Co robisz? Przeszukujesz historię. Ale nie w nowym Firefoksie. Tutaj Awesome bar robi to za Ciebie. W pasku adresu możesz pisać nie tylko początek URl, ale dowolny jego fragment, albo nawet fragment tytułu strony. Awesome bar zasugeruje Ci strony zawierające wpisaną frazę. Czyż to nie jest genialne?
- Powiększanie całej strony
Przyznam, że o tym dowiedziałem się dopiero z jakiejś strony. Otóż do tej pory, gdy powiększaliśmy rozmiar tekstu, obrazki zachowywały swój oryginalny rozmiar. Teraz powiększa się cały obszar strony, obrazki zaś skalują proporcjonalnie do tekstu. To dość przydatna funkcja na popularnych ostatnio panoramicznych wyświetlaczach.
- Nowe powiadomienia


Koniec z denerwującymi okienkami dialogowymi. Teraz o decyzję będziemy pytani w eleganckim pasku pod kartami, na wzór Internet Explorera.
- Status pobierania

Dodano wygodny wskaźnik postępu ściągania pliku. Już nie trzeba trzymać uruchomionego menedżera pobierania. Informację w wygodny sposób dostaniesz na pasku stanu przeglądarki.
- Nowe podejście do zakładek


Nareszcie opracowano wygodny sposób klikalnego dodawania zakładek. Chcesz umieścić w nich stronę? Żaden problem – kliknij na gwiazdkę w pasku adresu. Do tej pory wymagało to aż trzech kliknięć, teraz – klikasz i nic więcej Cię nie interesuje. Do tego dodano nową organizację zakładek, podzieloną na trzy podstawowe grupy – zakładki na panelu, zakładki w menu oraz zakładki nieprzypisane. Nareszcie doceniono użytkowników, którzy korzystają z potęgi paska zakładek – takich, jak ja. 😉
Myślę, że chociaż kilku osobom spodobał się nowy Firefox i pobiorą go, podbijając tym samym licznik do bicia rekordu. 😉
Zapraszam do ściągania na: http://www.spreadfirefox.com/pl/worldrecord/
Problemy z Jabsterem
Jeżeli w ostatnich dniach masz – tak, jak ja – problemy z połączeniem do serwera jabster.pl, przeczytaj ten wpis
Jeżeli w ostatnich dniach masz – tak, jak ja – problemy z połączeniem do serwera jabster.pl, przeczytaj ten wpis
Typowe objawy to:
- problemy z połączeniem do serwera
- odbieranie danych „pakietami” po połączeniu, tj. pojawianie się po kilka dostępnych osób na liście
- gubienie wiadomości
- regularny brak reakcji od rozmówców, po czym fala odpowiedzi
Jeżeli masz te objawy w ciągu ostatnich 2 dni, to na pewno korzystasz z łącz TP SA, a konkretniej – Neostrady. Problem zgłaszany jest na forum JabberPl.org, i po kilku postach wszystko okazało się jasne – winna jest niewydolność systemu ochrony użytkowników, ostatnio wprowadzonego w Neostradzie. Blokuje on któreś porty, jednak – jak widać – pojawiają się też różne tego typu problemy.
Jak sobie z tym poradzić? Otóż wystarczy dodać przed nazwą użytkownika (czy to w systemie, czy na Liveboksie) przedrostek: „bez_ochrony-„, z małych lub dużych liter (kombinacje liter nie będą rozpoznawane), a następnie uruchomić ponownie komputer oraz – w przypadku posiadania Liveboksa – rozłączyć router.
Po tym zabiegu wszystko działa tak, jak wcześniej.
EDIT: Jednak nie do końca działa. BOK TP SA poinformował o tym, iż: „mają problem ze spiętrzeniem ruchu na kaskadach grupujących centrale w Warszawie”. Pozostaje czekać.
EDIT 2: Podaję kolejne, tymczasowe rozwiązanie, za Kangelem: w Psi wybrać Ψ->Konfiguracja kont, zaznaczyć interesujące nas konto, Modyfikuj, i na zakładce Połączenie zaznaczyć Ustaw ręcznie adres/port serwera. W uaktywnione pole wpisujemy „rootnode.net”, port: 5222. Powinno pomóc (póki co – u mnie działa). Dzięki Kangel. 🙂
Marzy mi się rozszerzenie
Buszując po internecie – najczęściej w serwisach informacyjnych, różnego rodzaju portalach, itp. – znajduję mnóstwo nazwisk. Czy to polityków, czy osób z showbiznesu, czy jeszcze innych. Nie wiem, czy to tylko moja przypadłość, ale gdy nie kojarzę dokładniej danego nazwiska (chociażby z tego powodu, że telewizję oglądam sporadycznie) lub chcę się dowiedzieć, kim ta osoba jest – najczęściej zaglądam do Wikipedii i czytam informację o tej osobie. Nie zawsze jednak mi się chcę, co jednak wywołuje u mnie głód wiedzy: trudno mi się skoncentrować na reszcie artykułu.
I tak sobie myślę: czy dałoby się w prosty sposób wyławiać z kodu strony nazwiska oraz czynić te znalezione odnośnikami do strony w Wikipedii? Od strony ideowej jest to dość proste.
Otóż – gdy mamy kod strony, a dostęp do takowego na pewno mają rozszerzenia w Firefoksie – wystarczy przeszukać stronę za pomocą wyrażeń regularnych pod kątem występowania najczęstszej postaci nazwisk: spacja – duża litera – małe litery – spacja – duża litera – małe litery – spacja. Postanowiłem to sprawdzić grepem i rzeczywiście dla następującego wyrażenia: [[:space:]][[:upper:]][[:lower:]]*[[:space:]][[:upper:]][[:lower:]]*[[:space:]] znajdywanie nazwisk jest dość skuteczne. Przykładowo, dla dwóch losowych stron z któregoś portalu internetowego dostaję:
[dandys@localhost ~]$ grep -o [[:space:]][[:upper:]][[:lower:]]*[[:space:]][[:upper:]][[:lower:]]*[[:space:]] Desktop/1.php
Dariusza Rosatiego
Janusz Onyszkiewicz
Rzeczypospolitej Polska
Niemiec Carl
Andrzeja Szczypiorskiego
Zbigniewa Herberta
[dandys@localhost ~]$ grep -o [[:space:]][[:upper:]][[:lower:]]*[[:space:]][[:upper:]][[:lower:]]*[[:space:]] Desktop/2.php
Sejmu Stefana
Donald Tusk
Unii Europejskiej
Unii Demokratycznej
Anna Bikont
Jerzego Turowicza
Portret Stefana
Markiem Jurkiem
Marka Jurka
Jan Rokita
Unii Demokratycznej
Porozumienia Centrum
Unii Demokratycznej
Henryka Goryszewskiego
Polskiej Partii
Jerzy Robert
Jest tam parę niepasujących wyników, jednak i to byłoby do przejścia, gdyby pomijać takie przypadki i również tworzyć je jako linki.
Gdy już mamy te wyrażenia, należałoby wrzucić je w Google w celu pominięcia fleksji (wpisanie np. „Marka Jurka” w wyszukiwarkę z Wikipedii nie zawsze kierowałoby na stronę o Marku Jurku). Jednak to już kwestia wrzucenia: WYRAŻENIE site:pl.wikipedia.org w Google i użycie „Szczęśliwego trafu” doprowadzi nas do pożądanej strony.
To tyle teorii, dopiero teraz zaczynają się schody. Otóż pięknie byłoby mieć takie rozszerzenie w Firefoksie, jednak zupełnie nie mam pojęcia o ich tworzeniu. Jeżeli pomęczy mnie to dłużej, to spróbuję się trochę podszkolić w tym względzie. A może coś takiego już istnieje?
[Qt] sms-0.2
Wprawdzie napisałem tę wersję już ponad tydzień temu, ale jakoś z braku czasu nie wrzuciłem. Poprawione błędy z poprzedniej wersji (m.in. obrazki dodane wreszcie do zasobów pliku wykonywalnego) oraz dodane funkcje z TODO. Oto i lista zmian w stosunku do wersji poprzedniej:
- wprowadzenie historii wiadomości (użytkownik w łatwy sposób może wybrać, czy daną wiadomość chce zapisać w pliku historii),
- dodanie wygodnej przeglądarki SMS-ów z historii,
- edytor książki telefonicznej,
- zmiany w interfejsie (np. zmiana sposobu wywoływania historii oraz edytora książki telefonicznej).
-
Brakło mi pomysłów na wersję 0.3, więc gdyby ktoś znalazł błędy w obecnej wersji lub miał jakiś pomysł – prosiłbym o napisanie go w komentarzu lub na mój e-mail.
Linki do ściągnięcia:
Kod źródłowy – sms-0.2.tar.bz2
Binaria dla Linuksa (bez bibliotek) – sms-0.2-bin.tar.bz2
A oto zrzuty ekranów z nowej wersji:



[Qt] sms-0.1
Ostatnio z nudów i braku internetu na stancji, postanowiłem przepisać mój konsolowy program do wysyłania SMS-ów na jakąś „okienkową” bibliotekę. W moim wydaniu „jakąś” oznacza oczywiście Qt. 🙂
Wciągnęło mnie to dość. Ułożyłem GUI, użyłem QSocket zamiast socket.h, pobawiłem się trochę QListBox. Postanowiłem, że będę regularnie rozwijał ten program. I tak oto, po poprawieniu masy błędów i problemach z wspominanym QListBox, wydałem wersję 0.1, której funkcjonalność ogranicza się na razie jedynie do wysyłania SMS-ów i możliwości skorzystania z (manualnie jeszcze tworzonej) książki telefonicznej. Stworzyłem już jednak „listę życzeń” TODO, która w obecnej wersji wygląda następująco:
- usunięcie dolnego paska zmiany rozmiaru,
- usunięcie możliwości maksymalizacji,
- logowanie wysłanych SMS-ów do pliku historii (jako opcja zależna od użytkownika),
- dodanie opisów do elementów (podpowiedzi),
- walidacja numeru,
- edytor książki telefonicznej,
- przejście TAB-em to kolejnych pól i przycisków.
To na razie tyle, po napisaniu tych opcji nadam projektowi numer wersji 0.2. Oczywiście, czekam też na wszelkie sugestie, które można zgłaszać w komentarzu do tego wątku, lub – jeśli komuś tak wygodniej – poprzez e-mail. Będę na bieżąco aktualizował powyższą listę.
Projekt powstaje oczywiście na licencji GNU GPL, ale po to, aby ktoś mógł sobie w przyszłości podejrzeć jego kod i być może się czegoś nauczyć, a nie po to, aby można było się wylansować na moich błędach (co już się zdarzało). Naprawdę – proszę o wyrozumiałość i konstruktywną krytykę, jestem otwarty na wszelkie propozycje. 🙂
A oto linki do poszczególnych wersji programu:
Kod źródłowy – sms-0.1.tar.bz2
Binaria dla Linuksa (bez bibliotek) – sms-0.1-bin.tar.bz2
Brak tam jeszcze wersji skompilowanej statycznie (wie ktoś, jak to zrobić dla Qt?) oraz wersji dla Windows. Tę drugą próbowałem wykonać, jednak dostaję błąd przy kompilacji. Gdyby komuś się to udało – proszę o kontakt.
I na koniec screen dla patrzących. 🙂

Z góry dziękuję za wszelkie sugestie i pomysły!
Konsolowy program do wysyłania SMS (przez bramkę Plus GSM)
Ostatnio fascynuję się programowaniem sieciowym i jestem na etapie zainteresowania nagłówkami HTTP. Tak się składa, że chciałem sobie zautomatyzować proces wysyłania SMS-ów, aby nie wchodzić na sms.plusgsm.pl, a uruchomić sobie jeden konsolowy program, wpisać nadawcę, odbiorcę i treść.
W nagłówku wysyłanym przez program nie ma informacji o ID ciasteczka (wycięta celowo) po to, aby ominąć jedną z wielu ograniczeń bramki – czyli 10 SMS-ów na dobę z jednego komputera. Ograniczenia jednak są – ilośc SMS-ów wysłanych z bramki na konkretny numer GSM oraz z jednego IP.
Program nie obsługuje póki co polskich znaków w treści SMS-a, zaś zmienna nadawcy może zawierać jedynie litery, bez interpunkcji i znaków białych.
Może komuś akurat przyda się ten program. 😉 Zamieszczam jego źródło:

Dandys IM v0.1 :)
Ostatnimi czasy z nudów wziąłem się wreszcie za naukę socketów w C++. Miałem to już zrobić na początku maja, mam nawet wydrukowane samouczki, jednak myślę, że to właśnie one mnie do tego zniechęcały. A to nie był← pisane pod kątem C++, a to były zbyt obszerne i za dużo w nich było teorii. Dopiero kolejne poszukiwania (bodajże przedwczorajsze) naprowadziły mnie na właściwy trop. I tak oto, aby poznać sockety w praktyce, postanowiłem napisać sobie pseudokomunikator – Dandys IM. 😉
Póki co ma on tylko funkcję serwera (klienta mi się dopisać nie chciało, dlatego robi z niego teraz Telnet) i parę błędów (m.in. taki, że wiadomości pojawiają się czasem dopiero po wysłaniu wiadomości przez nas), ale mi to wystarczyło, żeby się przekonać, jak to fajnie, gdy mój pierwszy program z socketami potrafi porozumiewać się ze światem. 🙂
Niżej zamieszczam źródełko programu, jak komuś się chce, to wiadomo, co robić (nie wiadomo? no to: g++ socket_server.cpp -o socket_server). Jakby komuś się aż tak nudziło i poprawił buga, o którym pisałem, to proszę o kontakt.
I na koniec podziękowania dla testerów, których to często nękałem ostatnio:
- Eriz
- szlomo
Dzięki chłopaki za czas!

- Przykład prostego klienta oraz serwera z użyciem socketów
- Opis najczęściej używanych funkcji w programowaniu socketów (potrzebne do zrozumienia kodu z poprzedniego dokumentu)