更新时间:2024-10-21 GMT+08:00
分享

对接Message&SMS发送短信

消息&短信 (Message&SMS)是华为云携手全球多家优质运营商和渠道,为企业用户提供的通信服务。企业调用API或使用群发助手,即可使用验证码、通知短信服务。在AstroZero中,通过应用与消息&短信 (Message&SMS)对接,可实现短信发送功能。例如,使用Message&SMS给某用户发送条短信。

前提条件

  • 已获取短信应用的APP_Key、APP_Secret、APP接入地址和上行短信接收地址。
    1. 登录短信控制台。
    2. 在左侧导航栏中,选择“国内短信 > 应用管理”。
    3. 在应用管理中,获取所需的值。
  • 已获取短信模板的模板ID。
    1. 登录短信控制台。
    2. 在左侧导航栏中,选择“国内短信 > 模板管理”。
    3. 在模板管理中,获取所需的值。
  • 已获取短信模板的签名名称、通道号。
    1. 登录短信控制台。
    2. 在左侧导航栏中,选择“国内短信 > 签名管理”。
    3. 在签名管理中,获取所需的值。

创建消息&短信连接器

  1. 参考登录AstroZero新版应用设计器中操作,进入应用设计器。
  2. 在左侧导航栏中,选择“集成”
  3. 单击“连接器”中的“ 连接器实例”,进入连接器实例页面。
  4. 在左侧导航栏中,选择“消息通知 > 消息&短信”。
  5. 在右侧页面单击“+”,设置消息&短信对接参数。

    表1 新建消息&短信连接器参数说明

    参数

    说明

    标签

    新建连接器的标签名,用于在页面显示。

    名称

    新建连接器的名称。命名要求如下:

    • 长度不能超过64个字符,包括前缀命名空间的长度。
      说明:

      名称前的内容为命名空间,在AstroZero中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。

    • 必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。

    APP地址

    短信APP接入地址,请与前提条件中的“APP接入地址”取值保持一致。

    APP Key

    APP Key和APP Secret是用户身份的唯一标识,调用短信业务API时需携带,用于认证鉴权。请与前提条件中的“APP_Key”取值保持一致。

    App Secret

    APP Key和APP Secret是用户身份的唯一标识,调用短信业务API时需携带,用于认证鉴权。请与前提条件中的“APP_Secret”取值保持一致。

    App回调地址

    接收短信发送结果通知的回调地址。

    打包当前配置

    选中该选项后,应用打包时会将当前配置的连接器信息一并打出。例如,如果应用包发布到运行环境,当前配置默认会被同步到运行环境中。如果不勾选,则内容不会打包发布到运行环境,此时需要您参考管理应用中的连接器中操作,创建对应的连接器。

    默认为选中,对信息敏感的场景,建议不勾选。

  6. 创建短信模板。

    短信模板是用户发送短信时使用的内容模板,由纯固定文本或固定文本加变量组成。使用短信模板前,需要在华为云的消息&短信上创建短信模板,相关操作请参考MSGSMS帮助文档
    1. 在“模板”区域,单击“创建”。
    2. 配置页面参数,单击“确定”。
      图1 创建模板参数配置
      表2 创建模板参数说明

      参数

      说明

      名称

      模板的名称,请和消息&短信服务中定义的模板名称保持一致。

      发送者

      通道号。由华为分配,仅用于接口调用时填写。请与前提条件中的“通道号”取值保持一致。

      模板

      模板ID,用于唯一标识短信模板。请与前提条件中的“模板ID”取值保持一致。

      模板参数

      发送短信时携带的模板参数。

      • 变量格式为${1}、${2}、...、${20},中间数字应代表变量在模板内容中的位置顺序。
      • 不允许设置局部变量,如www.${1}.cn、186${2}1234等。

      客户回调地址

      用户收到短信后,回复短信,消息&短信服务可以通过回调该地址,通知业务方用户回复的短信。请与前提条件中的“上行短信接收地址”取值保持一致。

      签名

      签名的名称,请与前提条件中获取的“签名名称”取值保持一致。

  7. (可选)测试是否能发送短信。

    1. 单击已创建的连接器,进入连接器详情页面。
    2. 在连接器列表中,单击需要测试连接器所在行的
    3. 输入接收者号码和模板参数,单击“确定”。

      接收者收到短信,表示测试成功。

在脚本中调用连接器

在脚本中,调用已创建的连接器,实现与Message&SMS的对接。

  1. 参考创建空白AstroZero脚本中操作,创建一个空白脚本。
  2. 在脚本编辑器中,输入如下代码。

    //导入该事件所依赖的标准库文件。msgsms是系统预置的标准库。
    import * as sms from 'msgsms'; 
      
    @action.object({type: "method"}) 
    export class ActionDemo { 
         @action.method({ label: 'greeting something', description: 'greeting something.', input: 'ActionInput', output: 'ActionOutput' })     public greet(){ 
      
            console.log('`````````````````````test new sms`````````````````````') 
            let client = sms.newClient("MSGSMS_Test")
            let res = client.sendByName("Test1","130XXXXXXXX","[\"6612\"]") 
            console.log(res) 
            console.log('`````````````````````test new sms end`````````````````````') 
        } 
    }

    其中,sms.newClient("MSGSMS_Test")中“MSGSMS_Test”为连接器的名称。client.sendByName("Test1","130XXXXXXXX","[\"6612\"]")中携带的是模板名称、接收者号码和模板参数。

  3. 单击脚本编辑器页面上方的,保存脚本。
  4. 保存成功后,单击,运行事件。
  5. 在页面底部,单击测试窗口右上角的
  6. 检查接收者是否收到短信,收到短信表示成功调用连接器。
  7. 单击编辑器页面上方的,启用脚本。

在服务编排中调用连接器

在服务编排中,调用已创建的连接器,实现与MSGSMS的对接。

  1. 参考创建空白AstroZero服务编排中操作,创建一个空白服务编排。
  2. 在服务编排设计页面左侧,选择“连接器 > 消息通知”,拖拽“MSGSMS”图元至画布中。

    MSGSMS是系统预置的,与MSGSMS对接的接口。
    图2 拖拽MSGSMS图元至画布中

  3. 选中图元,单击,设置基本信息。

    图3 设置基本信息
    表3 MSGSMS图元基本信息参数说明

    参数

    说明

    标签

    图元在页面显示的名称。

    名称

    图元在系统中的唯一标识,不能和其他图元相同。命名要求如下:

    • 长度不能超过80个字符。
    • 必须以英文字母开头,只能由英文字母,数字或下划线组成,且不能以下划线结尾。

    描述

    根据实际需求,输入连接器的描述信息。

    连接器

    在下拉框中,选择待使用连接器的名称,即创建消息&短信连接器中创建连接器的名称。

  4. 单击,设置动作参数。

    图4 配置动作
    表4 连接器新建动作参数说明

    参数

    说明

    资源

    选择所需的模板,即短信模板的名称。

    接收者

    “target”设置为“to”,在“source”中配置接收者号码。

    输出参数

    设置模板的输出参数。

  5. 连接开始图元和MSGSMS图元。

    图5 连接图元

  6. 单击页面上方的,保存服务编排。
  7. 保存成功后,单击,运行服务编排。
  8. 单击“运行”,若接收者收到短信,表示成功调用连接器。

相关文档