vaaiibhav / sipdroid

Automatically exported from code.google.com/p/sipdroid
GNU General Public License v3.0
0 stars 0 forks source link

Sipdroid Won't Renew Registration Randomly #833

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Use Sipdroid to make a call, or change some settings, or just freshly 
start/restart Sipdroid.
2. While doing your daily work, keep an eye on the registration status, or 
better, watching the output of TcpDump.
3. Watch Sipdroid renew registration zero time, or once, or twice, or more, 
then stop renewing registration.

What is the expected output? 
Never miss a registration expiry. 

What version of the product are you using? On what device/operating system?
Sipdroid 2.0.1. HTC Hero CDMA stock 2.1, HTC Sapphire Cyanogenmod 6.1.

Which SIP server are you using? What happens with PBXes?
PBXes, Sipsorcery, Voxalot(Voxalot on WiFi only). 

Which type of network are you using?
WiFi, 3G

Please provide any additional information below.
If the phone is on WiFi, with TcpDump, you can actually watch Sipdroid keeps 
sending keepalive every 60 seconds and the server responds back accordingly 
while Sipdroid has missed the registration deadline and incoming calls won't 
ring.

Importing a new profile seems to make Sipdroid prone to this problem. However, 
sometimes a freshly started Sipdroid does not renew registration or renews only 
once. 

Original issue reported on code.google.com by jac...@gmail.com on 2 Feb 2011 at 5:04

GoogleCodeExporter commented 9 years ago
Forgot to include in the above: When Sipdroid misses the registration deadline, 
it still shows the green dot as "registered", but calls won't come in. I am now 
watching a freshly started Sipdroid, which received a call 20 minutes ago, but 
now missed the registration deadline, still shows two green dots. Incoming 
calls won't come in at this time. Tcpdump shows it sends keepalives to Voxalot 
and Sipsorcery servers and the servers respond immediately every 60 seconds 
precisely, repeatly, but the register agent is oversleeping somewhere and won't 
wake up.

Original comment by jac...@gmail.com on 2 Feb 2011 at 10:19

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
It doesn't matter which server to use. Sipdroid registered to PBXes.org does 
the same thing. Making a call, receiving a call, importing settings and other 
events all make Sipdroid forget to renew registration. The only sure thing is 
when the server closes the socket connection, Sipdroid will respond and renew. 

Original comment by jac...@gmail.com on 5 Feb 2011 at 2:36

GoogleCodeExporter commented 9 years ago
Fixed in v2.1. 

Original comment by jac...@gmail.com on 16 Feb 2011 at 4:15

GoogleCodeExporter commented 9 years ago

Original comment by pmerl...@googlemail.com on 16 Feb 2011 at 3:34

GoogleCodeExporter commented 9 years ago
Today I went out of the office and came back in an hour and then noticed 
Sipdroid began to forget renew registration. Data changed from wifi -> 3G -> 
wifi in the interim. No phone call. Looks like the bug was not cleaned out. As 
before, events that make Sipdroid registration status changed from green dot -> 
yellow(and maybe red?) dot -> green dot tend to make Sipdroid to forget renew 
registration. Phone calls now do not trigger registration refreshing so they 
did not trigger the bug yesterday in my quick test. My fault.

Original comment by jac...@gmail.com on 17 Feb 2011 at 1:49

GoogleCodeExporter commented 9 years ago

Original comment by pmerl...@googlemail.com on 17 Feb 2011 at 8:43

GoogleCodeExporter commented 9 years ago
I had this problem using csipsimple. They solved this problem by providing a 
setting for registration renewal.

Original comment by jwinsto...@gmail.com on 21 Feb 2011 at 5:34

GoogleCodeExporter commented 9 years ago
This issue does not seem to be the common issue of network timeout. The 
registration status somehow gets wrong record in certain circumstance which 
prevents the register agent from renewing registration. However, customizable 
keepalive/registration interval under different network conditions sure would 
be a welcomed feature. 

Original comment by jac...@gmail.com on 21 Feb 2011 at 6:28

GoogleCodeExporter commented 9 years ago
Just noticed two Sipdroids on both my two phones both lost registrations while 
still showing green dots. Both phones connect to 3G. One Sipdroid started 
yesterday using PBXes. One started several hours ago using Sipsorcery. No 
Sipdroid phone calls on both of them. Did not touch Sipdroid after they 
started. Gmail notifications come in without any delay at any random time. No 
task killing process running(never installed such program). 

Original comment by jac...@gmail.com on 23 Feb 2011 at 11:05

GoogleCodeExporter commented 9 years ago

Original comment by pmerl...@googlemail.com on 1 Mar 2011 at 11:20

GoogleCodeExporter commented 9 years ago

Original comment by pmerl...@googlemail.com on 25 Mar 2011 at 11:23

GoogleCodeExporter commented 9 years ago
Seems the problem is still there. I am watching exactly the same phenomenon 
right now that the Sipdroid is sending Keepalive every 60 seconds, the 
registration status dots are green, while Sipdroid has passed the 3600s expiry 
and lost registrations to both PBXes.org and Sipsorcery. 

Original comment by jac...@gmail.com on 29 Mar 2011 at 5:48

GoogleCodeExporter commented 9 years ago
This issue is not fixed, I'm having the same problem on my Samsung Vibrant, it 
will randomly forget to renew registration, no matter if it is 3g or Wifi. Its 
also unrelated to server because I have both Sipgate and PBXes setup and they 
both show green dots but still lose connection.

One thing I have noticed is that TCP will renew, but UDP accounts will not.
Sipdroid 2.2 betab
Samsung Vibrant Bionix Frost 2.2.1

Original comment by MatTaran...@gmail.com on 3 Apr 2011 at 7:55

GoogleCodeExporter commented 9 years ago
Hey, sorry to post again but I was wondering how I could use TcpDump to further 
diagnose my registration renewal problems, would you be able to let me know 
when you get a minute, jac?

Original comment by MatTaran...@gmail.com on 3 Apr 2011 at 8:00

GoogleCodeExporter commented 9 years ago
Here is a tutorial for using TcpDump on Android: 
http://prem-android.blogspot.com/2009/03/capture-packets-in-android-tcpdump.html

BTW, I always use SIP over TCP connection. Still losing registration. 

Original comment by jac...@gmail.com on 3 Apr 2011 at 8:15

GoogleCodeExporter commented 9 years ago

Original comment by pmerl...@googlemail.com on 5 Apr 2011 at 8:22

GoogleCodeExporter commented 9 years ago
Same problem here with HTC Desire HD phone, Sipdroid 2.2 beta.

Original comment by jvandenb...@gmail.com on 11 Apr 2011 at 12:33

GoogleCodeExporter commented 9 years ago
I have a similar problem.  I keep sipdroid open all the time on my Xoom 
(Android 3.2).  For a couple days everything seems OK.  I can receive calls.  I 
carry it around during the day, read mail, browse the web before bed.  Then, 
for some unknown reason it will no longer receive incoming calls.  It won't 
ring.  Today I was able to make outgoing calls, but nothing incoming rang (I 
tested with a spare cell phone).  I checked out pbxes.og verifying the accounts 
were properly configured (both accounts as I am using both in sipdroid).  I 
ensured the passwords were correct and that nothing had changed.  I tested 
incoming calls.  NOTHING would come in.  I then went into configure each sip 
line (in sipdroid) clicking on the account name.  When the box popped up I just 
selected OK.  I then clicked on the password and reentered it and clicked OK.  
At this point it rang and everything worked.  I tested the other line.  Same 
issue, same resolution.  

Sipdroid must be corrupting either the username or password (say, adding a 
space at the end of the account or password).  Something.  The resolution is to 
reentered both username and password for each account.

Original comment by fronttie...@gmail.com on 24 Aug 2011 at 1:15

GoogleCodeExporter commented 9 years ago
I noticed that this can happen if Sipdroid lies on SD card. When moving to 
internal memory the issue goes away.

Original comment by pmerl...@googlemail.com on 5 Dec 2011 at 10:38

GoogleCodeExporter commented 9 years ago
Interesting finding. In my case, I only installed Sipdroid to internal memory 
on phones and different Android versions I've tried. I did the experiment again 
with the latest 2.4 version and managed to reproduce and capture the issue with 
Sipsorcery.com. (Sipsorcery has a user panel that precisely shows the device 
registration status so I don't have to make incoming calls to verify my 
Sipdroid registration status.) Here is what I observed from TCPDump over wifi, 

1. Sipdroid kept sending keepalive every 60 seconds.
2. At the 3600s renewal moment, Sipdroid did not renew registration, but the 
green status dot stayed green.
3. Sipsorcery showed Sipdroid lost registration.
4. Sipdroid still kept sending keepalive every 60 seconds, green dot kept green.
5. 10 minutes later, Sipsorcery sent the packet to close the TCP connection.
6. Upon closing the TCP connection, Sipdroid started a new connection to 
register. 

So the issue seems to remain the same. At some point, the registration 
status/update logic flipped a bit somewhere and Sipdroid decided not to update 
registration. 

It's understandable that Sipdroid is geared for PBXes.org. However, adding some 
most basic features like registration interval or non-registration to make 
Sipdroid a full fledged SIP client might be a good idea for its name. My 2c.

Original comment by jac...@gmail.com on 9 Dec 2011 at 6:47

GoogleCodeExporter commented 9 years ago
I've been having the same issue for a long time. Green dots, I'm able to 
receive calls (I'm testing by calling myself from another phone). Some time 
later (20-30 minutes maybe) the green dots are still there, but I can no longer 
receive calls. 

My usual way of fixing this is to close sipdroid and start it again. Some times 
if I expect a call within a one hour time-frame, I have to keep restarting the 
app every 10 minutes to make sure it's still awake, otherwise I often miss 
calls without knowing.

Some times it seems to me that this is caused by moving to a room with less 
strong 3g signal (even if calls / internet would still work), after which point 
sipdroid will lose the registration but the dots will remain green. However 
this is not the only scenario, as often I am not moving in a location with good 
3g reception and it still occurs. 

I would like to investigate this further, I have some android development 
experience, but I'm not familiar with the sipdroid code yet.

Original comment by eir...@gmail.com on 10 Dec 2011 at 9:37

GoogleCodeExporter commented 9 years ago
Issue 1014 has been merged into this issue.

Original comment by pmerl...@googlemail.com on 2 Feb 2012 at 7:30

GoogleCodeExporter commented 9 years ago
Problem still occurs even in sipdroid version 2.4 on my htc Desire z (android 
2.3.3 or gingerbread).  I missed calls as the original poster, says after an 
hour.  Which is strange because if the developers know what's causing the 
problem as the original person (jac) points out who started the thread, then 
the developers should allow users the ability to change the keepalive settings. 
 Or just fix the app, when they get a chance, as this is a main problem for all 
users and disrupts the basic functionalities of sipdroid.

Original comment by ncassano...@gmail.com on 3 Mar 2012 at 6:53

GoogleCodeExporter commented 9 years ago
Having the same problems on HTC Wildfire.

Original comment by robsanto...@gmail.com on 4 Mar 2012 at 10:33

GoogleCodeExporter commented 9 years ago
this problem still exists on my Nexus S with stock 4.1.2. Green dot and missing 
calls left and right.

Original comment by Formula4...@gmail.com on 29 Aug 2013 at 11:07

GoogleCodeExporter commented 9 years ago
I still have the same problem with my Nexus 4 for 3G network (green dot, but 
actually lost registration). Wifi is ok. 

Original comment by davidnew...@gmail.com on 10 Jan 2014 at 8:28