Problem z obsługą odebranych wiadomości

Odpowiedz Nowy wątek
2011-09-28 16:40
0

Witam. Mam do napisania bota gg w C# i zdecydowałem się użyć biblioteki sHGG.

  static void Main(string[] args1)
        {
            gg = new sHGG();
            gg.GGNumber = "xxxxxxxx";
            gg.GGPassword = "xxxxxxxxx";
            gg.GGStatus = GGStatusType.Available;
            gg.GGDescription = "Ala ma kota";
            gg.GGLogin(gg.GGGetActiveServer());
            gg.GGMessageReceive += new sHGG.GenericEventHandler<sHGG.MessageReceiveEventArgs>(ReceiveMessage);
         }
static void ReceiveMessage(object source, sHGG.MessageReceiveEventArgs e)
        {
            if (!gg.Users.Contains(e.Number)) gg.Users.Add(new GGUser(e.Number));
            String[] atributes = e.Message.Split(' ');
            String[] args = new string[0];
            if (atributes.Length==2) args = new string[] {atributes[1]};
            if (atributes.Length==3) args = new string[] {atributes[1], atributes[2]};
            gg.GGSendMessage(e.Number,Response(xxxxxxx,atributes[0],args));
        }

Metoda odbioru wiadomości ma za zadanie treść wiadomości podzielić używając spacji jako separatora, a następnie wrzucić odpowiednie parametry do funkcji:
static private String Response(int gg, String command, String[] arguments);
gdzie command jest pierwszym elementem tablicy powstałej przez splita, a reszta elementów jest podana w tablicy arguments.
Program, uruchamia się, status bota na gg się zmienia na dostępny i wszystko jest niby ok. Problem jest taki, że gdy napiszemy do niego polecenie z komunikatora tlen (np. pomoc) to poprawnie zwraca wynik (np. listę komend), ale gdy napiszemy do niego z każdego innego komunikatora (AQQ, GG) to zwracany jest wynik błędny ("Zła Komenda!"). A gdy spróbujemy pogadać z botem przez WebGG to wyłącza się zupełnie. Czy ktoś mógłby mi powiedzieć czemu jedna i ta sama wiadomość wysłana z tlena jest poprawnie odczytywana a wysłana z innych komunikatorów nie?

edytowany 1x, ostatnio: ZacharLDZ, 2011-09-28 16:41
No a sprawdzałeś z łaski swojej co dokładnie dostajesz jak napiszesz z innych komunikatorów? - stfu 2011-09-28 18:08

Pozostało 580 znaków

2011-09-29 11:29

Problem rozwiązany :D Każdy komunikator oprócz tlena dodawał do treści wiadomości jakieś niewidoczne znaczki na końcu (po znaku \0).

Czyli mój komentarz pomógł ;) - stfu 2011-09-29 20:36

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0