📄 megaco_session_internalizer.erl
字号:
evParList = Parms, eventAction = Actions}, State) -> #'SecondRequestedEvent'{pkgdName = tr_PkgdName(Name, State), streamID = tr_opt_StreamID(Id, State), eventAction = tr_opt_SecondRequestedActions(Actions, State), evParList = [tr_EventParameter(P, Name, State) || P <- Parms]}.tr_opt_SecondRequestedActions(#'MegacoMessage_OptSecondRequestedActions'{label = false}, State) -> asn1_NOVALUE;tr_opt_SecondRequestedActions(#'MegacoMessage_OptSecondRequestedActions'{label = true, value = Val}, State) -> tr_SecondRequestedActions(Val, State).tr_SecondRequestedActions(#'MegacoMessage_SecondRequestedActions'{keepActive = Keep, eventDM = DM, signalsDescriptor = SigDesc}, State) -> #'SecondRequestedActions'{keepActive = tr_opt_bool(Keep, State), eventDM = tr_opt_EventDM(DM, State), signalsDescriptor = tr_opt_SignalsDescriptor(SigDesc, State)}.tr_EventBufferDescriptor(EventSpecs, State) -> [tr_EventSpec(ES, State) || ES <- EventSpecs].tr_EventSpec(#'MegacoMessage_EventSpec'{name = Name, streamID = Id, eventParList = Parms}, State) -> #'EventSpec'{eventName = tr_EventName(Name, State), streamID = tr_opt_StreamID(Id, State), eventParList = [tr_EventParameter(P, Name, State) || P <- Parms]}.tr_opt_SignalsDescriptor(#'MegacoMessage_OptSignalsDescriptor'{label = false}, State) -> asn1_NOVALUE;tr_opt_SignalsDescriptor(#'MegacoMessage_OptSignalsDescriptor'{label = true, value = Val}, State) -> tr_SignalsDescriptor(Val, State).tr_SignalsDescriptor(SigDesc, State) -> [tr_SignalRequest(SigReq, State) || SigReq <- SigDesc].tr_SignalRequest(#'MegacoMessage_SignalRequestUnion'{label = Tag, value = Val}, State) -> case Tag of 'SignalRequestChoice_signal' -> {signal, tr_Signal(Val, State)}; 'SignalRequestChoice_seqSigList' -> {seqSigList, tr_SeqSigList(Val, State)} end.tr_SeqSigList(#'MegacoMessage_SeqSigList'{id = Id, signalList = SigList}, State) when list(SigList) -> #'SeqSigList'{id = Id, signalList = [tr_Signal(Sig, State) || Sig <- SigList]}.tr_Signal(#'MegacoMessage_Signal'{name = Name, streamID = Id, sigType = Type, duration = Dur, notifyCompletion = Compl, keepActive = Keep, sigParList = Parms}, State) -> #'Signal'{signalName = tr_SignalName(Name, State), streamID = tr_opt_StreamID(Id, State), sigType = tr_opt_SignalType(Type, State), duration = tr_opt_unsigned_short(Dur, State), notifyCompletion = tr_opt_NotifyCompletion(Compl, State), keepActive = tr_opt_bool(Keep, State), sigParList = [tr_SigParameter(P, Name, State) || P <- Parms]}.tr_opt_NotifyCompletion(#'MegacoMessage_OptNotifyCompletion'{label = false}, State) -> asn1_NOVALUE;tr_opt_NotifyCompletion(#'MegacoMessage_OptNotifyCompletion'{label = true, value = Val}, State) -> tr_NotifyCompletion(Val, State).tr_NotifyCompletion(Items, State) -> [tr_notifyCompletionItem(I, State) || I <- Items].tr_notifyCompletionItem(Item, State) -> case Item of 'NotifyCompletionBits_onTimeOut' -> onTimeOut; 'NotifyCompletionBits_onInterruptByEvent' -> onInterruptByEvent; 'NotifyCompletionBits_onInterruptByNewSignalDescr' -> onInterruptByNewSignalDescr; 'NotifyCompletionBits_otherReason' -> otherReason end.tr_opt_SignalType(#'MegacoMessage_OptSignalType'{label = false}, State) -> asn1_NOVALUE;tr_opt_SignalType(#'MegacoMessage_OptSignalType'{label = true, value = Val}, State) -> tr_SignalType(Val, State).tr_SignalType(Type, State) -> case Type of 'SignalType_brief' -> brief; 'SignalType_onOff' -> onOff; 'SignalType_timeOut' -> timeOut end.tr_SignalName(Name, State) -> tr_PkgdName(Name, State).tr_SigParameter(#'MegacoMessage_SigParameter'{sigParameterName = ParName, sigParameterValue = Value, extraInfo = Extra}, SigName, State) -> #'SigParameter'{sigParameterName = tr_Name(ParName, State), value = tr_Value(Value, State), extraInfo = tr_opt_extraInfo(Extra, State)}.tr_opt_RequestID(#'MegacoMessage_OptRequestID'{label = false}, State) -> asn1_NOVALUE;tr_opt_RequestID(#'MegacoMessage_OptRequestID'{label = true, value = Val}, State) -> tr_RequestID(Val, State).tr_RequestID(Id, State) -> Id.tr_ModemDescriptor(#'MegacoMessage_ModemDescriptor'{mtl = Types, mpl = Props}, State) when list(Types), list(Props) -> #'ModemDescriptor'{mtl = [tr_ModemType(T, State) || T <- Types], mpl = [tr_PropertyParm(P, State) || P <- Props]}.tr_ModemType(Type, State) -> case Type of 'ModemType_v18' -> v18; 'ModemType_v22' -> v22; 'ModemType_v22bis' -> v22bis; 'ModemType_v32' -> v32; 'ModemType_v32bis' -> v32bis; 'ModemType_v34' -> v34; 'ModemType_v90' -> v90; 'ModemType_v91' -> v91; 'ModemType_synchISDN' -> synchISDN end.tr_DigitMapDescriptor(#'MegacoMessage_DigitMapDescriptor'{digitMapName = Name, digitMapValue = Value}, State) -> #'DigitMapDescriptor'{digitMapName = tr_opt_DigitMapName(Name, State), digitMapValue = tr_opt_DigitMapValue(Value, State)}.tr_opt_DigitMapName(#'MegacoMessage_OptDigitMapName'{label = false}, State) -> asn1_NOVALUE;tr_opt_DigitMapName(#'MegacoMessage_OptDigitMapName'{label = true, value = Val}, State) -> tr_DigitMapName(Val, State).tr_DigitMapName(Name, State) -> tr_Name(Name, State).tr_opt_DigitMapValue(#'MegacoMessage_OptDigitMapValue'{label = false}, State) -> asn1_NOVALUE;tr_opt_DigitMapValue(#'MegacoMessage_OptDigitMapValue'{label = true, value = Val}, State) -> tr_DigitMapValue(Val, State).tr_DigitMapValue(#'MegacoMessage_DigitMapValue'{digitMapBody = Body, startTimer = Start, shortTimer = Short, longTimer = Long}, State) -> #'DigitMapValue'{startTimer = tr_opt_unsigned_short(Start, State), shortTimer = tr_opt_unsigned_short(Short, State), longTimer = tr_opt_unsigned_short(Long, State), digitMapBody = Body}.tr_ServiceChangeParm(#'MegacoMessage_ServiceChangeParm'{method = Method, address = Addr, version = Version, profile = Profile, reason = Reason, delay = Delay, mgcId = MgcId, timeStamp = Time}, State) -> #'ServiceChangeParm'{serviceChangeMethod = tr_ServiceChangeMethod(Method, State), serviceChangeAddress = tr_opt_ServiceChangeAddress(Addr, State), serviceChangeVersion = tr_opt_serviceChangeVersion(Version, State), serviceChangeProfile = tr_opt_ServiceChangeProfile(Profile, State), serviceChangeReason = tr_serviceChangeReason(Reason, State), serviceChangeDelay = tr_opt_unsigned_long(Delay, State), serviceChangeMgcId = tr_opt_serviceChangeMgcId(MgcId, State), timeStamp = tr_opt_TimeNotation(Time, State)}.tr_ServiceChangeMethod(Method, State) -> case Method of 'ServiceChangeMethod_failover' -> failover; 'ServiceChangeMethod_forced' -> forced; 'ServiceChangeMethod_graceful' -> graceful; 'ServiceChangeMethod_restart' -> restart; 'ServiceChangeMethod_disconnected' -> disconnected; 'ServiceChangeMethod_handOff' -> handOff end. %% BUGBUG: extensiontr_opt_ServiceChangeAddress(#'MegacoMessage_OptServiceChangeAddressUnion'{label = false}, State) -> asn1_NOVALUE;tr_opt_ServiceChangeAddress(#'MegacoMessage_OptServiceChangeAddressUnion'{label = Tag, value = Val}, State) -> tr_ServiceChangeAddress(Val, State).tr_ServiceChangeAddress(#'MegacoMessage_ServiceChangeAddressUnion'{label = Tag, value = Val}, State) -> case Tag of 'OptServiceChangeAddressChoice_portNumber' -> {portNumber, tr_portNumber(Val, State)}; 'OptServiceChangeAddressChoice_ip4Address' -> {ip4Address, tr_IP4Address(Val, State)}; 'OptServiceChangeAddressChoice_ip6Address' -> {ip6Address, tr_IP6Address(Val, State)}; 'OptServiceChangeAddressChoice_domainName' -> {domainName, tr_DomainName(Val, State)}; 'OptServiceChangeAddressChoice_deviceName' -> {deviceName, tr_PathName(Val, State)}; 'OptServiceChangeAddressChoice_mtpAddress' -> {mtpAddress, tr_mtpAddress(Val, State)} end.tr_opt_serviceChangeVersion(Version, State) -> tr_opt_unsigned_short(Version, State).tr_opt_ServiceChangeProfile(#'MegacoMessage_OptServiceChangeProfile'{label = false}, State) -> asn1_NOVALUE;tr_opt_ServiceChangeProfile(#'MegacoMessage_OptServiceChangeProfile'{label = true, value = Val}, State) -> tr_ServiceChangeProfile(Val, State).tr_ServiceChangeProfile(#'MegacoMessage_ServiceChangeProfile'{profileName = Name, version = Version}, State) -> #'ServiceChangeProfile'{profileName = tr_Name(Name, State), version = tr_version(Version, State)}.tr_serviceChangeReason(Reason, State) -> tr_Value(Reason, State).tr_opt_serviceChangeMgcId(#'MegacoMessage_OptMIdUnion'{label = false}, State) -> asn1_NOVALUE;tr_opt_serviceChangeMgcId(#'MegacoMessage_OptMIdUnion'{label = true, value = MgcId}, State) -> tr_MId(MgcId, State).tr_opt_unsigned_short(#'MegacoMessage_OptUnsignedShort'{label = false}, State) -> asn1_NOVALUE;tr_opt_unsigned_short(#'MegacoMessage_OptUnsignedShort'{label = true, value = Val}, State) -> Val.tr_opt_unsigned_long(#'MegacoMessage_OptUnsignedLong'{label = false}, State) -> asn1_NOVALUE;tr_opt_unsigned_long(#'MegacoMessage_OptUnsignedLong'{label = true, value = Val}, State) -> Val.tr_portNumber(Port, State) -> Port.tr_ServiceChangeResParm(#'MegacoMessage_ServiceChangeResParm'{mgcId = MgcId, address = Addr, version = Version, profile = Profile, timeStamp = Time}, State) -> #'ServiceChangeResParm'{serviceChangeMgcId = tr_opt_serviceChangeMgcId(MgcId, State), serviceChangeAddress = tr_opt_ServiceChangeAddress(Addr, State), serviceChangeVersion = tr_opt_serviceChangeVersion(Version, State), serviceChangeProfile = tr_opt_ServiceChangeProfile(Profile, State), timeStamp = tr_opt_TimeNotation(Time, State)}.tr_PackagesDescriptor(Items, State) -> [tr_PackagesItem(I, State) || I <- Items].tr_PackagesItem(#'MegacoMessage_PackagesItem'{packageName = Name, packageVersion = Version}, State) -> #'PackagesItem'{packageName = tr_Name(Name, State), packageVersion = Version}.tr_StatisticsDescriptor(Parms, State) -> [tr_StatisticsParameter(P, State) || P <- Parms].tr_StatisticsParameter(#'MegacoMessage_StatisticsParameter'{statName = Name, statValue = Value}, State) -> #'StatisticsParameter'{statName = tr_PkgdName(Name, State), statValue = tr_opt_Value(Value, State)}.tr_opt_TimeNotation(#'MegacoMessage_OptTimeNotation'{label = false}, State) -> asn1_NOVALUE;tr_opt_TimeNotation(#'MegacoMessage_OptTimeNotation'{label = true, value = Val}, State) -> tr_TimeNotation(Val, State).tr_TimeNotation(#'MegacoMessage_TimeNotation'{date = Date, time = Time}, State) -> #'TimeNotation'{date = Date, time = Time}.tr_opt_Value(#'MegacoMessage_OptValue'{label = false}, State) -> asn1_NOVALUE;tr_opt_Value(#'MegacoMessage_OptValue'{label = true, value = Value}, State) -> tr_Value(Value, State).tr_Value(Strings, State) -> Strings.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -