package n9m // 3.4.1.3 type EventModelGetAlarmStatusInfoResponse struct { ErrorCode uint `json:"ERRORCODE"` ErrorCause string `json:"ERRORCAUSE"` StorageErrors []StorageErrorStatus `json:"ST"` AnotherStorageErrors []AnotherStorageErrorStatus `json:"VS"` VideoLossErrors []VideoLossErrorStatus `json:"VL"` GPSError GPSErrorStatus `json:"GFA"` GPSAntennaError GPSAntennaErrorStatus `json:"GPSS"` } // 3.4.1.4.21 type StorageErrorStatus struct { CameraCovered uint `json:"ISA"` ChannelBind uint `json:"LHC"` } // 3.4.1.4.4 type AnotherStorageErrorStatus struct { } // 3.4.1.4.5 type VideoLossErrorStatus struct { } // 3.4.1.4.44 type GPSErrorStatus struct { } // 3.4.1.4.46 type GPSAntennaErrorStatus struct { } // 3.4.1.5 // Alarm upload type SendAlarmInfoParameters struct { AlarmType AlarmType `json:"ALARMTYPE"` CommandType uint `json:"CMDTYPE"` AlarmUID uint `json:"ALARMUID"` NumberOfRestarts uint `json:"RUN"` AlarmLevel AlarmLevel `json:"ALARMAS"` AlarmCount uint `json:"ALARMCOUNT"` TriggerType TriggerType `json:"TRIGGERTYPE"` ContinueTime uint `json:"CONTINUETIME"` CurrentTime uint `json:"CURRENTTIME"` Language Language `json:"L"` GPSData GPSData `json:"P"` RealTimeUpload uint `json:"REAL"` InstructionSerial uint `json:"CMDNO"` } // 3.4.1.5 // Alarm upload type SendAlarmInfoResponse struct { ErrorCode uint `json:"ERRORCODE"` AlarmType AlarmType `json:"ALARMTYPE"` ErrorCause string `json:"ERRORCAUSE"` CommandType uint `json:"CMDTYPE"` AlarmUID uint `json:"ALARMUID"` NumberOfRestarts uint `json:"RUN"` InstructionSerial uint `json:"CMDNO"` } // 3.4.1.5.1 type SendAlarmInfoCameraParameters struct { SendAlarmInfoParameters Channel uint `json:"CHANNEL"` ChannelMask uint `json:"CHANNELMASK"` LCH []uint `json:"LCH"` Push uint `json:"PUSH"` AlarmName string `json:"ALARMNAME"` AlarmAbbreviation string `json:"SER"` } type AlarmType uint const ( AlarmTypeVideoLoss AlarmType = iota AlarmTypeCameraCovered AlarmTypeMotionDetection AlarmTypeStorageAbnormal AlarmTypeUserDefined AlarmTypeSentriesInspection AlarmTypeViolation AlarmTypeEmergency AlarmTypeSpeedAlarm AlarmTypeLowVoltage AlarmTypeOutOfFence = iota + 7 AlarmTypeAccAlarm AlarmTypePeripheralsDropped AlarmTypeStopAnnouncement AlarmTypeGpsAntenna AlarmTypeDayNightSwitch AlarmTypeProhibitDriving AlarmTypeSerialAlarm = iota + 15 AlarmTypeFatigueAlarm AlarmTypeTakeOutParking AlarmTypeGestureAlarm AlarmTypeGreenDriving AlarmTypeIllegalIgnition AlarmTypeIllegalShutdown AlarmTypeCustomExternal AlarmTypeThinkingLKJ AlarmTypeTAX3 AlarmTypeOilAlarm AlarmTypeBusLineOccupation AlarmTypeForgottenAlarm AlarmTypeSpecialCustomerFault AlarmTypeTemperatureAbnormal AlarmTypeTemperatureChangeAbnormal AlarmTypeSmokeAlarm AlarmTypeGBox AlarmTypeLicensePlateRecognition AlarmTypeAnotherSpeedAlarm AlarmTypeWirelessSignalAbnormal AlarmTypeArming AlarmTypePhoneCall AlarmTypeGPSFault AlarmTypeDSMFault AlarmTypeFireBox ) type AlarmLevel uint const ( AlarmLevelImportant AlarmLevel = iota AlarmLevelGeneral AlarmLevelEmergency ) type TriggerType uint const ( TriggerTypeManual TriggerType = iota TriggerTypeAutomatic ) type Language uint const ( LanguageSimplifiedChinese Language = iota LanguageEnglish LanguageKorean LanguageItalian LanguageGerman LanguageThai LanguageTurkey LanguagePortugal LanguageSpain LanguageRomania LanguageGreece LanguageFrench LanguageRussian LanguageDutch LanguageHebrew LanguageChineseTraditional ) type EventModelGetAlarmingResponse struct { CameraCoveredChannelMask uint `json:"VS_CH"` CameraCoveredAlarmMask uint `json:"VS_AT"` CameraCoveredStatusMask uint `json:"VS_AS"` VideoLossChannelMask uint `json:"VL_CH"` VideoLossAlarmMask uint `json:"VL_AT"` VideoLossStatusMask uint `json:"VL_AS"` } /* // main server util func (e *Package) ResponseAlarm(alarmType int64, alarmUID int64, cmdno int64, cmdtype int64, run int64, serial string, Sid string) { e.Payload = map[string]any{ "MODULE": "EVEM", "OPERATION": "SENDALARMINFO", "RESPONSE": map[string]any{ "ALARMTYPE": alarmType, "ALARMUID": alarmUID, "CMDNO": cmdno, "CMDTYPE": cmdtype, "ERRORCODE": 0, "RUN": run, }, "SESSION": Sid, } } */