【注】:图片有点小,浏览器比例(按住 Ctrl,滚动鼠标)放大即可清楚查看
1、回顾:
很早以前明道云集成中心,还没有阿里云短信接口,所以当时采用的是代码块实现:
见:https://bbs.mingdao.net/topic/2406
如今,私有部署,集成中心已经存在:阿里云-短信服务接口,简单很多。
所以新的私有部署,直接调用集成中心阿里云-短信服务 API 来集成
2、注意:
- 短信模板必须和阿里云申请审核通过的模板一致:
3、需求:
私有部署,阿里云短信发送:明道云邀请用户/明道云外部用户注册/明道云自主验证码通知
4、实现:
单独一个应用,用于维护短信模板,此应用包括:2 个工作表、1 个 Webhook、1 个测试发送
*1、集成中心安装:阿里云-短信服务
a、阿里云,申请:AccessKeyID、AccessKeySecret
b、明道云,安装阿里云-短信服务
*2、webhook
节点内容:
a、webHook:
图中 ① 的位置后面会用到
b、查询工作表:查询指定短信模板
c、代码块:根据短信内容提取模板参数
import re
import json
#["手机号"]转为:手机号,移除首和尾的[]
numbers=input['data_mobiles']
numbers_list = json.loads(numbers)
numbers_str = ','.join(map(str, numbers_list))
#提取参数
template=input['template_content']
str_reg = re.sub(r'\${(.*?)}','(?P<\\1>.*?)',template)
params_reg_match = re.match(str_reg, input['data_message'])
if params_reg_match:
params_reg_groupdict = params_reg_match.groupdict()
else:
params_reg_groupdict = {}
json_str = json.dumps(params_reg_groupdict)
output = {'numbers_str':numbers_str,'params_str': json_str}
d、调用已集成 API:批量发送短信
e、新增记录:保存短信发送记录
5、明道云私有服务器配置
注意:/data/mingdao/script/volume/sms/appextensions.json 中的 WebhookUrl 必须和上文【2、webhook 中的截图 ① 一致】
https://docs-pd.mingdao.com/faq/sms/