LibSip_MessageBodyTypes.ttcn 1.84 KB
Newer Older
tepelmann's avatar
tepelmann committed
/******************************************************************************
 *
 */
// $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
        }

        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
    }