Forum Replies Created
-
AuthorPosts
-
SamerKeymasterI know team viewer is smarter than a simple port forward and I assume the same for your other app. It seems to be an issue of using port forwarding or direct inbound connections.
You could use a relay such as Yaler although I have no experience to assist there. Also with Team Viewer you could remote in and use a local browser (until a long term solution is reached).
I will let you know if I think of anything else to help.
SamerKeymasterSo, your Verizon network may be blocking remote access. I did a google search and found this:
Remote access is not possible on the 4G LTE network. The NAT firewall has been designed to hide public IP addresses and ports necessary to support that functionality.
Please see the information and workarounds posted above.
Q. “Will static ip fix or it is just not supported?”
A. Yes. It will cost you a few hundred dollars for a static IP though.Source: https://community.verizonwireless.com/thread/798008
Can you access any other resource or is OpenSprinkler / mobile app the only thing giving you issues?
Update: For the record, Ray and I are working to improve this process and remove port forwarding completely.
SamerKeymasterIt sounds like you know what your doing so I will jump right to it.
Are you sure you are using the WAN IP address and not the local IP?
When you say you tried other ports, did you change the port on the device as well? As a suggestion, you can use port triggering instead of forwarding to change the port (router translates one port on the WAN IP to the device).
If you open your web browser, can you communicate with the OpenSprinkler directly? Example: http://wan_ip
Doing some research based on your comment it appears you are correct about Cox blocking ports. http://ww2.cox.com/residential/support/internet/article.cox?articleId=cacf82f0-6407-11df-ccef-000000000000
I would just use port triggering if your router offers it. If not, change the port on the device and change the port forwarding to 5000 for example. In the mobile app though you will have to specify the port by adding a “:5000” (without the quotes).
SamerKeymaster@nayr I did more testing and the username:password@host:port does in fact work. Can you explain your setup more? Is it the one described above? Which app are you using where?
Update: I think it is in fact SSL related since I have hardcoded http:// (because the app is served from file:// so relative path’s don’t work). I will see what I can do to remedy this.
SamerKeymasterI am sure you could setup email alerts for some of these issues.
SamerKeymasterI tracked down the bug in iOS 6 related to the display not adjusting to device rotation. This is a bug in PhoneGap and has been present since 1.9.0 with almost no progress. I tried some of the suggested fixes but none have helped. I understand the issue is related to the plist however currently I use the Build service to package my app since it’s easier. If issues like this keep coming up though I will just build locally.
In the meantime, the best I can suggest is update to iOS 7 if you can or bare with me while I attempt to get assistance from the PhoneGap Build team. Thanks!
SamerKeymasterThe JS mobile app has no authentication scheme. So no worries on that end
SamerKeymasterI found out why the username:password combination doesn’t work and will add that to the list of things to fix for the upcoming release. Thanks for the heads up!
SamerKeymasterJust to add onto the last solution offered. You can stack the HTTPS authentication with two factor methods. Google offers their 2factor authentication as a plugin for Apache: https://code.google.com/p/google-authenticator-apache-module/
It uses the basic auth input however the password is the 2 factor pass. Two make it truly 2 factor, the code goes after your password in the same input.
Also it would work with user:pass@host:port 🙂
SamerKeymasterI actually already do that against adverse weather codes. These can easily be extended within the PHP application. I will be honest with you though my focus has shifted towards the Javascript version of the app where I don’t get to run 24/7. These means working closer with the firmwares (interval program for OS and OSPi/Bo). The reason for this is introducing features in a mobile app that make essential decisions didn’t make sense. In the meantime, these features are slowly being incorporated to both firmwares as announced by Dan recently.
I guess I would love to help you with the modification, and as you said the code already has many portions setup for you but I don’t know if I want to merge more features into master. I will take it under advisement.
Also, good news: I am downloading the iOS 6 simulator now and should have a better idea soon into the rotation bug.
Thanks!
SamerKeymasterVery good point and I’m almost done packaging the interface for the SD card of the OS. The JS UI as you noticed can be served from anywhere.
Nice pictures forum wide by the way, thanks!
SamerKeymasterAh okay I don’t even know how to run a simulator in ios 6 since I have the newer SDK. I’ll play with it but you might be right about ios version being the issue. Thanks for the additional information.
Regardless I’ll try to find a way to address the issue.
SamerKeymasterI completely forgot to test for that. I’ll get an update out soon to handle that. Thanks!
Update: I’m checking this now and works fine on my iPhone 5S. Any particular page giving you issues?
SamerKeymasterThat is great news!
It’s kinda cool since the app is written in javascript. I use the native language (Objective-c, Java, and C#) to give me the wifi IP address. I check if that IP is considered a local IP. If so, I scan the /24 subnet on port 80 asking for /jo. If that IP replies with a JSON providing a firmware version than I consider it found. If the scan fails I retry the scan on port 8080 for OSPi.
SamerKeymasterThank you! I tried that and other gradients as well but I just didn’t like it overall, it’s basically one color. Especially on Android and Windows Phone 8 devices where the resolution is lower.
Update: I added another variant I tried as well. I do like your’s more. I noticed you resized the water droplets which looks a lot nicer. I am going to save this for now, thank you!
[attachment=0:13hbmaut]iTunesArtwork.png[/attachment:13hbmaut]
SamerKeymasterThis is what I used before I bought dedicated gear to handle my VPN access and allowed me to use the iOS native VPN feature. Basically, you setup a VPN server on your Pi and open the port for the VPN. Then you enter the VPN credentials on the client and you are good to go!
Below is a step by step guide for Ubuntu and tested on Debian. Pi is based off Debian so this should work fairly well although I haven’t tested on the specific Raspberry Pi distribution.
SamerKeymasterI think it’s fair to say the wife will appreciate the mobile app aspect of the OpenSprinkler. It’s quite easy to use and can even automatically find the OpenSprinkler on your network. This is a new feature and is currently available in the iOS and Google app stores.
SamerKeymasterFor anyone reading the last couple of posts and wondering what is going on, the mobile app project is taking some turns. I am focusing on making native apps for mobile devices (iOS, Android and Windows Phone 8) and also making a UI for the SD card of the OpenSprinkler. This allows a much more seamless integration between the two due to a direct communication (versus a proxy server to communicate).
Of course the PHP project has a few distinct advantages however those will slowly fade over time as the native mobile apps continue to gain feature support. Currently, the main advantage is logging. The native apps have no way to poll the OpenSprinkler 24/7 and generate log reports however this feature will soon be baked into the OS firmware allowing the OS to log to a file on the SD card. This file will eventually be used to bring graphical logs without the PHP application. Second, the PHP app offers SSL encryption and stronger user/pass authentication. This is being considered for the native mobile apps and hopefully will be incorporated in some extent. Of course, SSL cannot be offered on an underpowered Arduino however other methods to enhance security are available.
With all of those things said, once the native apps gain the features only found in the PHP code I will begin to convert the PHP app into more of a wrapper/proxy to convert 1.8.3-2.0.3 firmwares into newer 2.0.4+ replies. This allows the PHP users to benefit from the much improved UI of the native apps. Of course, when this is complete, upgrading the firmware would remove the need completely for the PHP app making it a tool for people who cannot upgrade. This is being done to move the code into one codebase. Right now the native apps and the PHP app are different enough that moving changes between the two is rather cumbersome.
Also, up until today the native apps only supported the Arduino version of the OpenSprinkler using firmware 2.0.4+ however Dan and Jonathan have worked very hard to revamp the plugin system on the OSPi python interval program and incorporated a mobile_api plugin allowing my native apps to work 100% with the OSPi. This plugin is complete however pending some further testing before being merged into the master branch. I have already submitted updated applications to the Google Play store (already live) and the Apple App store (pending review).
If I have created any confusion please feel free to ask. I will update this thread when OSPi interval program is updated with the new plugins and also when Apple App Store has accepted the new update. I have a lot of plans for these native apps that cannot be done from the webapp but the bulk of my efforts have gone into making the app experience as smooth as possible and I will build after the foundation is stable.
Thanks!
More information about the native apps: http://albahra.com/sprinklers
Update 1: Apple just approved the update and it should be reflected in the App Store within 24 hours.
Update 2: OSPi just got updated and includes the mobile_app.py plugin already. Please update to use with the native apps.
SamerKeymasterI jumped the gun on the documentation, I apologize. However the plugin is unreleased but is expected very soon. Furthermore, the iOS update of my app supporting OSPi is pending Apple approval.
Sorry for the confusion.
SamerKeymasterAre your valves DC or AC. I believe if they are DC it could prevent them from closing.
Sent from my Nexus 7 using Tapatalk
SamerKeymasterThank you for pointing this out. They only allow one project for a free account and I had two under a trial I wasn’t aware of. I will sort this out soon.
Update: This is a giant mess currently. I have emailed support requesting their assistance and will update here when everything is fixed. In the meantime, all translations are safe locally and on Github.
Update 2: I couldn’t find a reasonable way to recover the projects so I recreated them and hopefully fixed the original issue as well.
Sprinklers (native application for iOS and Android): http://www.getlocalization.com/Sprinklers/
OpenSprinkler-Controller (PHP webapp): http://www.getlocalization.com/OpenSprinkler/Sorry for the change of URLs and loss of metadata. However the trans
SamerKeymasterI went digging for a reason why there is confusion between the “OpenSprinkler-Hosted-Controller” and “OpenSprinkler-Controller”. I found the issue in the README.md in “OpenSprinkler-Hosted-Controller”. The zip file links to “OpenSprinkler-Controller” and I assume that is why you are getting PHP files from the hosted version.
Regardless, I have renamed things to help clear the confusion. Are you trying to run the PHP version which will give you the benefit of logging? Or are you trying to just grab the native app and get going without setting up Apache or any server?
Update: To be more complete with this answer, there is a lot of changing going on. At this very moment, there are many variants to my mobile application. The hosted version is available here: http://rayshobby.net/apps/sprinklers however this version is being phased out for the native applications (more information http://albahra.com/sprinklers). The PHP version, OpenSprinkler-Controller, is the version that was required for firmware 1.8.3-2.0.3 because no easy to parse method was available for a native mobile application. In addition, the PHP code polls the OpenSprinkler for its status every minute and lets you view the data graphically. If that is what you’re interested in let me know, otherwise the easier options are the native apps or fallback
SamerKeymasterSince your discussing port forwarding I assume you are referring to using the device outside the local network. If that’s the case you need to use the outside IP address. From within your home, you can find this out by going to http://wimi.com
With that said, I am not entirely sure that’s your issue. I also noticed you mentioned the Hosted-Controller. This distribution is for the native apps at this point (although you also mentioned main.php, which is not a part of the hosted controller).
Might need some more information to be able to assist further.
SamerKeymasterThe expansion board uses a cable that requires a specific orientation. I can’t help but wonder if that might be the problem.
SamerKeymaster@aleslesjak Absolutely, simply goto http://www.getlocalization.com/opensprinkler_mobile/ and select “Add new language” if one doesn’t already exist.
I typically check the site weekly and update the localization’s on Github however please feel free to post here if any major modifications have occurred and I will merge them.
Thanks!
-
AuthorPosts