I just wrote a P2P video chat similiar to the Cirrus example application on my web site. It works great, as long as both users manually open the ports required for RTMFP. Naturally this is a deal breaker for me - since no one will use it.
What is the standard solution in this case? Should I publish the instructions of how to open the ports on different firewalls? Should I write a small batch file to be downloaded that programmatically opens the ports? Is there a different (commercial) tool that allows me to bypass it in any other way?
Thanks!
What is the standard solution in this case?
There is no 'standard' solution.
Should I publish the instructions of how to open the ports on different firewalls?
That would solve the problem, but I doubt all your customers have the technical skills to do it. Some installation programs contain instructions to open port on a PC's firewall when installing a program. This could be what you are looking for.
But, there is another issue you will have no control over: what if your customer's device is located behind two NATs or behind a corporate firewall? There is no way the network administrators will let your customers fiddle with their NATs. You'll need to include them in the loop, which means red tape.
If you dig the problem deeper, you will get to understand that part of your issue (I mean beyond opening your ports) is called NAT traversal (or punching holes). You may want to read the chapter covering this topic in the Practical JXTA II book available online for reading at Scribd for a global picture.