The main purpose of the project (codename IMSDroid) is to exhibit doubango's features and to offer an IMS client to the open source community.
The current version of IMSDroid partially implements GSMA Rich Communication Suite release 3 and The One Voice profile V1.0.0 (LTE/4G, also known as GSMA VoLTE) specifications. Missing features will be implemented in the next releases. Stay tuned.
- SIP(RFC 3261, 3GPP TS 24.229 Rel-9)
- Signaling Compression, SigComp (RFC 3320, 3485, 4077, 4464, 4465, 4896, 5049, 5112 and 1951)
- Enhanced Address Book (XCAP storage, authorizations, presence, ...)
- Partial supports for GSMA Rich Communication Suite release 3
- Partial supports for One Voice Profile V1.0.0 (GSMA VoLTE)
- Partial supports for MMTel UNI (used by GSMA RCS and GSMA VoLTE)
- IMS-AKA registration (both AKA-v1 and AKA-v2), Digest MD5, Basic
- 3GPP Early IMS Security (3GPP TS 33.978)
- Proxy-CSCF discovery using DNS NAPTR+SRV
- Private extension headers for 3GPP
- Service Route discovery
- Subscription to reg event package (Honoring network initiated (re/de/un)-registration events)
- 3GPP SMS Over IP (3GPP TS 23.038, 24.040, 24.011, 24.341 and 24.451)
- Voice Call (AMR-NB, GSM, PCMA, PCMU, Speex-NB, iLBC)
- Video Call (H264, Theora, H.263, H.263-1998, H.261)
- DTMF (RFC 4733)
- QoS negotiation using Preconditions (RFC 3312, 4032 and 5027)
- SIP Session Timers (RFC 4028)
- Provisional Response Acknowledgments (PRACK)
- Communication Hold (3GPP TS 24.610)
- Message Waiting Indication (3GPP TS 24.606)
- Calling E.164 numbers by using ENUM protocol (RFC 3761)
- NAT Traversal using STUN2 (RFC 5389) with possibilities to automatically discover the server by using DNS SRV (TURN already implemented and ICE is under tests)
Many other features are supported by the underlying framework but not exposed to the user interface (in progress). For more information please refer to doubango website.
These features include: IPv6, OMA Large IM Message (MSRP), File Transfer (MSRP), Image Sharing (IR.79), Video Sharing (IR.74), TLS and IPSec Security Agreement (RFC 3329), Proxy-CSCF discovery using DHCPv4/v6, TURN, ...