UDPClient wysyłanie i odbieranie.

0

Witam, w moje łapki wtargnął się program napisany w C++ ;-( (outcall-1.40), którego kilka rzeczy muszę zaimplementować w swojej aplikacji.

Program działa następująco:

  • komunikuje się przez port 5038 UDP z serwerem centralki VoIP (Asterisk)
  • wysyła komunikat aby się zalogować
  • centra wysyła do Clienta informacje, że numer XXX dzwoni po czym wyświetla się komunikat że XXX dzwoni do Ciebie.
// przykład wycięty w programy napisanego w C++
			packetString = "Action: Login\r\n";
			packetString += "AuthType: MD5\r\n";
			packetString += "Username: " + username + "\r\n";
			packetString += "Key: " + CString(buf) + "\r\n";
			packetString += "\r\n";

No i mam problem używam Indy10 :-O IdUDPClient łączę się z centralką na porcie 5038 OK ale jak chcę wysłać logowanie do centrali:

Logowanie    = 'Action: Login'#13#10'AuthType: MD5'#13#10'Username: 472'#13#10'Key: ef575e8837d065a1683c022d2077d342'#13#10#13#10;
;

Momentalnie mnie rozłącza. Nie wiem dlaczego. ... Ale problem ważniejszy czy UDPClient może odczytać komunikat jak zwróciła centrala ? Jeśli tak to w jaki sposób bo jakoś nie widzę metody Read;

Bardzo dziękuję za pomoc i podpowiedzi.

0
  1. Hm, niewiem nigdy nie używałem IdUDPClient'a ale jak na mój gust UDP jest protokołem bezpołączeniowym, i jako tako nie powinno isnieć pojęcie połączenia używając UDP no chyba że aplikacja załatwi sobie obsługę sesji.
  2. ale ma ReceiveBuffer i do tego trzy wersje

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