libgadu  1.12.2
 All Struktury Danych Pliki Funkcje Zmienne Definicje typów Wyliczenia Wartości wyliczeń Definicje Grupay Strony
Definicje | Wyliczenia | Funkcje
Zmiana statusu użytkownika

Definicje

#define GG_STATUS_VOICE_MASK   0x20000
 Flaga bitowa dostepnosci informujaca ze mozemy voipowac. Więcej...
 
#define GG_STATUS_DESCR_MAXSIZE   255
 Maksymalna długośc opisu. Więcej...
 

Wyliczenia

enum  {
  GG_STATUS_NOT_AVAIL,
  GG_STATUS_NOT_AVAIL_DESCR,
  GG_STATUS_FFC,
  GG_STATUS_FFC_DESCR,
  GG_STATUS_AVAIL,
  GG_STATUS_AVAIL_DESCR,
  GG_STATUS_BUSY,
  GG_STATUS_BUSY_DESCR,
  GG_STATUS_DND,
  GG_STATUS_DND_DESCR,
  GG_STATUS_INVISIBLE,
  GG_STATUS_INVISIBLE_DESCR,
  GG_STATUS_BLOCKED,
  GG_STATUS_GGPLUS,
  GG_STATUS_NOT_SET,
  GG_STATUS_IMAGE_MASK,
  GG_STATUS_DESCR_MASK,
  GG_STATUS_FRIENDS_MASK
}
 Rodzaje statusów użytkownika. Więcej...
 
enum  {
  GG_STATUS_FLAG_UNKNOWN,
  GG_STATUS_FLAG_VIDEO,
  GG_STATUS_FLAG_INHERIT,
  GG_STATUS_FLAG_MOBILE,
  GG_STATUS_FLAG_SPAM
}
 Rodzaje statusów użytkownika. Więcej...
 

Funkcje

int gg_change_status (struct gg_session *sess, int status)
 Zmienia status użytkownika. Więcej...
 
int gg_change_status_descr (struct gg_session *sess, int status, const char *descr)
 Zmienia status użytkownika na status opisowy. Więcej...
 
int gg_change_status_descr_time (struct gg_session *sess, int status, const char *descr, int ts)
 Zmienia status użytkownika na status opisowy z podanym czasem powrotu. Więcej...
 
int gg_change_status_flags (struct gg_session *sess, int flags)
 Funkcja zmieniająca flagi statusu. Więcej...
 

Opis szczegółowy

Domyślnym statusem użytkownika po połączeniu z serwerem jest GG_STATUS_AVAIL. Domyślny status połączenia można zmienić za pomocą pól status i status_descr struktury gg_login_params. Już po połączeniu z serwerem, status można zmieniać za pomocą poniższych funkcji.

Przykład zmiany stanu na zajęty z opisem, widoczny tylko dla znajomych:

Aby obserwować zmiany statusu kontaktów, należy najpierw dodać do listy konktaktów ich identyfikatory, a następnie obsługiwać zdarzenia związane ze zmianami statusu.

Jeśli pole protocol_features struktury gg_login_params zawiera GG_FEATURE_IMAGE_DESCR, informacja o tym, że status zawiera opis, jest dodatkowo przekazywana za pomocą flagi GG_STATUS_DESCR_MASK. To samo dotyczy zmiany statusów osób z listy kontaktów.

Część opcji jest dostępna w postaci flag statusu, np. otrzymywanie linków od nieznajomych czy figurowanie jako klient mobilny. Można je ustawić za pomocą pola status_flags struktury gg_login_params lub funkcją gg_change_status_flags().

Błąd:
Nie ma możliwości poprawnego odbierania statusów zawierających czas powrotu.

Dokumentacja definicji

#define GG_STATUS_VOICE_MASK   0x20000

Flaga bitowa dostepnosci informujaca ze mozemy voipowac.

czy ma wlaczone audio (7.7)

#define GG_STATUS_DESCR_MAXSIZE   255

Maksymalna długośc opisu.

Dokumentacja typów wyliczanych

anonymous enum

Rodzaje statusów użytkownika.

Wartości wyliczeń
GG_STATUS_NOT_AVAIL 

Niedostępny.

GG_STATUS_NOT_AVAIL_DESCR 

Niedostępny z opisem.

GG_STATUS_FFC 

PoGGadaj ze mną

GG_STATUS_FFC_DESCR 

PoGGadaj ze mną z opisem.

GG_STATUS_AVAIL 

Dostępny.

GG_STATUS_AVAIL_DESCR 

Dostępny z opisem.

GG_STATUS_BUSY 

Zajęty.

GG_STATUS_BUSY_DESCR 

Zajęty z opisem.

GG_STATUS_DND 

Nie przeszkadzać

GG_STATUS_DND_DESCR 

Nie przeszakdzać z opisem.

GG_STATUS_INVISIBLE 

Niewidoczny (tylko własny status)

GG_STATUS_INVISIBLE_DESCR 

Niewidoczny z opisem (tylko własny status)

GG_STATUS_BLOCKED 

Zablokowany (tylko status innych)

GG_STATUS_GGPLUS 

Status "Korzystam z GG Plus".

GG_STATUS_NOT_SET 

Status nie ustawiony (przy logowaniu się do sieci)

GG_STATUS_IMAGE_MASK 

Flaga bitowa oznaczająca opis graficzny (tylko jeśli wybrano GG_FEATURE_IMAGE_DESCR)

GG_STATUS_DESCR_MASK 

Flaga bitowa oznaczająca status z opisem (tylko jeśli wybrano GG_FEATURE_IMAGE_DESCR)

GG_STATUS_FRIENDS_MASK 

Flaga bitowa dostępności tylko dla znajomych.

anonymous enum

Rodzaje statusów użytkownika.

Mapa bitowa.

Wartości wyliczeń
GG_STATUS_FLAG_UNKNOWN 

Przeznaczenie nieznane, ale występuje zawsze.

GG_STATUS_FLAG_VIDEO 

Klient obsługuje wideorozmowy.

GG_STATUS_FLAG_INHERIT 

Synchronizacja statusu do innych klientów (przy logowaniu się do sieci)

GG_STATUS_FLAG_MOBILE 

Klient mobilny (ikona telefonu komórkowego)

GG_STATUS_FLAG_SPAM 

Klient chce otrzymywać linki od nieznajomych.

Dokumentacja funkcji

int gg_change_status ( struct gg_session sess,
int  status 
)

Zmienia status użytkownika.

Parametry
sessStruktura sesji
statusNowy status użytkownika
Zwraca
0 jeśli się powiodło, -1 w przypadku błędu
int gg_change_status_descr ( struct gg_session sess,
int  status,
const char *  descr 
)

Zmienia status użytkownika na status opisowy.

Parametry
sessStruktura sesji
statusNowy status użytkownika
descrOpis statusu użytkownika (lub NULL)
Zwraca
0 jeśli się powiodło, -1 w przypadku błędu
int gg_change_status_descr_time ( struct gg_session sess,
int  status,
const char *  descr,
int  ts 
)

Zmienia status użytkownika na status opisowy z podanym czasem powrotu.

Parametry
sessStruktura sesji
statusNowy status użytkownika
descrOpis statusu użytkownika
tsCzas powrotu w postaci uniksowego znacznika czasu
Zwraca
0 jeśli się powiodło, -1 w przypadku błędu
int gg_change_status_flags ( struct gg_session sess,
int  flags 
)

Funkcja zmieniająca flagi statusu.

Parametry
sessStruktura sesji
flagsNowe flagi statusu
Zwraca
0 jeśli się powiodło, -1 w przypadku błędu
Nota
Aby zmiany weszły w życie, należy ponownie ustawić status za pomocą funkcji z rodziny gg_change_status().