向主题发布JSON消息
操作场景
如果您需要向不同的订阅协议发送不同的内容,可以向主题发布JSON消息,它可以定义分别向短信、邮件、FunctionGraph(函数)、FunctionGraph(工作流)和HTTP(S)订阅协议发送不同内容。
前提条件
所有的订阅终端必须确认订阅才能收到推送消息,未确认的订阅终端不会收到消息。
操作步骤
- 登录管理控制台。
- 在管理控制台左上角单击图标,选择区域和项目。
- 在页面左上角单击图标,选择“管理与监管” > “消息通知服务 SMN”。
进入消息通知服务页面。
- 在左侧导航栏,选择“主题管理” > “主题”。
- 在主题列表中,选择您要向其发布消息的主题,在右侧“操作”栏单击“发布消息”。
- 在弹出的发布消息对话框中,主题名称为已选择的需要发布消息的主题名称,不可修改。其它参数根据界面提示填写。填写说明请参考表1。
表1 发布消息参数说明 参数
说明
消息标题
消息的标题,长度必须少于512字节。可不填写。
消息类型
消息格式有三种,分别为“文本消息”、“JSON消息”和“模板消息”。每次发布消息只可选取其中一种。
- “文本消息”:按文本格式发送的消息。
- “JSON消息”:按JSON格式发送的消息。
- “模板消息”:按模板格式发送的消息。模板定义请参考消息模板管理。
消息内容
消息的内容。消息内容不能为空且大小不超过256KB。
此处“消息类型”选择“JSON消息”,“消息内容”可以手动输入JSON格式的消息,也可以通过工具自动生成JSON格式的消息。
- 手动输入JSON格式的消息,JSON格式的规范请参考JSON格式消息说明。
- 通过工具自动生成JSON格式的消息,请参考步骤7~10。
- 单击“生成JSON消息”。
- 在弹出的对话框中,在“消息”框中输入内容“This is a default message.”,在“协议”处勾选所有协议。
选择不同的协议,生成的JSON格式消息的大小不同。此处输入消息内容后,系统会自动计算已输入内容的字节数、生成的JSON格式消息的字节数以及剩余可输入的字节数。生成的JSON格式消息的字节数包含消息框中显示的花括号、双引号、空格、回车、协议名称和消息内容累计字节数。JSON格式消息的计算方法,请参见JSON格式消息说明的JSON消息计算部分。
图1 生成JSON消息
- 单击“确定”,系统自动生成JSON消息并显示在消息内容框中。如图2所示。
- 您可以在生成的各个协议的消息内容中手动修改消息,这样就可以实现向不同协议发送不同的消息内容。系统生成JSON格式的消息时默认生成“default”,当匹配不到消息协议时,按“default”中的内容发送。关于JSON格式的消息描述,请参考JSON格式消息说明。
- (可选)根据界面提示,配置消息属性参数。消息属性用于限定消息发布范围,填写说明如表2所示。
表2 消息属性参数说明 参数
说明
类型
选择需要限定发布消息的类型。
- 协议
- String Array
- String
名称
名称只能由数字、小写英文字母或下划线(_)组成,下划线不能作为结尾且不能连续出现,必须由数字或小写英文字母开头,长度不能超过32个字符且不能为空。
- 当“类型”取值为“协议”时,“名称”默认为smn_protocol。
- 当“类型”取值为“String Array”时,输入限定发布消息的数组名称。
- 当“类型”取值为“String”时,输入限定发布消息的字符串名称。
值
- 当“类型”取值为“协议”时,在下拉框中选择需要限定消息发布的协议类型,提供的选项为“短信”、“邮件”、“HTTP”、“HTTPS”、“FunctionGraph(函数)”、“FunctionGraph(工作流)。
- 当“类型”取值为“String Array”时,值必须为字符串数组,数组长度至少为1且不能超过10。
- 当“类型”取值为“String”时,值只能由中文、数字、英文字母或下划线(_)组成,长度不能超过32个字符且不能为空。
- 单击“确定”。
消息将推送至不同的订阅终端。各个终端接收到的消息内容说明请参考不同协议消息说明。