MMS modules
The MMSPDU Module
MMSpdu ::= CHOICE { confirmed-RequestPDU [0] IMPLICIT Confirmed-RequestPDU, confirmed-ResponsePDU [1] IMPLICIT Confirmed-ResponsePDU, confirmed-ErrorPDU [2] IMPLICIT Confirmed-ErrorPDU, unconfirmed-PDU [3] IMPLICIT Unconfirmed-PDU, rejectPDU [4] IMPLICIT RejectPDU, cancel-RequestPDU [5] IMPLICIT Cancel-RequestPDU, cancel-ResponsePDU [6] IMPLICIT Cancel-ResponsePDU, cancel-ErrorPDU [7] IMPLICIT Cancel-ErrorPDU, initiate-RequestPDU [8] IMPLICIT Initiate-RequestPDU, initiate-ResponsePDU [9] IMPLICIT Initiate-ResponsePDU, initiate-ErrorPDU [10] IMPLICIT Initiate-ErrorPDU, conclude-RequestPDU [11] IMPLICIT Conclude-RequestPDU, conclude-ResponsePDU [12] IMPLICIT Conclude-ResponsePDU, conclude-ErrorPDU [13] IMPLICIT Conclude-ErrorPDU }
The ConfirmedServiceRequest Module
ConfirmedServiceRequest ::= CHOICE { status [0] IMPLICIT Status-Request, getNameList [1] IMPLICIT GetNameList-Request, identify [2] IMPLICIT Identify-Request, rename [3] IMPLICIT Rename-Request, read [4] IMPLICIT Read-Request, write [5] IMPLICIT Write-Request, getVariableAccessAttributes [6] GetVariableAccessAttributes-Request, defineNamedVariable [7] IMPLICIT DefineNamedVariable-Request, defineScatteredAccess [8] IMPLICIT DefineScatteredAccess-Request, getScatteredAccessAttributes [9] IMPLICIT GetScatteredAccessAttributes-Request, deleteVariableAccess [10] IMPLICIT DeleteVariableAccess-Request, defineNamedVariableList [11] IMPLICIT DefineNamedVariableList-Request, getNamedVariableListAttributes [12] IMPLICIT GetNamedVariableListAttributes-Request, deleteNamedVariableList [13] IMPLICIT DeleteNamedVariableList-Request, defineNamedType [14] IMPLICIT DefineNamedType-Request, getNamedTypeAttributes [15] IMPLICIT GetNamedTypeAttributes-Request, deleteNamedType [16] IMPLICIT DeleteNamedType-Request, input [17] IMPLICIT Input-Request, output [18] IMPLICIT Output-Request, takeControl [19] IMPLICIT TakeControl-Request, relinquishControl [20] IMPLICIT RelinquishControl-Request, defineSemaphore [21] IMPLICIT DefineSemaphore-Request, deleteSemaphore [22] IMPLICIT DeleteSemaphore-Request, reportSemaphoreStatus [23] IMPLICIT ReportSemaphoreStatus-Request, reportPoolSemaphoreStatus [24] IMPLICIT ReportPoolSemaphoreStatus-Request, reportSemaphoreEntryStatus [25] IMPLICIT ReportSemaphoreEntryStatus-Request, initiateDownloadSequence [26] IMPLICIT InitiateDownloadSequence-Request, downloadSegment [27] IMPLICIT DownloadSegment-Request, terminateDownloadSequence [28] IMPLICIT TerminateDownloadSequence-Request, initiateUploadSequence [29] IMPLICIT InitiateUploadSequence-Request, uploadSegment [30] IMPLICIT UploadSegment-Request, terminateUploadSequence [31] IMPLICIT TerminateUploadSequence-Request, requestDomainDownload [32] IMPLICIT RequestDomainDownload-Request, requestDomainUpload [33] IMPLICIT RequestDomainUpload-Request, loadDomainContent [34] IMPLICIT LoadDomainContent-Request, storeDomainContent [35] IMPLICIT StoreDomainContent-Request, deleteDomain [36] IMPLICIT DeleteDomain-Request, getDomainAttributes [37] IMPLICIT GetDomainAttributes-Request, createProgramInvocation [38] IMPLICIT CreateProgramInvocation-Request, deleteProgramInvocation [39] IMPLICIT DeleteProgramInvocation-Request, start [40] IMPLICIT Start-Request, stop [41] IMPLICIT Stop-Request, resume [42] IMPLICIT Resume-Request, reset [43] IMPLICIT Reset-Request, kill [44] IMPLICIT Kill-Request, getProgramInvocationAttributes [45] IMPLICIT GetProgramInvocationAttributes-Request, obtainFile [46] IMPLICIT ObtainFile-Request, defineEventCondition [47] IMPLICIT DefineEventCondition-Request, deleteEventCondition [48] DeleteEventCondition-Request, getEventConditionAttributes [49] GetEventConditionAttributes-Request, reportEventConditionStatus [50] ReportEventConditionStatus-Request, alterEventConditionMonitoring [51] IMPLICIT AlterEventConditionMonitoring-Request, triggerEvent [52] IMPLICIT TriggerEvent-Request, defineEventAction [53] IMPLICIT DefineEventAction-Request, deleteEventAction [54] DeleteEventAction-Request, getEventActionAttributes [55] GetEventActionAttributes-Request, reportEventActionStatus [56] ReportEventActionStatus-Request, defineEventEnrollment [57] IMPLICIT DefineEventEnrollment-Request, deleteEventEnrollment [58] DeleteEventEnrollment-Request, alterEventEnrollment [59] IMPLICIT AlterEventEnrollment-Request, reportEventEnrollmentStatus [60] ReportEventEnrollmentStatus-Request, getEventEnrollmentAttributes [61] IMPLICIT GetEventEnrollmentAttributes-Request, acknowledgeEventNotification [62] IMPLICIT AcknowledgeEventNotification-Request, getAlarmSummary [63] IMPLICIT GetAlarmSummary-Request, getAlarmEnrollmentSummary [64] IMPLICIT GetAlarmEnrollmentSummary-Request, readJournal [65] IMPLICIT ReadJournal-Request, writeJournal [66] IMPLICIT WriteJournal-Request, initializeJournal [67] IMPLICIT InitializeJournal-Request, reportJournalStatus [68] IMPLICIT ReportJournalStatus-Request, createJournal [69] IMPLICIT CreateJournal-Request, deleteJournal [70] IMPLICIT DeleteJournal-Request, getCapabilityList [71] IMPLICIT GetCapabilityList-Request, fileOpen [72] IMPLICIT FileOpen-Request, fileRead [73] IMPLICIT FileRead-Request, fileClose [74] IMPLICIT FileClose-Request, fileRename [75] IMPLICIT FileRename-Request, fileDelete [76] IMPLICIT FileDelete-Request, fileDirectory [77] IMPLICIT FileDirectory-Request, additionalService [78] AdditionalService-Request } ==The MMS Data Module==
Data ::= CHOICE { -- context tag 0 is reserved for AccessResult array [1] IMPLICIT SEQUENCE OF Data, structure [2] IMPLICIT SEQUENCE OF Data, boolean [3] IMPLICIT BOOLEAN, bit-string [4] IMPLICIT BIT STRING, integer [5] IMPLICIT INTEGER, unsigned [6] IMPLICIT INTEGER, floating-point [7] IMPLICIT FloatingPoint, real [8] IMPLICIT REAL, octet-string [9] IMPLICIT OCTET STRING, visible-string [10] IMPLICIT VisibleString, binary-time [12] IMPLICIT TimeOfDay, bcd [13] IMPLICIT INTEGER, booleanArray [14] IMPLICIT BIT STRING }
The MMS DataAccessError Module
DataAccessError ::= INTEGER { object-invalidated (0), hardware-fault (1), temporarly-unavailable (2), object-access-denied (3), object-undefined (4), invalid-address (5), type-unsupported (6), type-inconsistent (7), object-attribute-inconsistent (8), object-access-unsupported (9), object-non-existent (10) } ==The MMS initiate-Request/Response PDU==
MMS initiate-ResponsePDU localDetailCalling: 8187 proposedMaxServOutstandingCalling: 3 proposedMaxServOutstandingCalled: 3 proposedDataStructureNestingLevel: 127 mmsInitRequestDetail proposedVersionNumber: 1 Padding: 5 1... .... = str1: True .1.. .... = str2: True ..1. .... = vnam: True ...0 .... = valt: False .... 1... = vadr: True .... .0.. = vsca: False .... ..0. = tpy: False .... ...0 = vlid: False 0... .... = real: False ..0. .... = cei: False Padding: 3 servicesSupportedCalling: EC00183f0ff41003010090 1... .... = status: True .1.. .... = getNameList: True ..1. .... = identify: True ...0 .... = rename: False .... 1... = read: True .... .1.. = write: True .... ..0. = getVariableAccessAttributes: False .... ...0 = defineNamedVariable: False 0... .... = defineScatteredAccess: False .0.. .... = getScatteredAccessAttributes: False ..0. .... = deleteVariableAccess: False ...0 .... = defineNamedVariableList: False .... 0... = getNamedVariableListAttributes: False .... .0.. = deleteNamedVariableList: False .... ..0. = defineNamedType: False .... ...0 = getNamedTypeAttributes:False 0... .... = deleteNamedType: False .0.. .... = input: False ..0. .... = output: False ...1 .... = takeControl: True .... 1... = relinquishControl: True .... .0.. = defineSemaphore: False .... ..0. = deleteSemaphore: False .... ...0 = reportSemaphoreStatus: False 0... .... = reportPoolSemaphoreStatus: False .0.. .... = reportSemaphoreEntryStatus: False ..1. .... = initiateDownloadSequence: True ...1 .... = downloadSegment: True .... 1... = terminateDownloadSequence: True .... .1.. = initiateUploadSequence: True .... ..1. = uploadSegment: True .... ...1 = terminateUploadSequence: True 0... .... = requestDomainDownload: False .0.. .... = requestDomainUpload: False ..0. .... = loadDomainContent: False ...0 .... = storeDomainContent: False .... 1... = deleteDomain: True .... .1.. = getDomainAttributes: True .... ..1. = createProgramInvocation: True .... ...1 = deleteProgramInvocation: True 1... .... = start: True .1.. .... = stop: True ..1. .... = resume: True ...1 .... = reset: True .... 0... = kill: False .... .1.. = getDomainAttributes: True .... ..1. = obtainFile: True .... ...0 = defineEventCondition: False 0... .... = deleteEventCondition: False .0.. .... = getEventConditionAttributes: False ..0. .... = reportEventConditionStatus: False ...1 .... = alterEventConditionMonitoring: True .... 0... = triggerEvent: False .... .0.. = defineEventAction: False .... ..0. = deleteEventAction: False .... ...0 = getEventActionAttributes: False 0... .... = reportActionStatus: False .0.. .... = defineEventEnrollment: False ..0. .... = deleteEventEnrollment: False ...0 .... = alterEventEnrollment: False .... 0... = reportEventEnrollmentStatus: False .... .0.. = getEventEnrollmentAttributes: False .... ..1. = acknowledgeEventNotification: True .... ...1 = getAlarmSummary: True 0... .... = getAlarmEnrollmentSummary: False .0.. .... = readJournal: False ..0. .... = writeJournal: False ...0 .... = initializeJournal: False .... 0... = reportJournalStatus: False .... .0.. = createJournal: False .... ..0. = deleteJournal: False .... ...1 = getCapabilityList: True 1... .... = fileOpen: True .1.. .... = fileRead: True ..1. .... = fileClose: True ...1 .... = fileRename: True .... 1... = fileDelete: True .... .0.. = fileDirectory: False .... ..0. = unsolicitedStatus: False .... ...0 = informationReport: False 1... .... = eventNotification: False .0.. .... = attachToEventCondition: False ..0. .... = attachToSemaphore: False ...1 .... = conclude: False .... 0... = cancel: False