We have a flex application to stream music and are experiencing a network problem when the router of a user renews it's ip.
When the application starts, a connection with our wowza server is made with the NetConnection.connect(url) method. This goes fine and we start to stream with a NetStream object. Everything works perfectly until the router of the user suddenly requests a new ip. This has to do with the policy of the ISP of the user: they renew the ip at least every 36 hours. The pc of the user is in a local network with the router.
When the ip of the router is renewed, the buffer in our application runs empty (we receive a NetStream.Buffer.Empty event on the stream). Note that we don't receive a NetConnection.Connect.Closed event on the connection.
When the buffer runs empty, we start a timer and if the buffer is still empty after 10 seconds, we close the connection with NetConnection.close(). Only after this method call, a NetConnection.Connect.Closed event is received on the Connection.
After the connection was closed, we try to set up a new connection with the NetConnection.connect(url) method (same url is used as with the initial connection). Now the strange thing happens: we get a NetConnection.Connect.Failed status. We retry to connect every 3 seconds or so. During 15 minutes, we keep on receiving the NetConnection.Connect.Failed status on every attempt to set up a connection. After this 15 minute period, the application suddenly can connect (we receive a Succes event).
This happens only with some of our users. All receive a NetConnection.Connect.Failed during 15 minutes. They can visit other sites during this period, so they have a valid internet connection. We are also receiving logging from those users at the time they can't connect after an ip change. It seems that only the connection to our streaming server can't be established.
I think something is cashed somewhere for 15 minutes.. anyone has any idea where to look?
All help very welcome, we are trying to solve this problem for 2 weeks and have no clue what can cause this.