I sell a Photon-based Wi-Fi Adapter for my pixel display, Game Frame. It allows my users to control every aspect of the display via exposed functions, but it also enables a browser backend running on the webserver library. Unfortunately, that library has never been bulletproof, and the web server tends to crash after a period of time (less than a day for most users). I’ve posted about this, but I don’t think the library will see improvements and it really doesn’t leverage the better strengths of the Particle hardware.
Instead, I’d like to develop a web site that lives on the Internet where users can login and perform all of the same actions, communicating with their Photon via TCP, using cloud functions/variables when handy.
Ideally, I’d just do this with exposed functions and events, but the amount of data I’d need to transmit from the Photon to the browser is easily over 1kB, and potentially 10x that. Is there a way to perform NAT traversal so the Photon can talk to a browser across the Internet, and then transmit 10kB of data?
In reverse, my users can currently upload files to SD via the web server, and I’d like to retain this functionality too. Years ago I somehow got multiple file uploads working with the web server, but I’d need to figure how to get that working directly over TCP. Any tips would be appreciated.