Lista kontaktów
[Połączenie z serwerem]


Enumerations

enum  {
  GG_USER_NORMAL,
  GG_USER_BLOCKED,
  GG_USER_OFFLINE
}
 Rodzaj kontaktu. More...

Functions

int gg_notify_ex (struct gg_session *sess, uin_t *userlist, char *types, int count)
 Wysyła do serwera listę kontaktów.
int gg_notify (struct gg_session *sess, uin_t *userlist, int count)
 Wysyła do serwera listę kontaktów.
int gg_add_notify_ex (struct gg_session *sess, uin_t uin, char type)
 Dodaje kontakt.
int gg_add_notify (struct gg_session *sess, uin_t uin)
 Dodaje kontakt.
int gg_remove_notify_ex (struct gg_session *sess, uin_t uin, char type)
 Usuwa kontakt.
int gg_remove_notify (struct gg_session *sess, uin_t uin)
 Usuwa kontakt.

Detailed Description

Po udanym połączeniu z serwerem, pierwszą czynnością powinno być wysłanie listy kontaktów. W innym przypadku serwer nie wyśle żadnych zakolejkowanych wiadomości, ponieważ najprawdopodobniej filtry antyspamowe traktują inaczej wiadomości od znajomych i nieznajomych. Do wysłania listy kontaktów zaraz po udanym połączeniu, nawet gdyby była pusta, należy użyć funkcji gg_notify() lub gg_notify_ex(). Dodawanie i usuwanie kontaktów podczas połączenia można przeprowadzać za pomocą funkcji gg_add_notify(), gg_add_notify_ex(), gg_remove_notify() i gg_remove_notify_ex().

Przykład wysłania listy kontaktów składającej się z dwóch wpisów:

uin_t kontakty[] = { 12345, 67890 };

// ...

gg_notify(sesja, kontakty, 2);

Przykład wysłania pustej listy kontaktów, by móc odbierać wiadomości:

gg_notify(sesja, NULL, 0);

Po wysłaniu listy kontaktów otrzymamy informacje o statusie znajomych (za pomocą GG_EVENT_NOTIFY, GG_EVENT_NOTIFY60 lub GG_EVENT_NOTIFY77) oraz informacje dodatkowe o kontaktach (za pomocą GG_EVENT_USER_DATA).


Enumeration Type Documentation

anonymous enum

Rodzaj kontaktu.

Enumerator:
GG_USER_NORMAL  Zwykły kontakt.
GG_USER_BLOCKED  Zablokowany.
GG_USER_OFFLINE  Niewidoczny dla kontaktu.


Function Documentation

int gg_notify_ex ( struct gg_session sess,
uin_t userlist,
char *  types,
int  count 
)

Wysyła do serwera listę kontaktów.

Funkcja informuje serwer o liście kontaktów, których statusy będą obserwowane lub kontaktów, które bedą blokowane. Dla każdego z count kontaktów tablica userlist zawiera numer, a tablica types rodzaj kontaktu (GG_USER_NORMAL, GG_USER_OFFLINE, GG_USER_BLOCKED).

Listę kontaktów należy zawsze wysyłać po połączeniu, nawet jeśli jest pusta.

Parameters:
sess Struktura sesji
userlist Wskaźnik do tablicy numerów kontaktów
types Wskaźnik do tablicy rodzajów kontaktów
count Liczba kontaktów
Returns:
0 jeśli się powiodło, -1 w przypadku błędu

int gg_notify ( struct gg_session sess,
uin_t userlist,
int  count 
)

Wysyła do serwera listę kontaktów.

Funkcja jest odpowiednikiem gg_notify_ex(), gdzie wszystkie kontakty są rodzaju GG_USER_NORMAL.

Parameters:
sess Struktura sesji
userlist Wskaźnik do tablicy numerów kontaktów
count Liczba kontaktów
Returns:
0 jeśli się powiodło, -1 w przypadku błędu

int gg_add_notify_ex ( struct gg_session sess,
uin_t  uin,
char  type 
)

Dodaje kontakt.

Dodaje do listy kontaktów dany numer w trakcie połączenia. Aby zmienić rodzaj kontaktu (np. z normalnego na zablokowany), należy najpierw usunąć poprzedni rodzaj, ponieważ serwer operuje na maskach bitowych.

Parameters:
sess Struktura sesji
uin Numer kontaktu
type Rodzaj kontaktu
Returns:
0 jeśli się powiodło, -1 w przypadku błędu

int gg_add_notify ( struct gg_session sess,
uin_t  uin 
)

Dodaje kontakt.

Funkcja jest odpowiednikiem gg_add_notify_ex(), gdzie rodzaj wszystkich kontaktów to GG_USER_NORMAL.

Parameters:
sess Struktura sesji
uin Numer kontaktu
Returns:
0 jeśli się powiodło, -1 w przypadku błędu

int gg_remove_notify_ex ( struct gg_session sess,
uin_t  uin,
char  type 
)

Usuwa kontakt.

Usuwa z listy kontaktów dany numer w trakcie połączenia.

Parameters:
sess Struktura sesji
uin Numer kontaktu
type Rodzaj kontaktu
Returns:
0 jeśli się powiodło, -1 w przypadku błędu

int gg_remove_notify ( struct gg_session sess,
uin_t  uin 
)

Usuwa kontakt.

Funkcja jest odpowiednikiem gg_add_notify_ex(), gdzie rodzaj wszystkich kontaktów to GG_USER_NORMAL.

Parameters:
sess Struktura sesji
uin Numer kontaktu
Returns:
0 jeśli się powiodło, -1 w przypadku błędu


Generated on Sat Feb 4 03:01:16 2012 for libgadu by  doxygen 1.5.6