Is it possible to connect FM go on my iPhone to the FM pro database on the server when the iPhone is not on the same network?
The server has a firewall and remote access is actually only possible though a VPN tunnel.
If not, what opportunities do I have to have a remote acces to the database without copying the file onto the smartphone, and to update the db as soon the iPhone is back in the same WLAN? Due to a slow VPN, installing the VPN on the smartphone is an undesirable option.
Thank you.
You can ask to open a specific port in the firewall (5003) and redirect to the FileMaker Server.
You can also try to remote on one of the local computers from the phone if it is allowed by firewall, but I think you will find using it a bit awkward.
The best option is to use VPN (which you don't want to), so may be it is worth investigating why it is slow. Is it generally slow or it is slow with FIleMaker only? You might have to optimise your system.
Related
IMPORTANT: I don’t need simultaneous transfers, I mean, I don’t need to transfer over WiFi while still transferring over 4G at the same time, I just want to be connected over Wifi to my Access Point, transfer some files and finally not having to turn off the WiFi for the iPhone to use 4G.
The problem:
As long as I’m connected to the Access Point (FlashAir technology), my iPhone doesn’t care to use 4G to reach out for internet, it is like it says: Oh, I have a WiFi connection I’ll direct all HTTP GET Requests over this network, which is bad for me as this Access Point is used to read/write files from/to it.
What I’ve done so far without success is the following two things:
Add the nogatewaymode=1 variable to the conf file of my FlashAir device which makes the iOS platform to know that this Access Point is not intended to provide internet, so, when I connect via WiFi to the FlashAir, the iPhone uses 4G to reach internet, which is cool, the problem here is that in this mode I cannot read/write files to the FlashAir device, which makes a useless WiFi connection.
Configure the FlashAir device to Internet Pass-Thru mode which allows it to behave as an Access Point and as Router basically, this requieres to add an APPMODE=6 to the conf file and also add a couple of variables to give a secondary or parent network (SSID and Pass). This actually works, but on a WiFi only scenario, I don’t have to switch between WiFi connections to get files from the Access Point and then upload them using internet as in the latter it just uses its secondary network to reach internet. The problem is that if we are away from the secondary network, you get the Access Point functionality but when trying to get internet the iPhone only cares to try to reach the internet over this WiFi connection which is not possible because we are away from the secondary network, and it just reports a No Internet Connection error, it doesn't even try to use 4G which is there ON all the time.
Some additional information is that I’m supporting iOS 8+, I’m using Obj-C for this project and I’m using AFNetworking to perform requests to either internet web services and the FlashAir device as is supports it, it has a built-in web server which listens for HTTP GET requests (cgi) with parameters.
Any ideas?
Thanks in advance
My app requires that the Flashair deliver a webpage to the phone using Wifi. That page requires internet (4G) to upload data from the Flashair to my site.
Flashair claimed it wasn't possible, this config works for me. That "NOGATEWAYMODE=1" is critical. And I have to access the Flashair via the browser using 192.168.0.1, you can't use the Netbios/Bonjour name.
[Vendor]
CIPATH=/SD_WLAN/WifiStatus.jpg
APPMODE=4
APPNETWORKKEY=********
VERSION=FA9CAW3AW3.00.01
CID=02544d535731364740d36e0a79010b01
PRODUCT=FlashAir
VENDOR=TOSHIBA
MASTERCODE=A1234567890Z
APPSSID=F751ENG4
APPNAME=F751ENG4
LOCK=1
WEBDAV=2
TIMEZONE=-28
DNSMODE=1
APPAUTOTIME=0
REDIRECT=1
NOGATEWAYMODE=1
I have a REST API on my dev machine. If an app is running on a real device, how do I connect?
At present, I am looking up the IP address of the machine on the local network and setting that as the domain in the app's Info.plist.
However, this is a nightmare because the IP address changes everywhere I go and sometimes it inexplicably won't connect.
Is there an easier way of doing this?
I've used OHHTTPStubs to deal fake data. At least now I can work on the UI without needing to be concerned with the network.
Is there any way to communicate between two devices or application with Browser of other devices without having Server in the middle?
If I explain, actually I want to share data between iPhone application and Browser of Desktop, I tried HTTPServer, & played with WebSocket too, but in these case this server plays an important role in between. So If somehow I exchange data between two peers like IP Address, Port number, Then Is it possible to communicate between those two devices using Wi-fi channel without having Server in Middle?
The Way, Right now I have implemented.
The way, I am looking for.
I recently came across http://www.freedomjs.org/ which is suppose to provide p2p functionality in the browser.
So I have an ejabberd (XMPP) server setup on my MacBook. Connects fine with Simulator, only intermittently on the device. The two times it hasn't connected were at cafes that had sign-on gateways for their Wi-Fi. I know nothing when it comes to networks, but I'm guessing this is a Firewall thing?
I'm supposing I can't get around the firewall without an elaborate workaround.
I've found that turning off Wi-Fi on both devices and turning on tethering so that both devices are communicating via data works. However, I'd rather not do this as my data plan is limited and I'd like to be freely internet-connected while I work.
Is there a way to setup XCode to have the phone use the USB connection to access the server on the MacBook? Or maybe some other way I'm not imagining?
Bluetooth doesn't work.
I don't believe that the problem is with some kind of firewall on the network…
Try using the local IP address instead of the hostname, It will change from network to network. To get it, you can open the network utility
In this case it would be [xmppStream setHostName:#"172.16.1.2"];
I have a situation where I would like to communicate between 2-4 devices over the 3G network (it should also work over WLAN, but 3G solution is critical).
Every device (except one) asks for a GPS-location every ~5 seconds, but when this process is cancelled by the user of that device, one device needs to be informed of this event.
I was thinking that one device could act as a server, and the rest as clients that should connect to the server. Is this possible over the 3G network?
I've also read about push-notifications, is this relevant here? Can you receive notifications without disturbing the user with a popups etc?
Are there other ways?
Basically I would like to use apple "standard" solutions (if there are any) before diving into eventual socket-programming or anything similar...
What I would like to avoid is to have a webserver or some similar "3rd-party" solution, because I don't want many users to simultaniously connect and "pull" from the same external server in a final solution...
UPDATE:
Basically my application will have thousands of users that will need to be informed if an even occurs. Also this happens simultanously ~5 second, what would be the best solution to reduce load and avoid spamming?
I was thinking that one device could act as a server, and the rest as
clients that should connect to the server. Is this possible over the
3G network?
It could work, but having a dedicated server would be a better choice
I've also read about push-notifications, is this relevant here? Can
you receive notifications without disturbing the user with a popups
etc?
In your case no, since you will need a server to communicate with apple
Basically I would like to use apple "standard" solutions (if there are
any) before diving into eventual socket-programming or anything
similar...
There are no standard solution, other than you should probably rethink about using a dedicated remote server for this
iPhones can't communicate directly with each other using 3G. You can access the internet through the 3G, but you can't do peer-to-peer as you are suggesting. If you were close enough, you could use bluetooth, but I expect you are too far away.
You would have no way of detecting the one device that acts as a server from the other devices. The IP address could (and probably would) change every time the device connects to a mobile data network. You would need a central server to co-ordinate all of the clients.
You have multiple questions, but I'll try to address as many of them as I can:
I was thinking that one device could act as a server, and the rest as
clients that should connect to the server. Is this possible over the
3G network?
No, you cannot run a server on a iPhone/iPad that is accessible over 3G without an external website acting as an intermediary. (You can run one that is accessible over Wi-Fi, but this does not solve your problem as stated.)
I've also read about push-notifications, is this relevant here? Can
you receive notifications without disturbing the user with a popups
etc?
Push requires you (or a third party contracted by you) to have a web server, so if you want a server-free solution it is not relevant here.
Are there other ways?
Over 3G you will, under the current Apple restrictions, always need an external server.
Basically I would like to use apple "standard" solutions (if there are any) before diving into eventual socket-programming or anything similar...
Diving won't help you here. Even using low-level socket programming you will not be able to run a server on an iPhone accessible over 3G without an external website to aid in establishing a connection.
You can try using GameCenter. The mechanism of network games in Game Center allows connect up to four players with no third-party solutions.