LibSip_MessageBodyTypes.ttcn 1.76 KB
Newer Older
/******************************************************************************/
// $Date: 2013-04-08 08:18:17 +0000 (Mo, 08 Apr 2013) $
// $Author: seka $
// $Rev: 8470 $
/******************************************************************************/
/
* This module is part of LibSipV2.
*/

module LibSip_MessageBodyTypes
{
  import from LibSip_SDPTypes all;
  import from LibSip_SimpleMsgSummaryTypes all;
  import from LibSip_XMLTypes all;
//  type charstring XmlBody;

  group MIMETypes {
  type union MIME_Encapsulated_Parts {
    SDP_Message   sdpMessageBody,
    XmlBody xmlBody                    // if there is XML body
    // XMLMessage  xmlMessage          // if there is XML message (with header and body)
  };

  type record MIME_Encapsulated_Part {
    charstring                content_type,
    charstring                content_disposition optional,
    MIME_Encapsulated_Parts   mime_encapsulated_part
  };

  type record MIME_Message {
    charstring boundary, // len:
    MimeEncapsulatedList mimeEncapsulatedList
  };

  type record of MIME_Encapsulated_Part MimeEncapsulatedList;

  } // group MIMETypes

  type union MessageBody {
    SDP_Message sdpMessageBody,     // if there is only SDP part
//      XMLMessage xmlMessage,          // if there is XML message (with header and body)
    XmlBody xmlBody,                // if there is XML body
    MIME_Message mimeMessageBody,   // if there is SDP and encapsulated ISUP part
    charstring sipfrag,             // if content-Type is message/sipfrag (cp. NOTIFY, cp TS124147 A.4.3.1.2)
    charstring textplain,           // if content type is text/plain (for testing long messages)
    SimpleMsgSummary simpleMsgSummary, // RFC 3842
    octetstring smsMessage          // encoded SMS message 3GPP 23.040, 24.011
  };


}