From f1298a51ae8bbe4d82637283b2cdb3601ee92662 Mon Sep 17 00:00:00 2001 From: heavyrian2012 Date: Wed, 18 Sep 2024 12:50:19 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=B8=BF=E8=92=99=E6=8E=A8?= =?UTF-8?q?=E9=80=81=E5=9B=9E=E8=B0=83=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- broker/config/wildfirechat.conf | 4 ++++ .../src/main/java/cn/wildfirechat/push/PushServer.java | 10 ++++++++-- broker/src/main/java/io/moquette/BrokerConstants.java | 1 + distribution/src/main/resources/wildfirechat.conf | 4 ++++ 4 files changed, 17 insertions(+), 2 deletions(-) diff --git a/broker/config/wildfirechat.conf b/broker/config/wildfirechat.conf index caafd10c..1d97cceb 100755 --- a/broker/config/wildfirechat.conf +++ b/broker/config/wildfirechat.conf @@ -341,6 +341,10 @@ push.android.server.address http://localhost:8085/android/push ##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!! push.ios.server.address http://localhost:8085/ios/push +##鸿蒙推送服务器地址,如果不配置会使用android的地址。 +##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!! +push.harmony.server.address http://localhost:8085/harmony/push + #********************************************************************* # 监控配置 #********************************************************************* diff --git a/broker/src/main/java/cn/wildfirechat/push/PushServer.java b/broker/src/main/java/cn/wildfirechat/push/PushServer.java index a59cc5ed..e003ab08 100644 --- a/broker/src/main/java/cn/wildfirechat/push/PushServer.java +++ b/broker/src/main/java/cn/wildfirechat/push/PushServer.java @@ -24,8 +24,7 @@ import win.liyufan.im.Utility; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; -import static io.moquette.BrokerConstants.PUSH_ANDROID_SERVER_ADDRESS; -import static io.moquette.BrokerConstants.PUSH_IOS_SERVER_ADDRESS; +import static io.moquette.BrokerConstants.*; import static win.liyufan.im.HttpUtils.HttpPostType.POST_TYPE_Push; public class PushServer { @@ -47,6 +46,7 @@ public class PushServer { private String androidPushServerUrl; private String iOSPushServerUrl; + private String harmonyPushServerUrl; private PushServer() { } @@ -59,6 +59,10 @@ public class PushServer { this.sessionsStore = sessionsStore; this.androidPushServerUrl = config.getProperty(PUSH_ANDROID_SERVER_ADDRESS); this.iOSPushServerUrl = config.getProperty(PUSH_IOS_SERVER_ADDRESS); + this.harmonyPushServerUrl = config.getProperty(PUSH_HARMONY_SERVER_ADDRESS); + if(StringUtil.isNullOrEmpty(harmonyPushServerUrl)) { + harmonyPushServerUrl = androidPushServerUrl; + } } public void pushMessage(PushMessage pushMessage, String deviceId, String pushContent) { @@ -106,6 +110,8 @@ public class PushServer { if (session.getPlatform() == ProtoConstants.Platform.Platform_iOS || session.getPlatform() == ProtoConstants.Platform.Platform_iPad) { url = iOSPushServerUrl; pushMessage.voipDeviceToken = session.getVoipDeviceToken(); + } else if (session.getPlatform() == ProtoConstants.Platform.Platform_Harmony || session.getPlatform() == ProtoConstants.Platform.Platform_HarmonyPad) { + url = harmonyPushServerUrl; } HttpUtils.httpJsonPost(url, gson.toJson(pushMessage, pushMessage.getClass()), POST_TYPE_Push); } else { diff --git a/broker/src/main/java/io/moquette/BrokerConstants.java b/broker/src/main/java/io/moquette/BrokerConstants.java index 106d0b18..962cef2b 100755 --- a/broker/src/main/java/io/moquette/BrokerConstants.java +++ b/broker/src/main/java/io/moquette/BrokerConstants.java @@ -90,6 +90,7 @@ public final class BrokerConstants { public static final String PUSH_ANDROID_SERVER_ADDRESS = "push.android.server.address"; public static final String PUSH_IOS_SERVER_ADDRESS = "push.ios.server.address"; + public static final String PUSH_HARMONY_SERVER_ADDRESS = "push.harmony.server.address"; public static final String MONITOR_Exception_Event_Address = "monitor.exception_event_address"; diff --git a/distribution/src/main/resources/wildfirechat.conf b/distribution/src/main/resources/wildfirechat.conf index c05a7a17..2813f148 100755 --- a/distribution/src/main/resources/wildfirechat.conf +++ b/distribution/src/main/resources/wildfirechat.conf @@ -336,6 +336,10 @@ push.android.server.address http://localhost:8085/android/push ##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!! push.ios.server.address http://localhost:8085/ios/push +##鸿蒙推送服务器地址,如果不配置会使用android的地址。 +##注意回调是单线程回调,接收服务必须在同一内网,且异步处理快速返回,否则会有延迟问题!! +push.harmony.server.address http://localhost:8085/harmony/push + #********************************************************************* # 监控配置 #*********************************************************************