RTC Forums

Subscription => Support => Topic started by: Jose Carlos on May 05, 2012, 04:21:08 PM



Title: My first test doesn't connect outside my network
Post by: Jose Carlos on May 05, 2012, 04:21:08 PM


  Hi,

  I need to write an IOS application and I need to synchronize data between IOS app and a Win32 Server app. I think RTC is the best choice to achieve this.

  I did a very simple test, using a RTC demo, I only change to connect to my firebird database, it is working ok when the server is on my network, but when I try to connect over the internet, the client enter on the  RequestAborted  event.

 I double check the firewall, the server machine is a test one that are on DMZ, so it is reachable.

 
   
   This is the client code, it was the same as the demo, only changed the table
Code:
    RtcHttpClient1.ServerAddr    := AnsiString(eAddr.Text);
    RtcHttpClient1.ServerPort    := AnsiString(ePort.Text);
    RtcHttpClient1.Blocking      := xBlocking.IsChecked;
    RtcHttpClient1.MultiThreaded := xMultiThreaded.IsChecked;


    Label1.Text := 'Calling ' + RtcHttpClient1.sServerAddr + ' on ' + RtcHttpClient1.sServerPort;
    RtcClientModule1.Prepare('select');
    RtcClientModule1.Param.asText['table'] := 'especie';
    RtcClientModule1.Call(RtcResult1);




Any idea? 

On the server side, I put a message on every time a client connect, but when I am testing over the internet, It doesn't even connect.

If I am on my network I can see the connection and the results.

Thanks in advance,

Jose carlos.


Title: Re: My first test doesn't connect outside my network
Post by: D.Tkalcec (RTC) on May 06, 2012, 09:39:52 AM
Please check this FAQ topic (https://rtcforum.teppi.net/index.php?topic=683.0) and let me know if that fixes your problem.

Best Regards,
Danijel Tkalcec


Title: Re: My first test doesn't connect outside my network
Post by: Jose Carlos on May 07, 2012, 01:07:02 PM

  I tried to check this property "FixupRequest.RemovePrefix",but it doesn't work on my problem.

  I am using for testing, the RTC demos, and only win32 application client and server, before I test it on IOS device.

  I double check firewall ports, and the server is an AWS clound ( win 2008 server ), this server I use for test, and I have an application with a socket server using indy, it is listening on a specific port and it is working.

  So, I add RTC demo on this server and add it to the firewall exceptions rules to allow inbound/outbound connections but still not working.

  I am still trying to find out, but it should be very simple, just add the ports to the firewall.

 

 





Title: Re: My first test doesn't connect outside my network
Post by: D.Tkalcec (RTC) on May 07, 2012, 03:25:26 PM
If the Server is running on a non-standard Port, I would recommend changing the Server and the Client to use Port 80 (standard HTTP port) to see if that fixes the problem. The "FixupRequest.RepovePrefix" property should also be set to TRUE on the TRtcHttpServer component (Server side). If that doesn't solve the problem, then it's most likely an issue with your firewall, router or proxy.

Have you tried connecting to your Test Server using a Windows Client running over the Internet from another location and not directly from inside your LAN?

For connection tests, I would also recommend adding one TRtcDataProvider component to the TRtcHttpServer, and implement its events to accept the "/test" request and return a simple response with "<html><body>Working - OK</body></html>" (or something similar), so you can test Server connectivity using any Web Browser (IE, FireFox, Chrome on Windows / Safari on iPhone - for example).

Best Regards,
Danijel Tkalcec


Title: Re: My first test doesn't connect outside my network
Post by: Jose Carlos on May 08, 2012, 06:59:20 PM

 Hi,

 I got it working  ;)

 I am using the amazon AWS EC2, and yesterday I create a security group to allow HTTP connection on port 80 .

 So everything is fine, I just tested on the iPad and I got the table data there.

 I am new to RTC and IOS, so you will heard alot about me here.

 Thank you.

  Jose Carlos.