I've been using Zoiper (over UDP) for a while now but due to a few (timing) problems, I've switched to TCP yesterday. It was working fine until early today when my zoiper went into a state that it was unable to register (register timeout 408).
Situation is as follows:
- Green zoiper tick is missing from notificationsbar in android.
- Zoiper shows "register timeout 408", no incoming calls possible. Asterisk "sip peers" command shows the extension as unreachable.
Debug:
-
I start a tcpdump which suggests that Zoiper sends a "tcp syn" to port 5060.
-
The server responds with a "tcp sync ack" and zoiper answers with a "tcp ack".
-
In the meanwhile, asterisk expects a REGISTER to occur, but after 30 seconds it still hasn't received a proper response and sends a "tcp fin" to zoiper.
It seems that in some situations, Zoiper keeps using the same port (in my debuglog port 56630) when sending the REGISTER to the server.
Here is a link to a zip containing some zoiper debuglogs as well as a tcpdump:
http://raspi.degendt.com/zoiper_debug_pcap.zip
In the end, the problem is solved if I exit Zoiper completely.