📄 83.sc
字号:
#iniparam string @ServNo
#function funcException
#function MAIN_PRO_INIT
#function MAIN_PRO_FEE
#function SMS_TAIL
#function main
#function PRO_MobileDownload
#function PRO_MobileDownload_RingModule
#function PRO_MobileDownload_GalleryModule
#function PRO_MobileDownload_CustomRingModule
#function PRO_MobileDownload_Download
#function SEND_VOICE
main
{
:stWait
Connect(0)->stInit
:stInit
[CALLFUNC &MAIN_PRO_INIT]
Returned(1)->DO_SMS_TAIL
Returned(0)->stExit
:DO_SMS_TAIL
[CALLFUNC &SMS_TAIL]
Returned->stSpecial
:stSpecial
[ OnCallCleared &funcException]//[ OnCallCleared &funerror ]
[ OnStopFlow &funcException]
->stFee
:stFee
[CALLFUNC &MAIN_PRO_FEE]
Returned(1)->stPro
Returned(0)->stExit
:stPro
[CALLFUNC &PRO_MobileDownload]
Returned->stExit
:stExit
[RETURN 0]
}
MAIN_PRO_INIT
{
:stWait
[Assign IR1,0]
->stAllocResource
:stAllocResource
[SetVoxFormat 8000,4]
[AllocMediaDevice 1]
AllocResourceOK -> SUCC
AllocResourceFail -> FAIL
TimeOut -> FAIL
:SUCC
[Assign IR1,1]
->stExit
:FAIL
[Assign IR1,0]
->stExit
:stExit
[RETURN IR1]
}
MAIN_PRO_FEE
{
:stWait
[Assign IR1,0]
[SETTELEBILL 1]
[ ClearDTMF ]
[ SetDTMF "?" ]
[ PlayFile ".\SOUND\fee.vox" ]
StopPlayBack -> stStartFee
DialTerminate -> stStartFee
Failed -> stStartFee
:stStartFee
[BillBegin 1,0,@ServNo]
Verify(0) -> SUCC
Verify(-1) -> stExit
:SUCC
[Assign IR1,1]
->stExit
:FAIL
[Assign IR1,0]
->stExit
:stExit
[RETURN IR1]
}
funcException
{
:stWait
connect -> stQuit
:stQuit
[BillEnd]
Verify -> stExit
:stExit
[Return 0]
}
SMS_TAIL
{
:stWait
[SwitchDBA 204]
Passed -> DO_LOAD_SMS
Failed -> stExit
:DO_LOAD_SMS
[ ASSIGN SR28,"SELECT Message FROM SMS_SEND WHERE ServiceNo='" ]
[ StrCat SR28,$CalledID ]
[ StrCat SR28,"' and COMMENT='TAIL'"]
[ ExecSQL SR28 ]
Passed -> DO_LOAD_SMS_RESULT
Failed(0) -> DO_LOAD_SMS_RESULT_NULL
TimeOut -> stExit
:DO_LOAD_SMS_RESULT
[ Assign SR9,FD0]
[ Assign IR9,1]
->DO_SMS_SEND
:DO_SMS_SEND
[Assign $SMSender, "0186922"]
[Assign $SMReceiver, $CallerID]
[Assign $SMContent, SR9]
[Assign $SMServiceCode, "CMCCTEST"]
[Assign $SMFeeCode,"00"]
[Assign $SMFeeType,"01"]
[Assign $SMCallType, 1]
[Assign $SMDeliver, 0]
[Assign $SMSubscribeType, 1]
[Assign $SMFormat, 15]
[Assign $SMPriority, 0]
[SendSMS]
Passed -> stExit
Failed -> stExit
TimeOut -> stExit
:DO_LOAD_SMS_RESULT_NULL
[ Assign IR9,0]
->stExit
:stExit
[RETURN 0]
}
SEND_VOICE
{
:stWait
[SwitchDBA 204]
Passed -> DO_INPUT_MOBILE_NUM
Failed -> stExit
:DO_INPUT_MOBILE_NUM
[ClearDTMF]
[SetDTMF "?"]
[PlayFile "..\GLOBAL\SEND_INPUT_MOBILE_NUM_ASK.vox"]
StopPlayBack -> DO_INPUT_MOBILE_NUM_GETKEY
DialTerminate -> DO_INPUT_MOBILE_NUM_GETKEY
Failed -> ERR_VOICE
:DO_INPUT_MOBILE_NUM_GETKEY
[SetDTMF "#"]
[Input 12,30]
StopDigits('#') -> DO_INPUT_MOBILE_NUM_RESULT
StopDigits -> DO_INPUT_MOBILE_NUM_RESULT
TimeOut -> DO_INPUT_MOBILE_NUM
:DO_INPUT_MOBILE_NUM_RESULT
[ParseParam SR0,1,"#"]
[Assign SR2,SR0] //SR2=受送者手机号
[StrLen SR2]
[Equal IR0,11]
Passed -> DO_INPUT_MOBILE_NUM_READ
Failed -> DO_INPUT_MOBILE_NUM_RESULT_ERR
:DO_INPUT_MOBILE_NUM_READ
[ClearDTMF]
[SetDTMF "?"]
[PlayFile "..\GLOBAL\SEND_INPUT_MOBILE_NUM_REPEAT.vox"]
StopPlayBack -> DO_INPUT_MOBILE_NUM_READ_NUM
DialTerminate -> DO_INPUT_MOBILE_NUM_READ_NUM
Failed -> DO_INPUT_MOBILE_NUM_READ_NUM
:DO_INPUT_MOBILE_NUM_READ_NUM
[ClrMixer]
[AddStrToMixer 3,SR2]
[PlayMixer]
StopPlayBack -> DO_INPUT_MOBILE_NUM_SURE_NUM
DialTerminate -> DO_INPUT_MOBILE_NUM_SURE_NUM
:DO_INPUT_MOBILE_NUM_SURE_NUM
[ClearDTMF]
[SetDTMF "?"]
[PlayFile "..\GLOBAL\SEND_INPUT_MOBILE_NUM_SURE.vox"]
StopPlayBack -> DO_INPUT_MOBILE_NUM_SURE_NUM_GETKEY
DialTerminate -> DO_INPUT_MOBILE_NUM_SURE_NUM_GETKEY
Failed -> DO_INPUT_DATE_TYPE
:DO_INPUT_MOBILE_NUM_SURE_NUM_GETKEY
[SetDTMF "12*0"]
[Digit 9]
StopDigits('1') -> DO_INPUT_DATE_TYPE
StopDigits('2') -> DO_INPUT_MOBILE_NUM
StopDigits('*') -> DO_SEND_FAIL
StopDigits('0') -> DO_SEND_FAIL
StopDigits -> DO_INPUT_MOBILE_NUM_READ
TimeOut -> DO_INPUT_MOBILE_NUM_READ
:DO_INPUT_MOBILE_NUM_RESULT_ERR
[ClearDTMF]
[SetDTMF "?"]
[PlayFile "..\GLOBAL\SEND_INPUT_MOBILE_NUM_ERR.vox"]
StopPlayBack -> DO_INPUT_MOBILE_NUM
DialTerminate -> DO_INPUT_MOBILE_NUM
Failed -> DO_INPUT_MOBILE_NUM
:DO_INPUT_DATE_TYPE
[ClearDTMF]
[SetDTMF "?"]
[PlayFile "..\GLOBAL\INPUT_DATE_TYPE_ASK.vox"]
StopPlayBack -> DO_INPUT_DATE_TYPE_GETKEY
DialTerminate -> DO_INPUT_DATE_TYPE_GETKEY
Failed -> ERR_VOICE
:DO_INPUT_DATE_TYPE_GETKEY
[SetDTMF "#"]
[Input 9,30]
StopDigits('#') -> DO_INPUT_DATE_TYPE_RESULT
StopDigits -> DO_INPUT_DATE_TYPE
TimeOut -> DO_INPUT_DATE_TYPE
:DO_INPUT_DATE_TYPE_RESULT
[ParseParam SR0,1,"#"]
[Assign SR3,SR0] //SR3=点送日期
[StrLen SR3]
[Equal IR0,8]
Passed -> DO_INPUT_TIME
Failed -> DO_INPUT_DATE_TYPE_RESULT_1
:DO_INPUT_DATE_TYPE_RESULT_1
[Equal IR0,0]
Passed -> DO_GET_SYSTEM_DATETIME_START
Failed -> DO_INPUT_DATE_TYPE
:DO_INPUT_TIME
[ClearDTMF]
[SetDTMF "?"]
[PlayFile "..\GLOBAL\INPUT_TIME_ASK.vox"]
StopPlayBack -> DO_INPUT_TIME_GETKEY
DialTerminate -> DO_INPUT_TIME_GETKEY
Failed -> ERR_VOICE
:DO_INPUT_TIME_GETKEY
[SetDTMF "#"]
[Input 5,30]
StopDigits('#') -> DO_INPUT_TIME_RESULT
StopDigits -> DO_INPUT_DATE_TYPE
TimeOut -> DO_INPUT_DATE_TYPE
:DO_INPUT_TIME_RESULT
[ParseParam SR0,1,"#"]
[Assign SR4,SR0] //SR3=点送时间
[StrLen SR4]
[Equal IR0,4]
Passed -> DO_DEAL_DATETIME_START
Failed -> DO_INPUT_TIME
:DO_DEAL_DATETIME_START
[Assign SR5,SR0]
[StrSub SR3,1,4]
[StrCat SR5,SR0] //YYYY
[StrCat SR5,"-"]
[StrSub SR3,5,6]
[StrCat SR5,SR0] //MM
[StrCat SR5,"-"]
[StrSub SR3,7,8]
[StrCat SR5,SR0] //DD
[StrCat SR5," "]
[StrSub SR4,1,2]
[StrCat SR5,SR0] //hh
[StrCat SR5,":"]
[StrSub SR4,3,4]
[StrCat SR5,SR0] //mm
->DO_DEAL_DATETIME_END
:DO_DEAL_DATETIME_END
[Assign SR5,SR0]
[StrSub SR3,1,4]
[STOI SR0]
[ADD IR0,1]
[ITOS IR0]
[StrCat SR6,SR0] //YYYY
[StrCat SR6,"-"]
[StrSub SR3,5,6]
[StrCat SR6,SR0] //MM
[StrCat SR6,"-"]
[StrSub SR3,7,8]
[StrCat SR6,SR0] //DD
[StrCat SR6," "]
[StrSub SR4,1,2]
[StrCat SR6,SR0] //hh
[StrCat SR6,":"]
[StrSub SR4,3,4]
[StrCat SR6,SR0] //mm
->DO_SEND_READY
:DO_GET_SYSTEM_DATETIME_START
[NOWTIME]
[Assign SR3,SR0]
[TimeAdd IR0,1,1] //服务开始时间延后1分钟
[Assign IR3,IR0] //服务开始时间
[TimeAdd IR0,4,1] //服务结束时间延后1天
[Assign IR4,IR0] //服务结束时间
[TimePart IR3,6] //年
[IToS IR0]
[Assign SR3,SR0]
[StrCat SR3,"-"]
[TimePart IR3,5] //月
[IToS IR0]
[STRLEN SR0]
[EQUAL IR0,2]
Passed -> YYYY_MM
Failed -> YYYY_0M
:YYYY_0M
[ASSIGN SR1,"0"]
[STRCAT SR1,SR0]
[ASSIGN SR0,SR1]
-> YYYY_MM
:YYYY_MM
[StrCat SR3,SR0]
[StrCat SR3,"-"]
[TimePart IR3,4] //日
[IToS IR0]
[STRLEN SR0]
[EQUAL IR0,2]
Passed -> YYYY_MM_DD
Failed -> YYYY_MM_0D
:YYYY_MM_0D
[ASSIGN SR1,"0"]
[STRCAT SR1,SR0]
[ASSIGN SR0,SR1]
-> YYYY_MM_DD
:YYYY_MM_DD
[StrCat SR3,SR0]
[StrCat SR3," "] //SR9="YYYY-MM-DD "
[TimePart IR3,3] //时
[IToS IR0]
[STRLEN SR0]
[EQUAL IR0,2]
Passed -> YYYY_MM_DD_hh
Failed -> YYYY_MM_DD_0h
:YYYY_MM_DD_0h
[ASSIGN SR1,"0"]
[STRCAT SR1,SR0]
[ASSIGN SR0,SR1]
-> YYYY_MM_DD_hh
:YYYY_MM_DD_hh
[StrCat SR3,SR0]
[StrCat SR3,":"]
[TimePart IR3,2] //分
[IToS IR0]
[STRLEN SR0]
[EQUAL IR0,2]
Passed -> YYYY_MM_DD_hh_mm
Failed -> YYYY_MM_DD_hh_0m
:YYYY_MM_DD_hh_0m
[ASSIGN SR1,"0"]
[STRCAT SR1,SR0]
[ASSIGN SR0,SR1]
-> YYYY_MM_DD_hh_mm
:YYYY_MM_DD_hh_mm
[StrCat SR3,SR0]
[StrCat SR3,":"]
[StrCat SR3,"00"]
//---------------------------------------------------------
[TimePart IR4,6] //年
[IToS IR0]
[Assign SR4,SR0]
[StrCat SR4,"-"]
[TimePart IR4,5] //月
[IToS IR0]
[STRLEN SR0]
[EQUAL IR0,2]
Passed -> YYYY_MM_e
Failed -> YYYY_0M_e
:YYYY_0M_e
[ASSIGN SR1,"0"]
[STRCAT SR1,SR0]
[ASSIGN SR0,SR1]
-> YYYY_MM_e
:YYYY_MM_e
[StrCat SR4,SR0]
[StrCat SR4,"-"]
[TimePart IR4,4] //日
[IToS IR0]
[STRLEN SR0]
[EQUAL IR0,2]
Passed -> YYYY_MM_DD_e
Failed -> YYYY_MM_0D_e
:YYYY_MM_0D_e
[ASSIGN SR1,"0"]
[STRCAT SR1,SR0]
[ASSIGN SR0,SR1]
-> YYYY_MM_DD_e
:YYYY_MM_DD_e
[StrCat SR4,SR0]
[StrCat SR4," "] //SR9="YYYY-MM-DD "
[TimePart IR4,3] //时
[IToS IR0]
[STRLEN SR0]
[EQUAL IR0,2]
Passed -> YYYY_MM_DD_hh_e
Failed -> YYYY_MM_DD_0h_e
:YYYY_MM_DD_0h_e
[ASSIGN SR1,"0"]
[STRCAT SR1,SR0]
[ASSIGN SR0,SR1]
-> YYYY_MM_DD_hh_e
:YYYY_MM_DD_hh_e
[StrCat SR4,SR0]
[StrCat SR4,":"]
[TimePart IR4,2] //分
[IToS IR0]
[STRLEN SR0]
[EQUAL IR0,2]
Passed -> YYYY_MM_DD_hh_mm_e
Failed -> YYYY_MM_DD_hh_0m_e
:YYYY_MM_DD_hh_0m_e
[ASSIGN SR1,"0"]
[STRCAT SR1,SR0]
[ASSIGN SR0,SR1]
-> YYYY_MM_DD_hh_mm_e
:YYYY_MM_DD_hh_mm_e
[StrCat SR4,SR0] //分
[StrCat SR4,":"]
[StrCat SR4,"00"]
->DO_SEND_READY
:DO_SEND_READY
[Assign SR5,SR3] //点送开始时间
[Assign SR6,SR4] //点送结束时间
[Assign SR8,"0"] //点送外地
[StrCat SR8,SR2] //被点人
[Assign SR5,$CALLERID] //点送人
[StrCat SR5,"|"]
[StrCat SR5,SR2] //被点人
[StrCat SR5,"|"]
[StrCat SR5,""] //类型:默认
[StrCat SR5,"|..\83\"]
[StrCat SR5,SR10] //语音1
[StrCat SR5,"||"] //语音2、3
[SwitchDBA 100]
Passed -> DO_SEND_LOCAL
Failed -> DO_SEND_FAIL
:DO_SEND_LOCAL
[NowTime]
[ITOS IR0]
[StrCat SR0,"125902222"]
[ ASSIGN SR28,"insert into PREDIALTASK (SERIALNUM,CALLORDER,SERVICEBEGINTIME,SERVICESTOPTIME,DIALBEGINTIME,DIALENDTIME,TIMEINTERVAL,INTERVALTYPE,CALLER,ORIGCALLER,CALLED,ORIGCALLED,PRIVATEDATA,REDIALINTERVAL,REDIALCOUNT,TYPE,SERVICEID,ANSWERTYPE,PRIORITY,STATUS) values(" ]
[ STRCAT SR28,"'" ]
[ STRCAT SR28,SR0] //SERIALNUM(VARCHAR)
[ STRCAT SR28,"'," ]
[ STRCAT SR28,"10" ] //CALLORDER(INT)
[ STRCAT SR28,",'" ]
[ STRCAT SR28,SR3 ] //SERVICEBEGINTIME(VARCHAR)
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR4 ] //SERVICESTOPTIME(VARCHAR)
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR3 ] //DIALBEGINTIME(VARCHAR)
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR4 ] //DIALENDTIME(VARCHAR)
[ STRCAT SR28,"'," ]
[ STRCAT SR28,"0" ] //TIMEINTERVAL(int)
[ STRCAT SR28,"," ] //
[ STRCAT SR28,"0" ] //INTERVALTYPE(INT)
[ STRCAT SR28,",'" ]
[ STRCAT SR28,"125902222" ] //CALLER(VARCHAR) //放歌流程
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR2 ] //ORIGCALLER(VARCHAR) //听歌者
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR2 ] //CALLED(VARCHAR) //听歌者
[ STRCAT SR28,"','" ]
[ STRCAT SR28,"125902283" ] //点歌者
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR5 ] //参数
[ STRCAT SR28,"'," ]
[ STRCAT SR28,"60" ] //REDIALINTERVAL(int)
[ STRCAT SR28,"," ]
[ STRCAT SR28,"0" ] //REDIALCOUNT(int)
[ STRCAT SR28,"," ]
[ STRCAT SR28,"2" ] //TYPE(int)
[ STRCAT SR28,"," ]
[ STRCAT SR28,"0" ] //SERVICEID(int)
[ STRCAT SR28,"," ]
[ STRCAT SR28,"1" ] //ANSWERTYPE(int)
[ STRCAT SR28,"," ]
[ STRCAT SR28,"3" ] //PRIORITY(int)
[ STRCAT SR28,"," ]
[ STRCAT SR28,"0" ] //STATUS(int)
[ STRCAT SR28,")" ]
[ ExecSQL SR28 ]
Passed -> DO_SEND_SLEEP
Failed -> DO_SEND_SLEEP
TimeOut -> DO_SEND_SLEEP
:DO_SEND_SLEEP
[ClearDTMF]
[SetDTMF "?"]
[PlayFile "..\GLOBAL\BLANK_s01.vox"]
StopPlayBack -> DO_SEND_REMOTE
DialTerminate -> DO_SEND_REMOTE
Failed -> DO_SEND_REMOTE
:DO_SEND_REMOTE
[NowTime]
[ITOS IR0]
[StrCat SR0,"125902222"]
[ ASSIGN SR28,"insert into PREDIALTASK (SERIALNUM,CALLORDER,SERVICEBEGINTIME,SERVICESTOPTIME,DIALBEGINTIME,DIALENDTIME,TIMEINTERVAL,INTERVALTYPE,CALLER,ORIGCALLER,CALLED,ORIGCALLED,PRIVATEDATA,REDIALINTERVAL,REDIALCOUNT,TYPE,SERVICEID,ANSWERTYPE,PRIORITY,STATUS) values(" ]
[ STRCAT SR28,"'" ]
[ STRCAT SR28,SR0] //SERIALNUM(VARCHAR)
[ STRCAT SR28,"'," ]
[ STRCAT SR28,"10" ] //CALLORDER(INT)
[ STRCAT SR28,",'" ]
[ STRCAT SR28,SR3 ] //SERVICEBEGINTIME(VARCHAR)
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR4 ] //SERVICESTOPTIME(VARCHAR)
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR3 ] //DIALBEGINTIME(VARCHAR)
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR4 ] //DIALENDTIME(VARCHAR)
[ STRCAT SR28,"'," ]
[ STRCAT SR28,"0" ] //TIMEINTERVAL(int)
[ STRCAT SR28,"," ] //
[ STRCAT SR28,"0" ] //INTERVALTYPE(INT)
[ STRCAT SR28,",'" ]
[ STRCAT SR28,"125902222" ] //CALLER(VARCHAR) //放歌流程
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR8 ] //ORIGCALLER(VARCHAR) //听歌者
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR8 ] //CALLED(VARCHAR) //听歌者
[ STRCAT SR28,"','" ]
[ STRCAT SR28,$CallerID ] //点歌者
[ STRCAT SR28,"','" ]
[ STRCAT SR28,SR5 ] //参数
[ STRCAT SR28,"'," ]
[ STRCAT SR28,"60" ] //REDIALINTERVAL(int)
[ STRCAT SR28,"," ]
[ STRCAT SR28,"0" ] //REDIALCOUNT(int)
[ STRCAT SR28,"," ]
[ STRCAT SR28,"2" ] //TYPE(int)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -