AMS彩信发送业务流程图(红色需调整优化)
2020-08-26 10:09:06 0 举报
业务流程优化方案
作者其他创作
大纲/内容
AmsService
调用
返回
结束
开始
MQ
定时获取sms_send_tmp任务待计费的任务数据
SmsRefundTask
供应商
获取发送通道(GroovyScriptEngine)
SmsAccountServlet
发MQ同步运营商(GYS_EXC)
消息转实体<SmsFlowModel>(toSmsFlowModel)
AmsServiceCenter《发送阶段》
校验、分流算法过滤后(按供应商维度)
BatchChargingTask
加载/data/batch/ 目录附件、格式解析
消息转实体<SmsMqModel>(transSplitFlowFromMsg)
插入channel表<来源为运营商>
消息实体类中SmsSendTmpDetailModel补充运营特性标识(若有)
API
更新sms_send_tmp计费状态、保存计费信息
状态返回
运营商帐号相关调度接口
批量入库 到sms_send_tmp_detail_N
异步触发
实体转MQ消息<SmsMqModel>(transMsgFromSplitFlow)
获取退费配置(时限、条限等)
保存任务sms_send_tmp表
获取当前配置(是否需要计费、计费状态)
通过计费接口调用具体实现类(SmsAPI)
SendMulTask
参数替换、字符分隔、余额较验
更新订单状态、返还余额
上传
调用运营商计费透传接口
实时收到返回状态
校验、验证
DB
AmsPlatform
admin/agent
运营商发送状态实时监听器
获取当前供应商配置(上线、重试时间等)
建议 API 只提供透传接口,不实现其它业务
校验、验证(是否超限等)
发MQ消息分流(FL_EXC)
定时扫描sms_send_tmp任务数据
指定MQ(FL_EXC)实时消费
调用接口
获取当前计费配置(计费方式、限制条件等)
AmsServiceCenter《信息同步阶段》
<提示>sms_send_tmp_detail_N表中需要补充当前运营商特性标识,计费成功后需要同步更新
根据返回参数查询sms_order_N订单信息
SmsSplitFlowTask
指定批量条件获取send_tmp_detail_N 发送数据
通过退费公共接口通知运营商退费(若有)
指定MQ(GYS_EXC)实时消费
AmsServiceCenter《退费阶段》
更新订单状态
1:打特殊日志2:db 生成当前手机号定单/工单信息3: redis 记录商家发送次数4: redis 记录订单和工单 关系
补充运营商特性参数后(若有)调用发送通道(SmsApi)
更新发送任务、redis 扣费、余额结算
获取附件
实时收到返回帐号信息
号码去重<channel_repeat_mobile表>
运营商退费透传接口
更新发送状态
BatchImportNewTask
附件另存 /data/batch/ 目录
BatchFileTask
查询限定时限的退费定单(sms_order_N)
SmsCallbackServlet
调用运营商透传发送接口
0 条评论
下一页
为你推荐
查看更多