summaryrefslogtreecommitdiff
path: root/voip/java/com/android/server/sip/SipSessionGroup.java
AgeCommit message (Collapse)Author
2013-01-28Delete frameworks/base/voip use voip-common from frameworks/opt/net/voipWink Saville
Change-Id: Ieaba759a0f69b45c4b8839cbed1fe757cdf190c5
2013-01-22Add debug and some cleanupWink Saville
Change-Id: I866676a1ec4a338dcfe089cbf0483e5e546ded85
2012-04-04SIP: push the logic of finding local address down to SipSessionGroup.Chia-chi Yeh
This allows different accounts binding on different IP addresses, such as one on IPv4 and another on IPv6. Bug: 4169057 Change-Id: I0bb36669394c281330091673fa338adea8f782cd
2011-11-18SIP: turn off verbose logs.Chia-chi Yeh
Bug: 5616713 Change-Id: Iaf2e6878731d10d7f4f2a7cd8af71f4517780642
2011-09-13SIP: fix keep-alive measurement and increase the timeout.Chia-chi Yeh
Bug: 5226511 Change-Id: I1283790581496b1ff4e583a8d9379cdc39f78c20
2011-09-06SIP: avoid extreme small values in Min-Expires headers.Chia-chi Yeh
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
2011-08-30SIP: add the check for expiry time in Contact header.Chia-chi Yeh
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
2011-08-15Handle SIP authentication response for BYE.Hung-ying Tyan
Bug: 5159669 Change-Id: I029684334500d4d0db176783084c9b7d1db87e40
2011-07-13Add REFER handling.repo sync
Handle REFER requests including REFER with Replaces header. bug:4958680 Change-Id: I96df95097b78bed67ab8abd309a1e57a45c6bc2f
2011-07-01Do not keep alive for re-established call.Hung-ying Tyan
Only need to keep alive for caller in a newly established call. Change-Id: I36f9d9499c806c8701e3b78555de399b00593be8
2011-06-28Record external IP and port from SIP responsesHung-ying Tyan
and use them to create the contact header when sending OK response for INVITE. Bug: 3461707 Change-Id: I5b254618f4920cf10a1460631bcd336778f344ec
2011-06-28Support INVITE w/o SDP.repo sync
bug:3326873 Change-Id: Ie29d2c61b237fee2d8637f4ba3d293a22469cced
2011-06-27Start keepalive process for the caller of a SIP callHung-ying Tyan
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
2011-06-27Support Invite w/ Replaces request.repo sync
bug:3326870 Change-Id: Idbfbe7e3cc6ba83874d42bfb7d149866f454e70a
2011-06-24Restart NAT port timeout measurement when keepalive fails and other fixesHung-ying Tyan
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
2011-06-23Move the keepalive process to SipSessionImpl and make it reusable.Hung-ying Tyan
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
2011-06-13Fix the issue of onNetwork in UI thread.repo sync
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
2011-06-09Add KeepAlive Interval Measurement.Chung-yih Wang
Change-Id: Id5ea2fcfa0bcd45198e773a5842d39eacc8ae400
2011-01-12Merge "Add auth. username in SipProfile." from gingerbread.Chung-yih Wang
bug:3326867 Change-Id: Ic67dd7d4858f28224e4f01ad8b65bcd3a3c15f10
2010-12-17Remove SIP realm/domain checkHung-ying Tyan
as the realm may be different from the domain. Bug: 3283834 Change-Id: I64c9f0d6d626afdb397c5d378d30afa9d6a64ca9
2010-12-16Check port in create peer's SIP profile.Hung-ying Tyan
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
2010-12-01Fix race between ending and answering a SIP call.Hung-ying Tyan
+ Also fix race between ending and changing (holding/unholding) a SIP call. + Remove an unused method. Bug : 3128233 Change-Id: Ie18d8333a88f0d9906d54988243d909b58e07e4b
2010-11-30Do not suppress error feedback during a SIP call.Hung-ying Tyan
Bug: 3124788 Change-Id: Ia0a06f72336d1795515428eba0c9f875c32d13d1
2010-10-25Notify SipSessions before closing SIP stack.Hung-ying Tyan
Bug: 3116480 Change-Id: I748d63382ade250aed27ccb09ea68c76a433fd27
2010-10-19Handle dialing a SIP call to self.Hung-ying Tyan
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
2010-10-19Fix the incorrect environment variable name for the thread pool size.Chung-yih Wang
bug: http://b/3099715 Change-Id: I531048414f22c8edcd9c4f815c12a0bdd6347640
2010-10-18Set the thread pool size of NIST sip stack to one.Chung-yih Wang
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
2010-10-15SipService: add wake lock for incoming INVITE packets.Hung-ying Tyan
+ 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
2010-10-14SipService: add wake lock for multiple components.Hung-ying Tyan
+ 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
2010-10-12Fix SipSessionGroup from throwing ConcurrentModificationExceptionHung-ying Tyan
http://b/issue?id=3087256 Change-Id: I67df64105db7c1295649f1f3ce77f99025ce3d44
2010-10-07SIP: Fix busy authentication loop.Hung-ying Tyan
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
2010-10-05SIP: add SERVER_UNREACHABLE error code.Hung-ying Tyan
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
2010-10-04SIP: minor fixes.Hung-ying Tyan
+ 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
2010-09-30SIP: misc fixes.Hung-ying Tyan
+ 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
2010-09-29SIP: Feedback any provisional responses in addition to RINGHung-ying Tyan
The only exception is TRYING. Also remove an unused import in SipSessionGroup. http://b/issue?id=3021865 Change-Id: I160982b0c4b417362f1fb961217db90c3a585ce5
2010-09-28SIP: add DisconnectCause.SERVER_ERRORHung-ying Tyan
and fix how SipErrorCode.SERVER_ERROR is determinted from server response, not from local exceptions. http://b/issue?id=3041332 Change-Id: Idce67e29858d5c7573b98b7fa1fac074913d71d6
2010-09-28Move SipService out of SystemServer to phone process.Hung-ying Tyan
Companion CL: https://android-git/g/#change,70187 http://b/issue?id=2998069 Change-Id: I90923ac522ef363a4e04292f652d413c5a1526ad