Skrypt do zapisywania zmian statusu gg
Skrypt do zapisywania zmian statusu gg
Chciałbym napisać skrypt/program, który by działał na moim koncie shellowym non-stop. Miałby on za zadanie zapisywanie wszystkich zmian statusów gg danego numeru. Ma ktoś jakiś pomysł, bo nie mam kompletnie pomysłu jak zacząć...
-
- Sędziwy Jeż
- Posty: 85
- Rejestracja: 12 sty 2008, 13:40
- Płeć: Mężczyzna
- Wersja Ubuntu: 7.04
- Środowisko graficzne: GNOME
Odp: Skrypt do zapisywania zmian statusu gg
Tutaj jest opis protokołu GG:
http://toxygen.net/libgadu/protocol/#ch1.5
Załóż sobie nowe konto, na którym program będzie działał.
Potem musisz się zalogować, wysłać serwerowi listę kontaktów (najlepiej jak będzie na niej tylko ten 1 numer, który chcesz "śledzić").
Kiedy ten numer zmieni status serwer poinformuje Cię o tym, tak jak jest to opisane tutaj:
http://toxygen.net/libgadu/protocol/#ch1.5
http://toxygen.net/libgadu/protocol/#ch1.5
Załóż sobie nowe konto, na którym program będzie działał.
Potem musisz się zalogować, wysłać serwerowi listę kontaktów (najlepiej jak będzie na niej tylko ten 1 numer, który chcesz "śledzić").
Kiedy ten numer zmieni status serwer poinformuje Cię o tym, tak jak jest to opisane tutaj:
http://toxygen.net/libgadu/protocol/#ch1.5
Odp: Skrypt do zapisywania zmian statusu gg
Nie bawiłem się nigdy protokołami w C++. Chyba czas zacząć. Dzięki za stronę.
Z czystej ciekawości: jak to można by zrobić w skrypcie? Jakim językiem?
Z czystej ciekawości: jak to można by zrobić w skrypcie? Jakim językiem?
-
- Sędziwy Jeż
- Posty: 85
- Rejestracja: 12 sty 2008, 13:40
- Płeć: Mężczyzna
- Wersja Ubuntu: 7.04
- Środowisko graficzne: GNOME
Odp: Skrypt do zapisywania zmian statusu gg
Np. w perlu
Odp: Skrypt do zapisywania zmian statusu gg
No dobra, z tego co widzę na stronie Net::Gadu (Interfejs do biblioteki libgadu.so dla protokołu komunikatora Gadu-Gadu) to potrzebuję biblioteki libgadu.so, która jest w repo o nazwie libgadu.
Niestety na SSH nie ma jej zainstalowanej. Da radę jakoś zaincludować bibliotekę w perlu?
Niestety na SSH nie ma jej zainstalowanej. Da radę jakoś zaincludować bibliotekę w perlu?
- beluosus
- Zakręcona Traszka
- Posty: 695
- Rejestracja: 01 paź 2006, 15:32
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: Xfce
- Architektura: x86
- Kontakt:
Odp: Skrypt do zapisywania zmian statusu gg
Może łatwiej ekg i jakaś wtyczka chyba, że sam w sobie loguje zmiany (nie wiem, nie korzystałem wiele).
Odp: Skrypt do zapisywania zmian statusu gg
Ta, też myślałem nad EKG i screen'em/nohup'em (na serwie jest tylko nohup). Popróbuję ale chciałbym też pobawić się w perlu. Może ktoś wie co z tymi bibliotekami.
__
Jak coś skombinuje z tym EKG to dam znać, powinno dać radę.
__
Jak coś skombinuje z tym EKG to dam znać, powinno dać radę.
- NoName_1990
- Sędziwy Jeż
- Posty: 59
- Rejestracja: 28 lut 2007, 18:01
- Płeć: Mężczyzna
- Wersja Ubuntu: inny OS
- Środowisko graficzne: Inne
- Architektura: x86
Odp: Skrypt do zapisywania zmian statusu gg
ekg skompilowane z obsługą pythona i skrypt w pythonie
Umieszczamy skrypt w ~/.gg/scripts/<nazwa>.py lub ~/.gg/<user>/scripts/<nazwa>.py (jeśli z ekg korzysta więcej niż jedna osoba
), a później już tylko w ekg:
EDIT: albo po prostu set log_status 1 w ekg. I po problemie
Kod: Zaznacz cały
#!/usr/bin/python
# -*- coding: iso-8859-2 -*-
import ekg
watch_uins = [ 1234567890, 0987654321 ]
filename = "statusy.txt"
def init():
# gdy skrypt jest ładowany. jeśli ta funkcja zwróci 0, skrypt nie zostanie załadowany.
ekg.printf("generic","Załadowano.")
return 1
def deinit():
# gdy skrypt jest usuwany z pamięci.
ekg.printf("generic","Usunięto.")
return 1
def handle_status(uin, name, status, descr):
# gdy ktoś zmienia stan. nazwy parametrów powinny być zrozumiałe. jeśli zwróci 0, zmiana stanu zostanie zignorowana. jeśli zwróci 2, zmiana stanu nie będzie ignorowana, ale nie zostanie wyświetlona. jeśli zwróci krotkę o takich samych argumentach jak funkcja, dane zostaną zmienione.
if uin in watch_uins:
file = open(filename, 'a')
file.write("Numerek: "+str(uin)+" zmienił status na \'"+status+"\'. \""+descr+"\"" )
file.close()
return 0 #skoro juz zapisalismy stan do pliku, nie musimy go wyswietlac w oknie ekg
return 1

Kod: Zaznacz cały
python load <nazwa>
EDIT: albo po prostu set log_status 1 w ekg. I po problemie

Odp: Skrypt do zapisywania zmian statusu gg
Mega! Wielkie dzięki. O to chodziło! Polać mu! Thx.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 3 gości