Picproje Elektronik Sitesi

PROGRAMLAMA DİLLERİ => Diğer => Konuyu başlatan: berkay_91 - 10 Eylül 2019, 15:05:05

Başlık: Processing de UDP Haberleşme
Gönderen: berkay_91 - 10 Eylül 2019, 15:05:05
Merhaba, 2 farklı Laptopda UDP Protokolü ile Processing de çalışan programları Haberleştirmek istiyorum, server üzerinden klavyede bastığım karakterleri göndermeme rağmen Client ta gelen veri 'a' olduğunda if in içine girmiyor...


// Server
import hypermedia.net.*;

UDP udp;  // define the UDP object

void setup() {
  
udp = new UDPthis6000 );
  
udp.listentrue );
}


void draw() {
}

void keyPressed() {
    
    
String message  strkey );  
    
String ip       "192.168.0.105";  
    
int port        6000;    
    
    
udp.sendmessageipport );
}


//Client

import hypermedia.net.*;

UDP udp;  // define the UDP object

void setup() {

  
udp = new UDPthis6000 );
  
udp.listentrue );
  
size(400,400);
}

void draw() {
}

 
void receivebyte[] data ) {      
  
String message = new Stringdata );
  
  if(
message=="a")
    exit();
  
  
println"receive: " message);
}


(https://i.ibb.co/cCDmkz1/img.png) (https://ibb.co/cCDmkz1)
Başlık: Ynt: Processing de UDP Haberleşme
Gönderen: iboibo - 10 Eylül 2019, 18:38:11
Belki a nın yaında \r\n (enter) geliyor olabilir yada başka şey o nedenle stringin sadece ilk harfini kontrol et , yada gelen verirn tamamını tek tek kotrol et "a" varmı diye (udp olduğu için)
Başlık: Ynt: Processing de UDP Haberleşme
Gönderen: taydin - 10 Eylül 2019, 19:59:42
UDP protokolünde, gönderici hiçbir zaman verinin alıcıya ulaşıp ulaşmadığını tespit edemez. Nadir de olsa mutlaka veri kaybı olacaktır.

Sizin koddaki problem bu değil muhtemelen, ama yapacağınız haberleşme protokolünde bu durumu da gözününde bulundurmanız lazım.
Başlık: Ynt: Processing de UDP Haberleşme
Gönderen: SpeedyX - 10 Eylül 2019, 20:09:01
Çünkü String karşılaştırması == ile yapılmaz.

Şöyle yaparsan çalışır:
if (message.equals("a") == true)
Başlık: Ynt: Processing de UDP Haberleşme
Gönderen: berkay_91 - 10 Eylül 2019, 23:51:11
teşekkürler