Age | Commit message (Collapse) | Author |
|
Change-Id: Ieaba759a0f69b45c4b8839cbed1fe757cdf190c5
|
|
Change-Id: I866676a1ec4a338dcfe089cbf0483e5e546ded85
|
|
This allows different accounts binding on different IP addresses,
such as one on IPv4 and another on IPv6.
Bug: 4169057
Change-Id: I0bb36669394c281330091673fa338adea8f782cd
|
|
Bug: 5616713
Change-Id: Iaf2e6878731d10d7f4f2a7cd8af71f4517780642
|
|
Bug: 5226511
Change-Id: I1283790581496b1ff4e583a8d9379cdc39f78c20
|
|
If the expiry time cannot be found in Contact header or Expires
header, use the default value of 3600 seconds, which is specified
in RFC 3261.
Change-Id: I2607a398b96743614b01713cfd9b28f40386fac1
|
|
There can be three expiry times in the same message header. We
choose the smaller value in Expires header and Contact header,
and then we obey the value defined in Min-Expires header. If
none of them is set, the default value is used.
Bug: 5178284
Change-Id: Ie9d4a48c93863e82e5197bb4a0db3f4fec56857c
|
|
Bug: 5159669
Change-Id: I029684334500d4d0db176783084c9b7d1db87e40
|
|
Handle REFER requests including REFER with Replaces header.
bug:4958680
Change-Id: I96df95097b78bed67ab8abd309a1e57a45c6bc2f
|
|
Only need to keep alive for caller in a newly established call.
Change-Id: I36f9d9499c806c8701e3b78555de399b00593be8
|
|
and use them to create the contact header when sending OK response for INVITE.
Bug: 3461707
Change-Id: I5b254618f4920cf10a1460631bcd336778f344ec
|
|
bug:3326873
Change-Id: Ie29d2c61b237fee2d8637f4ba3d293a22469cced
|
|
so that the callee can send signals (on-hold or bye) back to the caller.
Without the keepalive, the NAT port for the caller will be timed out during the
call. And the signals will be dropped by the NAT device.
Change-Id: I21848d73469045b2ed9e7281556ab184c594c362
|
|
bug:3326870
Change-Id: Idbfbe7e3cc6ba83874d42bfb7d149866f454e70a
|
|
Misc keepalive fixes including:
+ Restart NAT port timeout measurement when keepalive fails. The max interval
is set to the current keepalive interval.
+ When exception occurs during sending a keepalive, restarts registration.
+ When exception occurs during measurement, retry for a limited times before
giving up.
Change-Id: I7aa787a5ec7c4c9b4334aa1017371d9049b3520c
|
|
Reuse the new component in the original keepalive process and the NAT port
mapping timeout measurement process.
This is the foundation for fixing the following bug.
Bug: 3464181
Change-Id: If7e951c000503fa64843942ad062c4d853e20c8d
|
|
bug:458435
This will temporarily start a thread for answering calls, we are
going to add a handler thread to handle this soon.
Change-Id: I9079038d671e1b1631c6e663fc2c3de297d97428
|
|
Change-Id: Id5ea2fcfa0bcd45198e773a5842d39eacc8ae400
|
|
bug:3326867
Change-Id: Ic67dd7d4858f28224e4f01ad8b65bcd3a3c15f10
|
|
as the realm may be different from the domain.
Bug: 3283834
Change-Id: I64c9f0d6d626afdb397c5d378d30afa9d6a64ca9
|
|
SipURI returns port -1 when port is not present in the URI.
Don't call SipProfile.Builder.setPort() when that happens.
Bug: 3291248
Change-Id: I8e608cbc56ea82862df55fdba885f6a864db83ab
|
|
+ Also fix race between ending and changing (holding/unholding) a SIP call.
+ Remove an unused method.
Bug : 3128233
Change-Id: Ie18d8333a88f0d9906d54988243d909b58e07e4b
|
|
Bug: 3124788
Change-Id: Ia0a06f72336d1795515428eba0c9f875c32d13d1
|
|
Bug: 3116480
Change-Id: I748d63382ade250aed27ccb09ea68c76a433fd27
|
|
Reply BUSY HERE response so server may redirect the call to the voice mailbox.
http://b/issue?id=3103072
http://b/issue?id=3109479
Change-Id: I81f5dd59ad87298dd9dda87084538ee460eabba8
|
|
bug: http://b/3099715
Change-Id: I531048414f22c8edcd9c4f815c12a0bdd6347640
|
|
Set the thread pool size to one to fix the out-of-order packets
seen in sip service when the device is waken up from sleep.
bug:http://b/3099715
Change-Id: Ia169e3fde77488068c369e3345ecf6a6d8ddf792
|
|
+ Keep the wake lock for 500ms. (Some measurements on N1 indicate 160~180ms
needed to bring up InCallScreen but since INVITE doesn't come in frequently
we can be more generous just to be safe.)
+ Move MyWakeupLock out of SipService so SipSessionGroup can use it without
awkward inter-dependency with SipService.
+ Add acquire(int timeout) to be used to create the "timed" wake lock.
http://b/issue?id=3081828
Change-Id: Iffd1d78d1a5cae9f795252ada75310917095204d
|
|
+ Add MyWakeLock to maintain a global wake lock for multiple components.
+ Use a Set to store components that want to hold the lock.
+ When the first component enters the set, we grab the global wake lock.
+ When the set becomes empty, we release the global lock.
+ In places like no account being opened to receive calls, we reset the
wake lock just to be safe from possible leakage.
+ Make MyExecutor aware of the wake lock. It will grab the wake lock on
behalf of the task so that tasks don't need to worry about the lock.
+ Connectivity receiver is modified to be executed in MyExecutor.
+ WakeupTimer handler is already protected by AlarmManager's wake lock but
all the timeout handlers that register themselves to the WakeupTimer are
to be executed in MyExecutor to be protected by the wake lock.
+ Remove unnecessary code in the Keepalive and registration processes. Since
both processes are executed in MyExecutor submitted by the WakeupTimer (as
they are timeout handlers registered to the WakeupTimer), they don't need
to add themselves to MyExecutor explicitly in their run() callbacks.
+ Make the keepalive process wait for at most 3 seconds instead of forever for
server response. It could cause the wake lock to be held longer than necessary
and is a potential cause for ANR.
http://b/issue?id=3081828
Related bug:
http://b/issue?id=3087153
Change-Id: Idee0ddb837e67daa0d5092c012bb242bd7c18431
|
|
http://b/issue?id=3087256
Change-Id: I67df64105db7c1295649f1f3ce77f99025ce3d44
|
|
Add a retry count and give up after two attempts.
Also stop auto registration when server is unreachable.
And rename onError() to restartLater() for better readability.
http://b/issue?id=3066573
Change-Id: Icfa65c58546a1e2bf8e59e29584a3926c53c479b
|
|
Let SipSession return it when UnknownHostException is caught.
Add DisconnectCause.SERVER_UNREACHABLE in Connection and have SipPhone report
it when receiving SERVER_UNREACHABLE from SipSession.
http://b/issue?id=3061691
Change-Id: I944328ba3ee30c0a9386e89b5c4696d4d9bde000
|
|
+ Log error instead of crashing app process in SipManager's ListenerRelay.
+ Terminate dialog and transaction in SipSessionGroup.reset().
+ Remove redundant reset() in SipSessionGroup.
Change-Id: Ifbf29d2c9607ffe1a1a50b0c131ee3a4e81a0d0e
|
|
+ Fix keepalive timer event leak due to the race between stopping timer and
the async'ed timeout handler
+ SipSessionImpl: set state before handling an event to ensure we get correct
state when some error occurs during handling the event.
+ Fix potential NPE in SipManager.ListenerRelay.getUri().
Change-Id: I021ee34f83059fd4fbb64b30bea427a5462aa51b
|
|
The only exception is TRYING.
Also remove an unused import in SipSessionGroup.
http://b/issue?id=3021865
Change-Id: I160982b0c4b417362f1fb961217db90c3a585ce5
|
|
and fix how SipErrorCode.SERVER_ERROR is determinted from server response, not
from local exceptions.
http://b/issue?id=3041332
Change-Id: Idce67e29858d5c7573b98b7fa1fac074913d71d6
|
|
Companion CL: https://android-git/g/#change,70187
http://b/issue?id=2998069
Change-Id: I90923ac522ef363a4e04292f652d413c5a1526ad
|