intra-mart Accel Platform安装指南 第33版2020-09-01

11.4。IM通知

概述==

IM-Notice是一种通知功能,用于将在intra-mart Accel Platform上运行的各种应用程序的通知传递到台式机和智能手机。
您可以使用Amazon Simple Notification Service(以下称为Amazon SNS)和Firebase Cloud Messaging(以下称为FCM)服务将通知传递到智能手机应用程序。

11.4.1。一般的通知功能

配置设置以使用常规通知功能。

11.4.1.1。 模块选择

在IM-Juggling选择一个模块 。

  1. 请从<(项目名称)/juggling.im>的“基础模块 ”选项卡中打开“通知功能”。

    ../../_images/notice_module_1.png
  2. 选择常规通知功能。

    ../../_images/notice_module_2.png
  3. 如果要通知手机,请选择手机通知功能。

    ../../_images/notice_module_3.png
  4. 要通知桌面,请选择桌面通知功能。

    ../../_images/notice_module_4.png
  5. 单击消息并解决依赖关系。

    ../../_images/notice_module_5.png
  6. 解析设置文件后,将在<(项目名称)/ conf>下输出设置文件。

    ../../_images/notice_module_6.png

11.4.1.2。编辑IM-Notice配置文件

IM-Juggling <(项目名称)/ conf>下的im-notice-config.xml输出,然后执行以下设置。

  1. <基本网址>

    • 设置BaseURL 。
      此设置用于创建快捷方式URL。
      如果未设置,将使用server-context-config.xml中指定的BaseURL 。
      <base-url> https://example.org/imart </ base-url>
      
  2. <short-cut-duration-minutes>

    • 设置快捷方式URL的有效期。单位是分钟。
      如果设置为“ 0”,则不会创建快捷方式URL。
      默认 ,设置为43200分钟= 30天。
      <short-cut-duration-minutes> 43200 </ short-cut-duration-minutes>
      

11.4.1.3。设置BaseURL

通过作业执行到IM-Notice的消息传递处理时,需要设置BaseURL 。请从“ BaseURL ”或“ 租户环境信息 ”中进行设置。

注意

如果不指定BaseURL ,则会发生以下错误。
jp.co.intra_mart.system.notice.exception.NoticeRuntimeException:[E.NOTICE.CORE.00016]无法解析BaseURL 。

11.4.2。桌面通知功能

配置设置以使用桌面通知功能。

11.4.2.1。如果是独立配置

在独立配置中,Web应用程序服务器和桌面通知客户端直接通信。
必须设置IM-Notice MQ配置文件(im-notice-mq-config)。
../../_images/notice_construction_standalone.png

图独立服务器配置示例(桌面通知)

11.4.2.1.1。编辑IM-Notice MQ配置文件

打开IM-Juggling <(项目名称)/ conf>下的im-notice-mq-config.xml输出,然后执行以下设置。
  1. <地址>
    • 设置用于桌面通知的端口号。
      默认设置是使用40608端口。
      打开此处指定的从客户端到服务器的网络设备端口。
      <address bind = “ true” > tcp:// *:40608 </ address>
      
  2. <ping>
    • 设置ping功能。
      要启用它,请将enable属性设置为“ true”。
    • 在interval-seconds属性中,将间隔设置为ping客户端。单位是秒。
    • 在“生存时间”属性中,设置直到客户端重新连接到服务器为止的时间。单位是秒。
      如果在设置的秒数内服务器未响应,则客户端将重新连接到服务器。
      <ping 启用=“真” 间隔秒数=“ 270” 生存时间=“ 300” />
      

    注解

    根据环境,数据可能会在一段时间内不流动的套接字可能会断开连接。
    在这种环境下,可以通过每隔几分钟ping一次操作来避免自动断开连接。
    (例如Microsoft Azure和Amazon Elastic Compute Cloud)
  3. <端点>
    • 设置客户端的连接目标。
      指定在<地址>中设置的端口号。
      <端点> <端点> tcp://example.org:40608 </端点> </端点>
      

11.4.2.2。如果是分布式配置或使用Web Server进行配置

如果是分布式配置或使用Web Server的配置,则必须启动执行代理服务的服务器并编辑配置文件。
../../_images/notice_construction_sa_ws.png

该图包括WebServer的分布式服务器配置示例(桌面通知)

注解

代理是网络中继的代理。

注解

有关执行代理服务的服务器的系统要求,请参阅“ 发行说明 ”-“ 系统要求 ”。

11.4.2.2.1。编辑IM-Notice MQ配置文件

请编辑IM-Juggling im-notice-mq-config.xml输出。
  1. <地址>
    在bind属性中指定false。
    <地址 绑定= “ false” > tcp:// {正在运行代理的服务器的主机或IP地址}:{代理后端端口号} </地址> <ping enable = “ true” interval-seconds = “ 270” 生存时间= “ 300” /> <端点> <端点> tcp:// {运行代理的服务器的主机或IP地址}:{经纪人前端端口号} < /端点> </端点>
    

注解

有关IM-Notice MQ配置文件的其他项目 请参阅编辑IM-Notice MQ配置文件

11.4.2.2.2。代理服务执行文件的取得

获取执行代理服务的可执行文件(im_notice_mq_broker)。
输入从我们网站上下载产品文件中获得的许可证密钥。

11.4.2.2.3。编辑IM-Notice MQ代理配置文件

在conf目录中编辑im-notice-mq-broker-config.xml,在该目录中扩展了获取的代理服务可执行文件。
  1. <前端>
    • 设置用于与桌面通知应用程序通信的端口号。
      默认设置是使用40608端口。
      打开此处指定的从客户端到代理的网络设备端口。
      <frontend> tcp:// *:40608 </ frontend>
      
  2. <后端>
    • 设置用于与Web应用程序服务器通信的端口号。
      默认设置是使用40609端口。
      打开此处指定的从代理到服务器的网络设备端口。
      <backend> tcp:// *:40609 </ backend>
      

注解

IM-Notice MQ代理配置文件的其他项目与IM-Notice代理配置文件相同。
请参阅“ 编辑IM-Notice MQ配置文件”以获取 IM-Notice Broker配置文件。

11.4.2.2.4。执行代理服务

使用Java命令在获取的代理服务可执行文件被展开的目录中执行im_notice_mq_broker-8.0.x.jar。

在前台操作时(示例)

java -jar im_notice_mq_broker-8.0.x.jar
在后台操作时(示例)
nohup java -jar im_notice_mq_broker-8.0.x.jar> stdout.log 2> stderr.log&

注解

当停止执行的代理服务时,请根据执行方法停止。
上述执行示例的stop方法如下。
  • 在前台执行Java命令时,它以Ctrl-C结尾。
  • 在后台执行java命令时,请检查进程 ID并以kill命令结尾。

11.4.3。手机通知功能(iOS版本)

配置使用移动通知功能的设置。使用Amazon SNS通知iOS。

../../_images/notice_construction_ios.png

图使用Amazon SNS的服务器配置示例

11.4.3.1。获取P12证书文件

获取P12证书文件(IM通知推送通知Production.p12)。
输入从我们网站上下载产品文件中获得的许可证密钥。

11.4.3.2。Amazon SNS设置

设置Amazon SNS。

  1. 登录到Amazon SNS
    ../../_images/notice_v2_ios_1.png
  2. 请选择一个地区。
    ../../_images/notice_v2_ios_2.png
  3. 请选择一项服务。
    ../../_images/notice_v2_ios_3.png
  4. 从“移动”-“推送通知”中单击“创建平台应用程序”。
    ../../_images/notice_v2_ios_4.png
  5. 填写下面的表格,然后单击“创建平台应用程序”。

    项目 说明
    申请名称 输入任何名称。
    推送通知平台 选择“ Apple iOS / VoIP / Mac”。
    推送证书类型 选择“ iOS推送证书”。
    选择档案 附加“ IM通知推送通知Production.p12”。
    证书密码 输入“ intra-mart ”,然后单击“从文件读取认证信息”。
    ../../_images/notice_v2_ios_5.png
  6. 该应用程序已添加。
    检查“ ARN”。
    写下编辑配置文件时所需的字符串。
    ../../_images/notice_v2_ios_6.png

11.4.3.3。编辑IM-Notice Mobile设置文件

IM-Juggling <(项目名称)/ conf>下的im-notice-mobile-config.xml输出,然后执行以下设置。
  • <代理>

    1. 如果您使用代理连接到Amazon SNS,请进行设置。

      <代理 启用=“真”>
          <host> </ host>
          <端口 xsi:无=“真”> </端口> <!-指定端口号时,删除xsi:nil =“ true”。 ->
          <username> </ username>
          <password> </ password>
          <工作站> </工作站>
          <domain> </ domain>
      </ proxy>
      
  • <asns>

    1. 在<asns>的name属性中设置一个任意名称。

      <asns 名称=“ asns-apns”>
      
    2. <端点>

      • 设置与Amazon SNS区域相对应的终端。
        <endpoint> sns.ap-northeast-1.amazonaws.com </端点>
        

        注解

        如果区域是亚太地区(东京),则终结点为sns.ap-northeast-1.amazonaws.com。
    3. <platform-application-arn>

      <platform-application-arn> arn:aws:sns:ap-northeast-1:XXXXXXXXXXXX:app / APNS / IM-Notice_APNS </ platform-application-arn>
      
    4. <访问键>

      • 设置访问密钥。
    5. <秘钥>

      • 设置一个秘密密钥。

      注解

      您可以在AWS Identity and Access Management(IAM)中创建访问密钥和秘密密钥。
      ../../_images/notice_access_key.png
  • <push type =” ios” />

    1. 在引擎属性的<asns>名称属性中指定设置的名称。

      <推 类型=“ ios” 引擎=“ asns-apns” />
      

11.4.3.4。更新P12证书文件

如果P12证书文件(IM-Notice推送通知Production.p12)过期或发布了新的P12证书文件,请对其进行更新。如果您使用的P12证书文件的过期日期已过期,则不会收到通知,因此请在过期日期过期之前更新到新的P12证书文件。

  1. 从我们网站下载库中获取最新的P12证书文件。

  2. 登录到Amazon SNS
    ../../_images/notice_v2_ios_1.png
  3. 请选择一个地区。
    ../../_images/notice_v2_ios_2.png
  4. 请选择一项服务。
    ../../_images/notice_v2_ios_3.png
  5. 从“移动”-“推送通知”中选择应用程序,然后单击“编辑”。
    ../../_images/notice_v2_ios_7.png
  6. 填写下面的表格,然后单击“保存更改”。
    推送证书类型 选择“ iOS推送证书”。
    选择档案 附加“ IM通知推送通知Production.p12”。
    证书密码 输入“ intra-mart ”,然后单击“从文件读取认证信息”。
    ../../_images/notice_v2_ios_8.png

11.4.4。手机通知功能(Android版)

配置使用移动通知功能的设置。以下三种配置类型可用于通知Android。

注解

通过使用Amazon SNS的结合,或设备的令牌列表是推送通知的目标,在亚马逊SNS的状态(启用或禁用) 一览表即可。
此外,当同时使用Android和iOS时,可以使用Amazon SNS进行集中管理。

注意

FCM(Firebase云消息传递)不能在中国使用。如果要在中国使用通知功能,请使用百度。

11.4.4.1。使用FCM时

如果要使用FCM通知Android,请进行以下设置。

11.4.4.1.1。FCM设置

设置FCM。

  1. 登录到Firebase控制台
  2. 创建一个项目。
    ../../_images/notice_android_fcm_1.png
  3. 填写下面的表格,然后单击继续。

    项目 说明
    项目名称 输入任何名称。
    专案编号 输入任何ID。
    ../../_images/notice_android_fcm_2.png
  4. 禁用“ Google Analytics(分析)”,然后单击“创建项目”。
    (如果您使用Google Analytics(分析),请启用它并进行必要的设置。)
    ../../_images/notice_android_fcm_3.png
  5. 项目准备就绪后,单击继续。
    ../../_images/notice_android_fcm_4.png
  6. 单击创建的项目。
    ../../_images/notice_android_fcm_5.png
  7. 将Android应用添加到您的项目。点击“添加Android应用程序”图标。
    ../../_images/notice_android_fcm_6.png
  8. 填写下面的表格,然后单击“注册应用程序”。

    项目 说明
    Android套件名称 jp.co.intra_mart.system.notice.android
    ../../_images/notice_android_fcm_7.png
  9. 单击“下一步”,然后继续执行步骤4。
    ../../_images/notice_android_fcm_8.png
  10. 单击“转到控制台”。
    ../../_images/notice_android_fcm_9.png
  11. 从项目概述中检查设置。
    单击项目概述中的齿轮图标,然后单击“设置项目”。
    ../../_images/notice_android_fcm_10.png
  12. 检查项目的项目ID和Web API密钥。
    写下编辑配置文件时所需的字符串。
    ../../_images/notice_android_fcm_11.png
  13. 我的应用程序-检查您的Android应用程序的应用程序ID。
    写下编辑配置文件时所需的字符串。
    ../../_images/notice_android_fcm_12.png
  14. 转到“云消息传递”选项卡,然后检查项目凭据的服务器密钥和发件人ID。
    写下编辑配置文件时所需的字符串。
    ../../_images/notice_android_fcm_13.png

11.4.4.1.2。编辑IM-Notice Mobile设置文件

IM-Juggling <(项目名称)/ conf>下的im-notice-mobile-config.xml输出,然后执行以下设置。
  • <代理>

    1. 请配置是否使用代理连接到Firebase Cloud Messaging。

      <代理 启用=“真”>
          <host> </ host>
          <端口 xsi:无=“真”> </端口> <!-指定端口号时,删除xsi:nil =“ true”。 ->
          <username> </ username>
          <password> </ password>
          <工作站> </工作站>
          <domain> </ domain>
      </ proxy>
      
  • <fcm>

    1. 在<fcm> name属性中设置一个任意名称。

      <fcm 名称=“ fcm”>
      
    2. <项目编号>

      • 设置您的Firebase项目的项目ID。
    3. <application-id>

      • 请设置Android应用的应用ID。
    4. <api-key>

      • 为您的Firebase项目设置Web API密钥。
    5. <服务器密钥>

      • 设置云消息传递服务器密钥。
    6. <发件人ID>

      • 设置云消息的发件人ID。

      注解

      有关如何检查每个项目,请参阅FCM设置
  • <push type =“ android” />

    1. 对于engine属性,指定在<fcm> name属性中设置的名称。
    <推 类型=“ android” 引擎=“ fcm” />
    
  • <最大推送对象长度>

    1. 请设置接收推送通知时标题显示的最大字符数。
    <max-push-subject-length> 30 </ max-push-subject-length>
    
  • <最大推动体长>

    1. 设置接收推送通知时显示的文本的最大字符数。
    <max-push-body-length> 70 </ max-push-body-length>
    

11.4.4.2。使用FCM + Amazon SNS时

如果要使用FCM和Amazon SNS通知Android,请配置以下设置。

11.4.4.2.1。FCM设置

设置FCM。

注解

有关FCM设置方法,请参阅FCM设置

11.4.4.2.2。Amazon SNS设置

设置Amazon SNS。

  1. 登录到Amazon SNS
    ../../_images/notice_android_asns_1.png
  2. 请选择一个地区。
    ../../_images/notice_android_asns_2.png
  3. 请选择一项服务。
    ../../_images/notice_android_asns_3.png
  4. 从“移动”-“推送通知”中单击“创建平台应用程序”。
    ../../_images/notice_android_asns_4.png
  5. 填写下面的表格,然后单击“创建平台应用程序”。

    项目 说明
    申请名称 输入任何名称。
    推送通知平台 选择Firebase Cloud Messaging(FCM)。
    API密钥 输入在FCM设置中创建的服务器密钥。
    ../../_images/notice_android_asns_5.png

  6. 该应用程序已添加。
    检查“ ARN”。
    写下编辑配置文件时所需的字符串。
    ../../_images/notice_android_asns_6.png

11.4.4.2.3。编辑IM-Notice Mobile设置文件

IM-Juggling <(项目名称)/ conf>下的im-notice-mobile-config.xml输出,然后执行以下设置。
  • <代理>

    1. 如果您使用代理连接到Firebase Cloud Messaging或Amazon SNS,请进行设置。

      <代理 启用=“真”>
          <host> </ host>
          <端口 xsi:无=“真”> </端口> <!-指定端口号时,删除xsi:nil =“ true”。 ->
          <username> </ username>
          <password> </ password>
          <工作站> </工作站>
          <domain> </ domain>
      </ proxy>
      
  • <asns>

    1. 在<asns>的name属性中设置一个任意名称。

      <asns 名称=“ asns-fcm”>
      
    2. <端点>

      • 设置与Amazon SNS区域相对应的终端。
        <endpoint> sns.ap-northeast-1.amazonaws.com </端点>
        

        注解

        如果区域是“亚太地区(东京)”,则端点是“ sns.ap-northeast-1.amazonaws.com”。
    3. <platform-application-arn>

      • 设置应用程序ARN。

        注解

        请参阅Amazon SNS设置以了解如何检查应用程序ARN。
    4. <访问键>

      • 设置访问密钥。
    5. <秘钥>

      • 设置一个秘密密钥。

      注解

      您可以在AWS Identity and Access Management(IAM)中创建访问密钥和秘密密钥。
      ../../_images/notice_access_key.png
    6. <fcm-project-id>

      • 设置您的Firebase项目的项目ID。
    7. <fcm-application-id>

      • 请设置Android应用的应用ID。
    8. <fcm-api-key>

      • 为您的Firebase项目设置Web API密钥。
    9. <fcm-sender-id>

      • 设置Firebase云消息传递的发件人ID。

      注解

      有关如何检查Firebase设置信息(例如项目ID)的信息,请参阅FCM设置
  • <push type =“ android” />

    1. 在引擎属性的<asns>名称属性中指定设置的名称。

      <推 类型=“ android” 引擎=“ asns-fcm” />
      
  • <最大推送对象长度>

    1. 请设置接收推送通知时标题显示的最大字符数。
    <max-push-subject-length> 30 </ max-push-subject-length>
    
  • <最大推动体长>

    1. 设置接收推送通知时显示的文本的最大字符数。
    <max-push-body-length> 70 </ max-push-body-length>
    

11.4.4.3。使用百度+ Amazon SNS时

如果要使用百度和Amazon SNS通知Android,请进行以下设置。

11.4.4.3.1。百度配置

配置百度设置。

11.4.4.3.1.1。创建一个百度账号。
  1. 百度门户上单击“注册”。
    ../../_images/notice_android_baidu_1.png
  2. 单击“即时笔记本”。
    ../../_images/notice_android_baidu_2.png
  3. 输入“ Hand / E-box(电话,电子邮件地址)”,“ Password(密码)”和“验证码(验证码)”,然后单击“ Notebook”。
    ../../_images/notice_android_baidu_3.png
  4. 您输入的电子邮件将显示与以下页面相似的页 ,表明已发送了一个链接来激活您的百度账号 。
    ../../_images/notice_android_baidu_4.png
  5. 从收到的电子邮件中打开百度激活电子邮件,然后单击激活链接以激活您的百度账号 。
    ../../_images/notice_android_baidu_5.png
11.4.4.3.1.2。注册为百度开发者。
  1. 登录到百度门户
  2. 点击“更多>>”。
    ../../_images/notice_android_baidu_6.png
  3. 单击“站长服开发者服务”下的“百度开服务平台”。
    ../../_images/notice_android_baidu_7.png
  4. 从右上方的菜单中,单击“ Notebooker”。
    ../../_images/notice_android_baidu_8.png
  5. 输入“人的名字和姓氏(名字)”,“人的信息(描述)”和“电话号码(电话号码)”,然后单击“提交”(发送确认码)。
    国际电话号码必须包含国家/地区代码。例如,日语电话号码是(81)1234567890。
    ../../_images/notice_android_baidu_9.png
  6. 您将收到类似于以下内容的验证码:
    ../../_images/notice_android_baidu_10.png
  7. 输入您在“验证码”中收到的确认码,然后单击“完成”。
    ../../_images/notice_android_baidu_11.png
11.4.4.3.1.3。创建一个百度云项目。
  1. 登录到百度门户
  2. 点击“更多>>”。
    ../../_images/notice_android_baidu_6.png
  3. 单击“站长服开发者服务”下的“百度开服务平台”。
    ../../_images/notice_android_baidu_7.png
  4. 单击“管理限制”-“个人服装管理”。
    ../../_images/notice_android_baidu_12.png
  5. 点击“创建施工过程”。
    ../../_images/notice_android_baidu_13.png
  6. 输入“应用程序名称”,然后单击“创建”。
    ../../_images/notice_android_baidu_14.png
  7. 显示“ API密钥”和“秘密密钥”。写下来供以后使用。
    ../../_images/notice_android_baidu_15.png

11.4.4.3.2。Amazon SNS设置

设置Amazon SNS。

  1. 登录到Amazon SNS
    ../../_images/notice_android_baidu_asns_1.png
  2. 请选择一个地区。
    ../../_images/notice_android_baidu_asns_2.png
  3. 从“应用程序”中选择“创建平台应用程序”。
    ../../_images/notice_android_baidu_asns_3.png
  4. 在表单中输入以下信息,然后单击“创建平台应用程序”。

    项目 说明
    申请名称 输入任何名称。
    推送通知平台 选择“中国Android版百度云推送”。
    API密钥 输入在百度设置中创建的API密钥。
    客户机密 输入在百度设置中创建的密钥。
    ../../_images/notice_android_baidu_asns_4.png

  5. 该应用程序已添加到“应用程序”中。
    ../../_images/notice_android_baidu_asns_5.png
  6. 检查“应用程序ARN”。
    写下编辑配置文件时所需的字符串。
    ../../_images/notice_android_baidu_asns_6.png

11.4.4.3.3。编辑IM-Notice Mobile设置文件

IM-Juggling <(项目名称)/ conf>下的im-notice-mobile-config.xml输出,然后执行以下设置。
  • <代理>

    1. 如果您使用代理连接到Amazon SNS,请进行设置。

      <代理 启用=“真”>
          <host> </ host>
          <端口 xsi:无=“真”> </端口> <!-指定端口号时,删除xsi:nil =“ true”。 ->
          <username> </ username>
          <password> </ password>
          <工作站> </工作站>
          <domain> </ domain>
      </ proxy>
      
  • <asns>

    1. 在<asns>的name属性中设置一个任意名称。

      <asns 名称=“ asns-百度”>
      
    2. <端点>

      • 设置与Amazon SNS区域相对应的终端。
        <endpoint> sns.ap-northeast-1.amazonaws.com </端点>
        

        注解

        如果区域是“亚太地区(东京)”,则端点是“ sns.ap-northeast-1.amazonaws.com”。
    3. <platform-application-arn>

      • 设置应用程序ARN。

        注解

        请参阅Amazon SNS设置以了解如何检查应用程序ARN。
    4. <访问键>

      • 设置访问密钥。
    5. <秘钥>

      • 设置一个秘密密钥。

      注解

      您可以在AWS Identity and Access Management(IAM)中创建访问密钥和秘密密钥。
      ../../_images/notice_access_key.png
    6. <baidu-api-key>

      • 请设置百度API密钥。

      注解

      请参阅百度设置以了解如何检查百度API密钥。
  • <push type =“ android” />

    1. 在引擎属性的<asns>名称属性中指定设置的名称。

      <推 类型=“ android” 引擎=“ asns-百度” />
      
  • <最大推送对象长度>

    1. 请设置接收推送通知时标题显示的最大字符数。
    <max-push-subject-length> 30 </ max-push-subject-length>
    
  • <最大推动体长>

    1. 设置接收推送通知时显示的文本的最大字符数。
    <max-push-body-length> 70 </ max-push-body-length>