diff options
Diffstat (limited to 'epan/dissectors/asn1/qsig/QSIG-SMS.asn')
-rw-r--r-- | epan/dissectors/asn1/qsig/QSIG-SMS.asn | 339 |
1 files changed, 339 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/qsig/QSIG-SMS.asn b/epan/dissectors/asn1/qsig/QSIG-SMS.asn new file mode 100644 index 0000000000..543049493f --- /dev/null +++ b/epan/dissectors/asn1/qsig/QSIG-SMS.asn @@ -0,0 +1,339 @@ +-- QSIG-SMS.asn +-- +-- Taken from Ecma International +-- Standard ECMA-325, (June 2001) +-- http://www.ecma-international.org/publications/standards/Ecma-325.htm +-- + +Short-Message-Service-Operations-asn1-97 +{iso(1) identified-organization(3) icd-ecma(12) standard(0) qsig-short-message-service(325) short-message-service-operations-asn1-97(1)} + +DEFINITIONS::= +BEGIN +IMPORTS + OPERATION, + ERROR +FROM Remote-Operations-Information-Objects +{joint-iso-itu-t (2) remote-operations(4) informationObjects(5) version1(0)} + EXTENSION, Extension{} +FROM Manufacturer-specific-service-extension-class-asn1-97 +{iso(1) standard(0) pss1-generic-procedures(11582) msi-class-asn1-97(11)} + Name +FROM Name-Operations-asn1-97 +{iso(1) standard(0) pss1-name(13868) name-operations-asn1-97(1)} + supplementaryServiceInteractionNotAllowed +FROM General-Error-List +{ccitt recommendation q 950 general-error-list(1)} + PartyNumber +FROM Addressing-Data-Elements-asn1-97 +{iso(1) standard(0) pss1-generic-procedures(11582) addressing-data-elements-asn1-97(20)}; + +--TYPE DEFINITIONS FOR SMS OPERATIONS FOLLOW + +Sms-Operations OPERATION ::={ + + smsSubmit | smsDeliver | smsStatusReport | smsCommand | scAlert} + +smsSubmit OPERATION ::= { + -- sent from the Sending User PINX/ Sending User Message Centre to the Service Centre + ARGUMENT SmsSubmitArg + RESULT SmsSubmitRes + ERRORS {smsSubmitError | + unspecified} + CODE local:107} + +smsDeliver OPERATION ::= { + -- sent from the Service Centre to the Receiving User PINX or to the Receiving User Message Centre + ARGUMENT SmsDeliverArg + RESULT SmsDeliverRes + ERRORS {smsDeliverError | + unspecified} + CODE local:108} + +smsStatusReport OPERATION ::= { + -- sent from the Service Centre to the Sending User PINX or to the Sending User Message Centre + ARGUMENT SmsStatusReportArg + RESULT SmsStatusReportRes + ERRORS {smsStatusReportError | + unspecified} + CODE local:109} + +smsCommand OPERATION ::= { + -- sent from the Sending User PINX or the Sending User Message Centre to the Service Centre + ARGUMENT SmsCommandArg + RESULT SmsCommandRes + ERRORS {smsCommandError | + unspecified} + CODE local:110} + +scAlert OPERATION ::= { + -- sent from the Receiving User PINX or the Receiving User Message Centre to the Service Centre + ARGUMENT ScAlertArg + RESULT DummyRes + ERRORS {unspecified} + CODE local:111} + +--TYPE DEFINITIONS FOR SMS DATA TYPES FOLLOW + +SmsSubmitArg ::= SEQUENCE { + destinationAddress PartyNumber, + originatingAddress PartyNumber, + messageReference MessageReference, + smSubmitParameter SmSubmitParameter, + userData UserData, + smsExtension SmsExtension OPTIONAL} + +SmsSubmitRes ::= SEQUENCE { + serviceCentreTimeStamp ServiceCentreTimeStamp, + protocolIdentifier [3] IMPLICIT ProtocolIdentifier OPTIONAL, + userData [4] IMPLICIT UserData OPTIONAL, + smsExtension SmsExtension OPTIONAL} + +SmsDeliverArg ::= SEQUENCE { + originatingAddress PartyNumber, + destinationAddress PartyNumber, + originatingName Name OPTIONAL, + smDeliverParameter SmDeliverParameter, + userData UserData, + smsExtension SmsExtension OPTIONAL} + +SmsDeliverRes ::= SEQUENCE { + smsDeliverResponseChoice SmsDeliverResChoice, + smsExtension SmsExtension OPTIONAL} + +SmsStatusReportArg ::= SEQUENCE { + messageReference MessageReference, + serviceCentreTimeStamp ServiceCentreTimeStamp, + dischargeTime DischargeTime, + recipientAddress PartyNumber, + recipientName [10] Name OPTIONAL, + destinationAddress PartyNumber, + status Status, + priority [11] IMPLICIT BOOLEAN DEFAULT FALSE, + moreMessagesToSend [12] IMPLICIT BOOLEAN DEFAULT FALSE, + statusReportQualifier [13] IMPLICIT BOOLEAN DEFAULT FALSE, + protocolIdentifier ProtocolIdentifier OPTIONAL, + userData UserData OPTIONAL, + smsExtension SmsExtension OPTIONAL} + +SmsStatusReportRes ::= SEQUENCE { + smsStatusReportResponseChoice SmsStatusReportResponseChoice, + smsExtension SmsExtension OPTIONAL} + +SmsCommandArg ::= SEQUENCE { + destinationAddress PartyNumber, + messageReference MessageReference, + messageNumber MessageReference, + protocolIdentifier ProtocolIdentifier, + commandType CommandType, + commandData CommandData OPTIONAL, + statusReportRequest BOOLEAN OPTIONAL, + smsExtension SmsExtension OPTIONAL} + +SmsCommandRes ::= SEQUENCE { + serviceCentreTimeStamp ServiceCentreTimeStamp, + protocolIdentifier ProtocolIdentifier OPTIONAL, + userData UserData OPTIONAL, + smsExtension SmsExtension OPTIONAL} + +ScAlertArg ::= SEQUENCE { + originatingAddress PartyNumber, + smsExtension SmsExtension OPTIONAL} + +DummyRes ::= CHOICE{ + null NULL, + smsExtension SmsExtension} + +SmSubmitParameter ::= SEQUENCE { + protocolIdentifier ProtocolIdentifier, + validityPeriod ValidityPeriod OPTIONAL, + statusReportRequest [11] IMPLICIT BOOLEAN DEFAULT FALSE, + replyPath [12] IMPLICIT BOOLEAN DEFAULT FALSE, + rejectDuplicates [13] IMPLICIT BOOLEAN DEFAULT FALSE} + +SmDeliverParameter ::= SEQUENCE { + protocolIdentifier ProtocolIdentifier, + serviceCentreTimeStamp ServiceCentreTimeStamp, + priority [11] IMPLICIT BOOLEAN DEFAULT FALSE, + moreMessagesToSend [12] IMPLICIT BOOLEAN DEFAULT FALSE, + statusReportIndication [13] IMPLICIT BOOLEAN DEFAULT FALSE, + replyPath [14] IMPLICIT BOOLEAN DEFAULT FALSE} + +SmsDeliverResChoice ::= CHOICE { + null NULL, + protocolIdentifier ProtocolIdentifier, + userData [0] IMPLICIT UserData, + resChoiceSeq [1] IMPLICIT ResChoiceSeq} + +ResChoiceSeq ::= SEQUENCE { + protocolIdentifier ProtocolIdentifier, + userData UserData} + +SmsStatusReportResponseChoice ::= CHOICE { + null NULL, + protocolIdentifier ProtocolIdentifier, + userData [0] IMPLICIT UserData, + resChoiceSeq [1] IMPLICIT ResChoiceSeq} + +MessageReference ::= INTEGER(0..255) + +SmsExtension ::= CHOICE{ + single [1]IMPLICIT Extension{{SmsExtSet}}, + multiple [2]IMPLICIT SEQUENCE OF + Extension{{SmsExtSet}} + } + +SmsExtSet EXTENSION ::= {...} + +ProtocolIdentifier ::= INTEGER (0..127) + -- definition of the ProtocolIdentifier values and default value can be found in annex E section + -- E.1.2.1 + +ServiceCentreTimeStamp ::= GeneralizedTime(SIZE(12..19)) + -- this date and time representation follows ISO 8601 + +DischargeTime ::= GeneralizedTime(SIZE(12..19)) + -- this date and time representation follows ISO 8601 + +ValidityPeriod ::= CHOICE{ + validityPeriodRel [0] IMPLICIT ValidityPeriodRel, + validityPeriodAbs [1] IMPLICIT ValidityPeriodAbs, + validityPeriodEnh [2] IMPLICIT ValidityPeriodEnh} + +ValidityPeriodAbs ::= GeneralizedTime(SIZE(12..19)) + -- this date and time representation follows ISO 8601 + +ValidityPeriodRel ::= INTEGER(0..255) + -- the rules for the encoding of ValidityPeriodRel are shown in annex E section E.1.2.2 + +ValidityPeriodEnh ::= SEQUENCE{ + singleShotSM BOOLEAN DEFAULT FALSE, + enhancedVP EnhancedVP OPTIONAL} + +EnhancedVP ::= CHOICE{ + validityPeriodRel [0] IMPLICIT ValidityPeriodRel, + validityPeriodSec [1] IMPLICIT INTEGER(0..255), + validityPeriodSemi [2] IMPLICIT ValidityPeriodSemi} + +ValidityPeriodSemi ::= OCTET STRING (SIZE(3)) + -- Validity Period is relative in semi-octet representation, see ETSI TS 100 901, section 9.1.2.3 + -- and section 9.2.3.12.3 + +UserData ::= SEQUENCE{ + userDataHeader [0] IMPLICIT UserDataHeader OPTIONAL, + class [1] IMPLICIT INTEGER (0..3) OPTIONAL, + compressed [2] IMPLICIT BOOLEAN DEFAULT FALSE, + shortMessageText ShortMessageText} + +ShortMessageText ::= SEQUENCE{ + shortMessageTextType ShortMessageTextType, + shortMessageTextData ShortMessageTextData} + +ShortMessageTextType ::= INTEGER{ + iA5Coded (0), -- ShortMessageTextData shall contain data according to + octetCoded (1), -- the type given in ShortMessageTextType, for further + uniCoded (2), -- details see annex E. 1.3.4. + compressedCoded (3)} (0..8) + +ShortMessageTextData ::= OCTET STRING (SIZE(0..140)) + +Status ::= INTEGER (0..255) + -- definition of status values can be found in section E.7.6 in annex E + +CommandType ::= INTEGER{ + enquiry (0), + cancelSRR (1), + deletePreviouslySubmittedSM (2), + enableSRRrelatingToPreviouslySubmittedSM (3)} (0..255) + +CommandData ::= OCTET STRING (SIZE(0..157)) + +FailureCause ::= INTEGER (0..255) + -- definition for failureCause values can be found in section E.3.1 in annex E + +UserDataHeader ::= SEQUENCE OF UserDataHeaderChoice + +UserDataHeaderChoice ::= CHOICE{ + smscControlParameterHeader [0] IMPLICIT SmscControlParameterHeader, + concatenated8BitSMHeader [1] IMPLICIT Concatenated8BitSMHeader, + concatenated16BitSMHeader [2] IMPLICIT Concatenated16BitSMHeader, + applicationPort8BitHeader [3] IMPLICIT ApplicationPort8BitHeader, + applicationPort16BitHeader [4] IMPLICIT ApplicationPort16BitHeader, + dataHeaderSourceIndicator [5] IMPLICIT DataHeaderSourceIndicator, + wirelessControlHeader [6] IMPLICIT WirelessControlHeader, + genericUserValue [99] IMPLICIT GenericUserValue} + +SmscControlParameterHeader ::= BIT STRING { + sRforTransactionCompleted (0), + sRforPermanentError (1), + sRforTempErrorSCnotTrying (2), + sRforTempErrorSCstillTrying (3), + cancelSRRforConcatenatedSM (6), + includeOrigUDHintoSR (7)} (SIZE(8)) + +Concatenated8BitSMHeader ::= SEQUENCE{ + concatenated8BitSMReferenceNumber INTEGER(0..255), + maximumNumberOf8BitSMInConcatenatedSM INTEGER(0..255), + sequenceNumberOf8BitSM INTEGER(0..255)} + +Concatenated16BitSMHeader ::= SEQUENCE{ + concatenated16BitSMReferenceNumber INTEGER(0..65536), + maximumNumberOf16BitSMInConcatenatedSM INTEGER(0..255), + sequenceNumberOf16BitSM INTEGER(0..255)} + +ApplicationPort8BitHeader ::= SEQUENCE{ + destination8BitPort INTEGER(0..255), + originator8BitPort INTEGER(0..255)} + +ApplicationPort16BitHeader ::= SEQUENCE{ + destination16BitPort INTEGER(0..65536), + originator16BitPort INTEGER(0..65536)} + +DataHeaderSourceIndicator ::= INTEGER{ + originalSender (1), -- valid in case of Status Report + originalReceiver (2), -- valid in case of Status Report + sMSC (3)}(0..255) -- can occur in any message or report + +WirelessControlHeader ::= OCTET STRING + +GenericUserValue ::= SEQUENCE{ + parameterValue INTEGER(0..255), + genericUserData OCTET STRING} + +smsDeliverError ERROR ::= { + PARAMETER SEQUENCE{ + failureCause FailureCause, + protocolIdentifier [0] IMPLICIT ProtocolIdentifier OPTIONAL, + userData [1] IMPLICIT UserData OPTIONAL, + scAddressSaved [2] IMPLICIT BOOLEAN DEFAULT FALSE} + CODE local:1026} + +smsSubmitError ERROR ::= { + PARAMETER SEQUENCE{ + failureCause FailureCause, + serviceCentreTimeStamp ServiceCentreTimeStamp, + protocolIdentifier [0] IMPLICIT ProtocolIdentifier OPTIONAL, + userData [1] IMPLICIT UserData OPTIONAL} + CODE local:1027} + +smsStatusReportError ERROR ::= { + PARAMETER SEQUENCE{ + failureCause FailureCause, + protocolIdentifier [0] IMPLICIT ProtocolIdentifier OPTIONAL, + userData [1] IMPLICIT UserData OPTIONAL, + scAddressSaved [2] IMPLICIT BOOLEAN DEFAULT FALSE} + CODE local: 1028} + +smsCommandError ERROR ::= { + PARAMETER SEQUENCE{ + failureCause FailureCause, + serviceCentreTimeStamp ServiceCentreTimeStamp, + protocolIdentifier [0] IMPLICIT ProtocolIdentifier OPTIONAL, + userData [1] IMPLICIT UserData OPTIONAL} + CODE local:1029} + +unspecified ERROR ::= { + PARAMETER SmsExtension + CODE local: 1008} + +END -- of Short-Message-Service-Operations-asn1-97 |