protected MyAVSession(MySipStack sipStack, CallSession session, MediaType mediaType, InviteState callState)
: base(sipStack)
{
mSession = (session == null) ?
#if WINDOWS_PHONE
org.doubango.WindowsPhone.BackgroundProcessController.Instance.rtCallSessionNew(sipStack.WrappedStack)
#else
new CallSession(sipStack.WrappedStack)
#endif
: session;
base.mMediaType = mediaType;
this.mState = callState;
mMute = false;
// commons
base.init();
// SigComp
base.SigCompId = sipStack.SigCompId;
// 100rel
// mSession.set100rel(true); // See defaults
// T.140 callback
if ((mediaType & MediaType.T140) == MediaType.T140)
{
mT140Callback = new MyT140Callback(this);
// do not set the callback as it requires a media session manager (only available when session is connected)
}
/* 3GPP TS 24.173
*
* 5.1 IMS communication service identifier
* URN used to define the ICSI for the IMS Multimedia Telephony Communication Service: urn:urn-7:3gpp-service.ims.icsi.mmtel.
* The URN is registered at http://www.3gpp.com/Uniform-Resource-Name-URN-list.html.
* Summary of the URN: This URN indicates that the device supports the IMS Multimedia Telephony Communication Service.
*
* Contact: <sip:[email protected];gr=urn:uuid:xxx;comp=sigcomp>;+g.3gpp.icsi-ref="urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel"
* Accept-Contact: *;+g.3gpp.icsi-ref="urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel"
* P-Preferred-Service: urn:urn-7:3gpp-service.ims.icsi.mmtel
*/
mSession.addCaps("+g.3gpp.icsi-ref", "\"urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel\"");
mSession.addHeader("Accept-Contact", "*;+g.3gpp.icsi-ref=\"urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel\"");
mSession.addHeader("P-Preferred-Service", "urn:urn-7:3gpp-service.ims.icsi.mmtel");
}