
# 通过SMN发布模板消息
#### 操作场景
消息通知服务能够根据用户的需求，向订阅终端主动推送消息。消息通知服务支持发布模板消息，该功能用于以下场景：
在用户发送的通知消息中，大部分内容是固定的，只有少数内容随着每次事件指标变化而变化。在这种场景下，用户可以通过创建一个消息模板，用模板变量代替变化的内容。这样在每次发布消息通知时，选择消息模板并设置模板变量便可完成特定的消息通知。
本章节以创建主题并发布模板消息为例，指导您快速上手消息通知服务。
在本示例中，某公司定期举行展览会，需要邀请相关人员，邀请通知消息中消息内容不变，仅需更改展览会的举办时间。
#### 操作视频
<video controls="controls" preload="none" id="object7855543162814" class="idp-external-video" src="https://res-video.hc-cdn.com/cloudbu-site/china/zh-cn/SMN/1703473877562995026.mp4" title="向主题发布模板消息" poster="https://support.huaweicloud.com/qs-smn/zh-cn_image_0000002366870549.png" height="340.0000" width="600.0000"></video>
#### 操作流程
| 操作步骤                                            | 说明                                                                                                                                                                                                                          |
|:---|:---|
| [准备工作]     | 注册华为账号并开通华为云，实名认证，为账户充值。                                                                                                                                                                                                    |
| [步骤一：创建主题] | 创建一个主题"Mytopic"。                                                                                                                                                                                                            |
| [步骤二：添加订阅] | 为主题"Mytopic"添加协议类型为"短信"和"邮件"的订阅。                                                                                                                                                                                            |
| [步骤三：创建消息模板]   | 创建一个消息模板"tem_001"，协议分别为"Default"、"短信"和"邮件"。                                                                                                                                                                                 |
| [步骤四：发布消息] | 向"短信"和"邮件"类型的订阅者发布消息"The Arts and Crafts Exposition will be held from {startdate} through {enddate}. We sincerely invite you to join us. " 其中，"{startdate} "表示展览会的开始时间，"{enddate}"表示展览会的结束时间。 |
| [步骤五：接收消息] | 订阅终端接收消息。                                                                                                                                                                                                                   |
   
 #### 准备工作
1. 注册账号并实名认证。 在使用消息通知服务之前，请先[注册华为账号并开通华为云](https://support.huaweicloud.com/usermanual-account/account_id_001.html)、[实名认证](https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0071343161.html)。
   如果您已开通华为云并进行实名认证，请忽略此步骤。
   
2. 为账户充值。 请保证账户有足够金额。具体操作，请参见[账户充值](https://support.huaweicloud.com/usermanual-billing/bills-topic_30000002.html)。
   
 
 #### 步骤一：创建主题
1. 进入[创建主题](https://console.huaweicloud.com/smn/?locale=zh-cn#/topics/create)页面。
2. 配置主题参数。 本示例中仅解释必要参数，其余大多数配置可保留默认值。关于配置参数的详细说明请参见[创建主题](https://support.huaweicloud.com/usermanual-smn/zh-cn_topic_0043961401.html)。
   图1创建主题参数配置   
   ![](https://support.huaweicloud.com/qs-smn/zh-cn_image_0000002510688814.png "点击放大")
   表1创建主题参数设置说明 
   | 参数   | 示例          | 说明                            |
   |:---|:---|:---|
   | 主题名称 | **Mytopic** | 输入创建的主题名称。                    |
   | 企业项目 | **default** | 该参数仅对开通企业项目的企业客户账号显示，不显示时请忽略。 |
      
   
3. 单击"确定"，主题创建成功。 主题创建成功后，系统会自动生成主题URN，主题URN是主题的唯一资源标识，不可修改。新创建的主题将显示在主题列表中。
   
 
 #### 步骤二：添加订阅
分别为主题"Mytopic"添加协议类型为"短信"和"邮件"的订阅。
- [添加协议类型为"短信"的订阅]
  1. 在主题列表中，单击"Mytopic"主题右侧的"添加订阅"。
  
  2. 配置订阅参数。 本示例仅解释必要参数，其余大多数配置可保留默认值。关于配置参数的详细说明，请参见[添加订阅](https://support.huaweicloud.com/usermanual-smn/smn_ug_0008.html)。
     图2添加订阅配置参数   
     ![](https://support.huaweicloud.com/qs-smn/zh-cn_image_0000002510692980.png "点击放大")
     表2添加订阅参数设置说明 
     | 参数   | 示例                 | 说明                                                                                                                                                                                                                                                                                                                                |
     |:---|:---|:---|
     | 主题名称 | **Mytopic**        | 已选择的需要添加订阅的主题名称，不可修改。                                                                                                                                                                                                                                                                                                             |
     | 协议   | **短信**             | 在"协议"下拉框中，选择订阅终端支持的协议"短信"。 更多支持的协议类型，请参见[消息通知服务支持的传输协议有哪些？](https://support.huaweicloud.com/smn_faq/smn_faq_0003.html)                                                                                                                                                                     |
     | 添加方式 | **新建订阅**           | 创建新的订阅。                                                                                                                                                                                                                                                                                                                           |
     | 订阅终端 | **+8618612345678** | 在"订阅终端"输入框中输入有效的手机号码。 - 批量添加时，每个终端地址占一行，最多可输入10个终端。  - 消息通知服务不会校验订阅终端是否真实存在。   |
        
     
  
  3. 单击"确定"，完成协议类型为"短信"的订阅的添加。 完成订阅添加后，您添加的订阅终端会收到订阅确认的通知，接收端需要在订阅终端上单击订阅确认链接，确认同意接收主题发布的消息。此时SMN页面可以看到对应订阅状态为已确认。
     
   
- [添加协议类型为"邮件"的订阅]
  1. 在主题列表中，单击"Mytopic"主题右侧的"添加订阅"。
  
  2. 配置订阅参数。 本示例仅解释必要参数，其余大多数配置可保留默认值。关于配置参数的详细说明，请参见[添加订阅](https://support.huaweicloud.com/usermanual-smn/smn_ug_0008.html)。
     图3添加订阅配置参数   
     ![](https://support.huaweicloud.com/qs-smn/zh-cn_image_0000002510775780.png "点击放大")
     表3添加订阅参数设置说明 
     | 参数   | 示例                       | 说明                                                                                                                                                                                                                                                                                                                          |
     |:---|:---|:---|
     | 主题名称 | **Mytopic**              | 已选择的需要添加订阅的主题名称，不可修改。                                                                                                                                                                                                                                                                                                       |
     | 协议   | **邮件**                   | 在"协议"下拉框中，选择订阅终端支持的协议"邮件"。 更多支持的协议类型，请参见[消息通知服务支持的传输协议有哪些？](https://support.huaweicloud.com/smn_faq/smn_faq_0003.html)                                                                                                                                                                |
     | 添加方式 | **新建订阅**                 | 创建新的订阅。                                                                                                                                                                                                                                                                                                                     |
     | 订阅终端 | **username@example.com** | 在"订阅终端"输入框中输入有效的邮箱地址。 - 批量添加时，每个终端地址占一行，最多可输入10个终端。  - 消息通知服务不会校验订阅终端是否真实存在。   |
        
     
  
  3. 单击"确定"，完成协议类型为"邮件"的订阅的添加。 完成订阅添加后，您添加的订阅终端会收到订阅确认的通知，接收端需要在订阅终端上单击订阅确认链接，确认同意接收主题发布的消息。此时SMN页面可以看到对应订阅状态为已确认。
     
   
 #### 步骤三：创建消息模板
1. 在左侧导航栏，选择"主题管理" \>"消息模板"。
2. 在消息模板页面，单击右上角的"创建消息模板"。
3. 配置消息模板参数。 本示例仅解释必要参数，其余大多数配置可保留默认值。关于配置参数的详细说明，请参见[消息模板管理](https://support.huaweicloud.com/usermanual-smn/zh-cn_topic_0043394889.html)。
   图4创建消息模板配置参数   
   ![](https://support.huaweicloud.com/qs-smn/zh-cn_image_0000002510779120.png "点击放大")
   表4创建消息模板参数设置说明 
   | 参数   | 示例                                                                                                                                                                                                                                                                 | 说明                                                                                                                                                 |
   |:---|:---|:---|
   | 模板名称 | **tem_001**                                                                                                                                                                                                                                                        | 输入创建的模板名称。                                                                                                                                         |
   | 协议   | - **Default**  - **短信**  - **邮件**   | 分别创建模板名称为"tem_001"，协议为"Default"、"短信"、"邮件"的消息模板。                                                                                                    |
   | 模板内容 | **The Arts and Crafts Exposition will be held from {startdate} through {enddate}. We sincerely invite you to join us.**                                                                                                                                            | 自定义模板内容。 请以{xxx}作为占位符创建模板。在使用该模板发送消息时，{xxx}可以被替换成具体内容。{xxx}中的xxx只能包含大写字母、小写字母、数字、-、.和_，且必须由大写字母、小写字母或数字开头，不能超过21个字符。 |
      
   
4. 单击"确定"。 新创建的模板会显示在页面下方模板列表中。
   
 
 #### 步骤四：发布消息
1. 在左侧导航栏，选择"主题管理" \> "主题"。
2. 在主题列表中，单击"Mytopic"主题消息右侧"操作"列的"发布消息"。
   图5发布消息配置参数   
   ![](https://support.huaweicloud.com/qs-smn/zh-cn_image_0000002030147589.png "点击放大")
   表5发布消息参数设置说明 
   | 参数   | 示例                                                                                                             | 说明                                                                                                                                                                 |
   |:---|:---|:---|
   | 主题名称 | **Mytopic**                                                                                                    | 已选择需要发布消息的主题名称，不可修改。                                                                                                                                               |
   | 消息类型 | **模板消息**                                                                                                       | 按模板格式发送的消息。                                                                                                                                                        |
   | 消息内容 | ``` { "message_template_name": "tem_001", "tags": { "startdate": "08/02/2024", "enddate": "08/20/2024" } } ``` | 在消息内容输入框中手动输入模板格式的消息，或通过单击"生成模板消息"自动生成消息。 模板格式的消息描述，请参见[模板格式消息说明](https://support.huaweicloud.com/usermanual-smn/smn_ug_a2000.html)。 |
      
   
3. 单击"确定"，消息将推送至不同的订阅终端。 各个终端接收到的消息内容说明请参考"[不同协议消息说明](https://support.huaweicloud.com/usermanual-smn/smn_ug_a3000.html)"部分。
   
 
 #### 步骤五：接收消息
在订阅主题时，选择不同的订阅协议，订阅终端接收到的信息是不一样的。
- 短信协议 订阅终端为手机，接收到的消息只包含消息内容。
  
- 邮件协议 订阅终端为邮箱，接收到的消息包含消息内容和取消订阅的链接。
  
 
