Utermiko Opublikowano 16 Kwietnia 2013 Udostępnij Opublikowano 16 Kwietnia 2013 Nie wiem czy to dobry dział. Chciałbym przedstawić bibliotekę do obsługi protokołu Gadu-Gadu napisaną w C# na podstawie opisu protokołu toxygen'a - http://toxygen.net/libgadu/protocol/. Użycie jest banalnie proste i sprowadza się do użycia kilku metod i eventów. Download: Amazon Kod źródłowy jest dołączony do paczki oraz dostępny na GitHub'ie: https://github.com/Symeg/GG4NET Paczka zawiera dokumentację XML w języku polskim, kod źródłowy oraz skompilowaną binarkę pod .NET 4.0 Client Profile. Możliwości: - logowanie - zmiana statusu - wysyłanie wiadomości - odbieranie wiadomości - powiadomienie o pisaniu - informacje o zmianie statusu osobom z listy kontaktów - obsługa publicznego katalogu - multilogowanie - import / eksport listy kontaktów do pliku / na serwer w starym formacie (CSV) i nowym (XML) - usługi HTTP (pobieranie obrazkowego tokenu, rejestracja, zmiana hasła, przypomnienie hasła) - rozmowy konferencyjne Mały przykład użycia: using System; using GG4NET; namespace Przyklad { class Program { static void Main(string[] args) { GaduGaduClient gg = new GaduGaduClient(numer_gg, "tajne_haslo"); // wpisujemy oczywiście swoje dane gg.AddNotify(123456); // dodajemy osoby do listy kontaktów gg.AddNotify(654321); // możliwe również w trakcie połączenia gg.Logged += gg_Logged; gg.MessageReceived += gg_MessageReceived; gg.Connect(); // łączymy while (true) { gg.SendMessage(numer_odbiorcy, Console.ReadLine()); //wysyłamy wiadomość } } static void gg_Logged(object sender, EventArgs e) { Console.WriteLine("zalogowano"); } static void gg_MessageReceived(object sender, MessageEventArgs e) { Console.Write(e.Uin + ": " + e.Message); } } } UPDATE 1.1 21.04.2013 - dodano import / eksport listy kontaktów do pliku / na serwer w starym formacie (CSV) i nowym (XML) - dodano usługi HTTP (pobieranie obrazkowego tokenu, rejestracja, zmiana hasła, przypomnienie hasła) - dodano rozmowy konferencyjne - zmiana kodowania z ASCII na windows-1250 (tak jak oryginalny klient) - poprawione offsety przy wysyłaniu/odbieraniu wiadomości (zawsze był dopisany jeden krzaczek) - dodano synchronizację kontekstu. Każdy event mógł być wywołany w innym wątku. Teraz jeśli piszesz graficzną aplikację wystarczy dać kontekst do właściowści SyncContext. (gg.SyncContext = SynchronizationContext.Current, namespace System.Threading) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się