UDP

Übersicht BlitzBasic Allgemein

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen

 

Dreamora

BeitragFr, März 23, 2007 21:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Hast du ein statisches Portforwarding eingerichtet im Router und dafür gesorgt, dass der Server vom Router immer die gleiche IP erhält, damit das Forwarding überhaupt gehen kann?

Ein Server kann sich selbst den Port am Router nicht öffnen und andere können von aussen nicht auf dem Port reinsenden auf dem du raus sendest. (ausser man nutzt UPNP aber das ist bei den Router default ausgestellt wegen Sicherheitsgefahr), das muss schon anderweitig geschehen das die Nachrichten dynamisch durchgeleitet werden. Such auf Heise Mal, wie Skype das macht Smile (ist recht simpel und doch extrem mächtig)
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Tankbuster

BeitragFr, März 23, 2007 23:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
INT_IP(ipaddress$)

Diese Stelle im Code wäre dann aber total überflüssig Rolling Eyes
Twitter
Download Jewel Snake!
Windows|Android

Mathias-Kwiatkowski

BeitragSo, Apr 01, 2007 0:34
Antworten mit Zitat
Benutzer-Profile anzeigen
es geht ich habe es hinbekommen,

Server:

Code: [AUSKLAPPEN]
AppTitle "Blitz UDP Echo Server"

UDPTimeouts 1000

udp=CreateUDPStream( 2011 )
If Not udp RuntimeError "CreateUDPStream failed"

Print "Echo Server - "+DottedIP$( UDPStreamIP( udp ) )+":"+UDPStreamPort( udp )



Repeat
   ip=RecvUDPMsg( udp )
   If Eof( udp )<0 RuntimeError "RecvUDPMsg failed"
   If ip
      CopyStream udp,udp   
      SendUDPMsg udp,ip,UDPMsgPort(udp)   
   EndIf
   Delay 0
Forever


Client:

Code: [AUSKLAPPEN]
AppTitle "Blitz UDP Echo Client"

n = CountHostIPs("purechannel.ath.cx") 
host_ip = HostIP(1) 
ipaddress$ = DottedIP$(host_ip) 



UDPTimeouts 5000

udp=CreateUDPStream(  )
If Not udp RuntimeError "CreateUDPStream failed"

Print "Echo Client - "+DottedIP$( UDPStreamIP( udp ) )+":"+UDPStreamPort( udp )

WriteLine udp,"W"
   WriteInt udp,MilliSecs()
   SendUDPMsg udp,host_ip,2011

Repeat
   
   
   ip=RecvUDPMsg( udp )
   If Eof( udp )<0 RuntimeError "RecvUDPMsg failed"
   
   If ip
      t=MilliSecs()
      reply$=ReadLine$( udp )
      ms=t-ReadInt( udp )
      Print "Reply: "+reply$+" ("+ms+"ms)"
   Else
      Print "Timeout"
   EndIf
Forever


mein server ist nicht immer online, aber so kann man udp daten / playerpositionen ect. übers internet versenden.

ZaP

BeitragSo, Apr 01, 2007 9:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]

n = CountHostIPs("purechannel.ath.cx")
host_ip = HostIP(1)
ipaddress = int_ip(host_ip)



UDPTimeouts 5000

udp=CreateUDPStream(  )
If Not udp RuntimeError "CreateUDPStream failed"

Print "Echo Client - "+DottedIP$( UDPStreamIP( udp ) )+":"+UDPStreamPort( udp )
Repeat
   ip=RecvUDPMsg( udp )
   If Eof( udp )<0 RuntimeError "RecvUDPMsg failed"
   If ip
      ;CopyStream udp,udp   <- wieso das denn? o0
      SendUDPMsg udp,ipadress,UDPMsgPort(udp)   
   EndIf
   Delay 0
Forever


so ich denke das sollte gehen. Wer Fehler findet kann sie behalten <.<
Starfare: Worklog, Website (download)

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group