From 874c96a4ad28175a968ad397819d0c07a5cbad4e Mon Sep 17 00:00:00 2001 From: xinfengkun Date: Wed, 19 Jul 2023 18:08:44 +0800 Subject: [PATCH] =?UTF-8?q?[sweeper320][adas]=E4=BA=91=E6=8E=A7=E6=B8=85?= =?UTF-8?q?=E6=89=AB=E8=BD=A6=E6=B7=BB=E5=8A=A0=E4=BA=91=E7=AB=AF=E4=B8=8B?= =?UTF-8?q?=E5=8F=91=E4=BB=BB=E5=8A=A1=E6=9A=82=E5=81=9C/=E6=81=A2?= =?UTF-8?q?=E5=A4=8D=E6=8C=87=E4=BB=A4=E5=88=B0pad=EF=BC=88type:=20100010?= =?UTF-8?q?=EF=BC=89=E6=94=B6=E5=8F=91=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sweepercloud/model/SweeperTaskModel.java | 8 +++- .../autopilot/MoGoAutopilotControlProvider.kt | 15 +++++- .../autopilot/adapter/MoGoAdasListenerImpl.kt | 16 ++++++- .../IMoGoAutopilotControlProvider.kt | 13 +++++- .../IMoGoSweeperFutianCloudTaskListener.kt | 14 +++++- .../CallerAutoPilotControlManager.kt | 14 +++++- ...erSweeperFutianCloudTaskListenerManager.kt | 18 +++++++- .../src/main/proto/sweeper/README.md | 25 ++++++++++ .../proto/sweeper/sweeper_cloud_task.proto | 1 + .../sweeper_task_cloud_suspend_resume.proto | 40 ++++++++++++++++ .../sweeper/sweeper_task_suspend_resume.proto | 2 +- .../zhidao/support/adas/high/AdasChannel.java | 23 ++++++++-- .../zhidao/support/adas/high/AdasManager.java | 22 +++++++-- .../support/adas/high/IAdasNetCommApi.java | 17 +++++-- .../support/adas/high/OnAdasListener.java | 17 +++++-- .../high/msg/SweeperCloudTaskMessage.java | 46 +++++++++++-------- 16 files changed, 248 insertions(+), 43 deletions(-) create mode 100644 libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_task_cloud_suspend_resume.proto diff --git a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/model/SweeperTaskModel.java b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/model/SweeperTaskModel.java index 242bd5b5e7..b4433104d2 100644 --- a/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/model/SweeperTaskModel.java +++ b/OCH/sweeper/sweeper-cloud/src/main/java/com/mogo/och/sweepercloud/model/SweeperTaskModel.java @@ -42,9 +42,10 @@ import com.mogo.och.sweepercloud.util.SweeperCloudTaskUtils; import com.zhjt.mogo.adas.data.sweeper.SweeperCloudTask; import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable; import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask; -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.big.SweeperBigTaskStatus; +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm; +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.status.SweeperTaskStatus; import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop; @@ -408,6 +409,11 @@ public class SweeperTaskModel implements IMoGoSweeperFutianCloudTaskListener, IM } } + @Override + public void onSweeperFutianCloudTaskCloudSuspendResume(@NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperTaskCloudSuspendResume.BigTaskActionPush bigTaskActionPush) { + + } + @Override public void onSweeperFutianCleanSystemState(@NonNull ChassisStatesOuterClass.SweeperFuTianTaskSystemStates cleanSystemState) { if (cleanSystemState == null) { diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt index 876a5a4af2..826b9fd681 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt @@ -61,7 +61,8 @@ import com.zhjt.mogo.adas.data.AdasConstants import com.zhjt.mogo.adas.data.bean.MogoReport import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop import com.zhjt.service.chain.ChainLog @@ -1002,6 +1003,18 @@ class MoGoAutopilotControlProvider : return AdasManager.getInstance().sendSweeperAutopilotBootable(reqNo, isBootable) } + /** + * pad收到云端下发暂停恢复响应 + * 10、云端下发任务暂停/恢复指令到pad(type: 100010)sweeper_task_cloud_suspend_resume.proto/BigTaskActionResp + * + * @param reqNo 请求编号 + * @param bigTaskActionResp 参数 + * @return boolean + */ + override fun sendSweeperCloudSuspendResumeTaskResp(reqNo: String, bigTaskActionResp: SweeperTaskCloudSuspendResume.BigTaskActionResp): Boolean { + return AdasManager.getInstance().sendSweeperCloudSuspendResumeTaskResp(reqNo, bigTaskActionResp) + } + override fun setIsDrawPointCloud(isDrawPointCloud: Boolean) { if (isDrawPointCloud) { AdasManager.getInstance().subscribeInterface( diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt index ca07517c0c..c7aaed986d 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/adapter/MoGoAdasListenerImpl.kt @@ -58,8 +58,9 @@ import com.zhjt.mogo.adas.data.bean.AutopilotStatistics import com.zhjt.mogo.adas.data.sweeper.SweeperCloudTask import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume import com.zhjt.mogo.adas.data.sweeper.task.big.SweeperBigTaskStatus +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm import com.zhjt.mogo.adas.data.sweeper.task.status.SweeperTaskStatus import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop @@ -646,6 +647,19 @@ class MoGoAdasListenerImpl : OnAdasListener { CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudBigTaskStatus(messageType, reqNo, sysTime, bigTaskStatusPush) } + /** + * 10、云端下发任务暂停/恢复指令到pad(type: 100010)-> sweeper_task_cloud_suspend_resume.proto + * + * @param header 头 + * @param messageType 消息类型 + * @param reqNo 请求编号 + * @param sysTime 当前时间戳 + * @param bigTaskActionPush 数据 + */ + override fun onSweeperFutianCloudTaskCloudSuspendResume(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, bigTaskActionPush: SweeperTaskCloudSuspendResume.BigTaskActionPush?) { + CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudTaskCloudSuspendResume(messageType, reqNo, sysTime, bigTaskActionPush) + } + /** * 清扫车云端任务未知类型 * diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotControlProvider.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotControlProvider.kt index 88d8661d52..9397f3bdf8 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotControlProvider.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotControlProvider.kt @@ -8,10 +8,11 @@ import com.mogo.eagle.core.function.api.base.IMoGoFunctionServerProvider import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable.IsBootable import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask.GetTaskReq import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask.StartTaskResp -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume.SuspendResumeTaskReq +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume.SuspendResumeTaskReq import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm.TaskConfirmResp import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop.StopTaskResp import com.zhjt.mogo.adas.data.AdasConstants +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume.BigTaskActionResp /** * @author xiaoyuzhou @@ -399,6 +400,16 @@ interface IMoGoAutopilotControlProvider : IMoGoFunctionServerProvider { */ fun sendSweeperAutopilotBootable(reqNo: String, isBootable: IsBootable): Boolean + /** + * pad收到云端下发暂停恢复响应 + * 10、云端下发任务暂停/恢复指令到pad(type: 100010)sweeper_task_cloud_suspend_resume.proto/BigTaskActionResp + * + * @param reqNo 请求编号 + * @param bigTaskActionResp 参数 + * @return boolean + */ + fun sendSweeperCloudSuspendResumeTaskResp(reqNo: String, bigTaskActionResp: BigTaskActionResp): Boolean + /** * 打开点云绘制 * diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoSweeperFutianCloudTaskListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoSweeperFutianCloudTaskListener.kt index f40c2ed6bc..55dba62ef9 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoSweeperFutianCloudTaskListener.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoSweeperFutianCloudTaskListener.kt @@ -3,12 +3,12 @@ package com.mogo.eagle.core.function.api.autopilot import com.zhjt.mogo.adas.data.sweeper.SweeperCloudTask import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable.IsBootableResp import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume.SuspendResumeTaskResp import com.zhjt.mogo.adas.data.sweeper.task.big.SweeperBigTaskStatus.BigTaskStatusPush +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume.BigTaskActionPush import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm.TaskConfirm +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume.SuspendResumeTaskResp import com.zhjt.mogo.adas.data.sweeper.task.status.SweeperTaskStatus.TaskStatusPush import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop.StopTaskReq -import mogo.telematics.pad.MessagePad /** * 清扫车(福田)云端任务接口 @@ -87,6 +87,16 @@ interface IMoGoSweeperFutianCloudTaskListener { */ fun onSweeperFutianCloudBigTaskStatus(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, bigTaskStatusPush: BigTaskStatusPush?) + /** + * 10、云端下发任务暂停/恢复指令到pad(type: 100010)-> sweeper_task_cloud_suspend_resume.proto + * + * @param messageType 消息类型 + * @param reqNo 请求编号 + * @param sysTime 当前时间戳 + * @param bigTaskActionPush 数据 + */ + fun onSweeperFutianCloudTaskCloudSuspendResume(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, bigTaskActionPush: BigTaskActionPush?) + /** * 清扫车云端任务未知类型 * diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotControlManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotControlManager.kt index b0e9ea0777..8524f6f49b 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotControlManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotControlManager.kt @@ -17,10 +17,11 @@ import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable.IsBootable import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask.GetTaskReq import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask.StartTaskResp -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume.SuspendResumeTaskReq +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume.SuspendResumeTaskReq import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm.TaskConfirmResp import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop.StopTaskResp import com.zhjt.mogo.adas.data.AdasConstants +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume.BigTaskActionResp import com.zhjt.service.chain.ChainLog import com.zhjt.service_biz.BizConfig import kotlin.random.Random @@ -550,6 +551,17 @@ object CallerAutoPilotControlManager { return providerApi?.sendSweeperAutopilotBootable(reqNo, isBootable) ?: false } + /** + * pad收到云端下发暂停恢复响应 + * 10、云端下发任务暂停/恢复指令到pad(type: 100010)sweeper_task_cloud_suspend_resume.proto/BigTaskActionResp + * + * @param reqNo 请求编号 + * @param bigTaskActionResp 参数 + * @return boolean + */ + fun sendSweeperCloudSuspendResumeTaskResp( reqNo: String, bigTaskActionResp: BigTaskActionResp): Boolean { + return providerApi?.sendSweeperCloudSuspendResumeTaskResp(reqNo, bigTaskActionResp) ?: false + } /** * 打开点云绘制 diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerSweeperFutianCloudTaskListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerSweeperFutianCloudTaskListenerManager.kt index bee2a3d1f1..ba6a151961 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerSweeperFutianCloudTaskListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerSweeperFutianCloudTaskListenerManager.kt @@ -5,8 +5,9 @@ import com.mogo.eagle.core.function.call.base.CallerBase import com.zhjt.mogo.adas.data.sweeper.SweeperCloudTask import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume import com.zhjt.mogo.adas.data.sweeper.task.big.SweeperBigTaskStatus +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm import com.zhjt.mogo.adas.data.sweeper.task.status.SweeperTaskStatus import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop @@ -123,6 +124,21 @@ object CallerSweeperFutianCloudTaskListenerManager : CallerBase sweeper_task_cloud_suspend_resume.proto + * + * @param messageType 消息类型 + * @param reqNo 请求编号 + * @param sysTime 当前时间戳 + * @param bigTaskActionPush 数据 + */ + fun invokeSweeperFutianCloudTaskCloudSuspendResume(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, bigTaskActionPush: SweeperTaskCloudSuspendResume.BigTaskActionPush?) { + M_LISTENERS.forEach { + val listener = it.value + listener.onSweeperFutianCloudTaskCloudSuspendResume(messageType, reqNo, sysTime, bigTaskActionPush) + } + } + /** * 清扫车云端任务未知类型 * diff --git a/libraries/mogo-adas-data/src/main/proto/sweeper/README.md b/libraries/mogo-adas-data/src/main/proto/sweeper/README.md index a022d1bbed..f4a74e7647 100644 --- a/libraries/mogo-adas-data/src/main/proto/sweeper/README.md +++ b/libraries/mogo-adas-data/src/main/proto/sweeper/README.md @@ -12,6 +12,7 @@ |7、pad主动拉取当前车辆正在执行任务的完整信息(type:100007)|sweeper/sweeper_task.proto| |8、接管后回自驾-pad上报状态给云端 云端下发启动自驾(type: 100008)|sweeper/sweeper_bootable.proto| |9、云端下发pad大任务状态(type: 100009)|sweeper/sweeper_big_task_status.proto| +|10、云端下发任务暂停/恢复指令到pad(type: 100010)|sweeper/sweeper_task_cloud_suspend_resume.proto| # 接口使用说明 ## 回调接口类:IMoGoSweeperFutianCloudTaskListener @@ -181,4 +182,28 @@ fun onSweeperFutianCloudBigTaskStatus(messageType: SweeperCloudTask.MessageType, 客户端回复: 无 +~~~ + +~~~ +服务端发: +/** + * 10、云端下发任务暂停/恢复指令到pad(type: 100010) + * + * @param messageType 消息类型 + * @param reqNo 请求编号 + * @param sysTime 当前时间戳 + * @param bigTaskActionPush 数据 + */ +fun onSweeperFutianCloudTaskCloudSuspendResume(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, bigTaskActionPush: BigTaskActionPush?) + +客户端回复: + /** + * pad收到云端下发暂停恢复响应 + * 10、云端下发任务暂停/恢复指令到pad(type: 100010) + * + * @param reqNo 请求编号 + * @param bigTaskActionResp 参数 + * @return boolean + */ +CallerAutoPilotControlManager.INSTANCE.sendSweeperSuspendResumeTaskReq() ~~~ \ No newline at end of file diff --git a/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_cloud_task.proto b/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_cloud_task.proto index a0a9bab56b..d4b9e2bb57 100644 --- a/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_cloud_task.proto +++ b/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_cloud_task.proto @@ -16,6 +16,7 @@ enum MessageType PadSendGetTaskReq = 100007; //7、pad主动拉取当前车辆正在执行任务的完整信息(type:100007)-> sweeper_task.proto PadSendBootable = 100008; //8、接管后回自驾-pad上报状态给云端 云端下发启动自驾(type: 100008)-> sweeper_bootable.proto CloudPushBigTaskStatus = 100009; //9、云端下发pad大任务状态(type: 100009)-> sweeper_big_task_status.proto + CloudPushTaskSuspendResume = 100010; //10、云端下发任务暂停/恢复指令到pad(type: 100010)-> sweeper_task_cloud_suspend_resume.proto } //云下行消息 diff --git a/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_task_cloud_suspend_resume.proto b/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_task_cloud_suspend_resume.proto new file mode 100644 index 0000000000..72e093880e --- /dev/null +++ b/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_task_cloud_suspend_resume.proto @@ -0,0 +1,40 @@ +syntax = "proto3"; +package com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r; + + +/**** 10、云端下发任务暂停/恢复指令到pad(type: 100010) ****/ + +//10.1、请求信息 + +// 指令类型 +enum ActionType { + DEFAULT_TYPE = 0; // 无效值 + SUSPENDED = 1; // 暂停 + RESUME = 2; //恢复 +} + +message BigTaskActionPush { + string sn = 1;// sn + string taskId = 2;// 大任务编号 + ActionType action = 3;// 指令类型 + uint64 systemTime = 4; // 时间戳 + bool isPop = 5; // 是否弹窗 +} + + +//10.2、响应信息 + +// 响应状态 +enum Code { + DEFAULT_CODE = 0; // 无效值 + RECEIVED = 1; // 收到指令 +} + +/** +开始大任务响应 +*/ +message BigTaskActionResp { + string sn = 1;// sn + string taskId = 2;// 大任务编号 + Code code = 3; //响应状态 +} diff --git a/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_task_suspend_resume.proto b/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_task_suspend_resume.proto index 20bdb949a4..db18a5dd84 100644 --- a/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_task_suspend_resume.proto +++ b/libraries/mogo-adas-data/src/main/proto/sweeper/sweeper_task_suspend_resume.proto @@ -1,5 +1,5 @@ syntax = "proto3"; -package com.zhjt.mogo.adas.data.sweeper.task; +package com.zhjt.mogo.adas.data.sweeper.task.s_r; import "sweeper/sweeper_common.proto"; diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java index 4b12882544..07e9702efe 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java @@ -5,7 +5,6 @@ import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_CODE_ADAS_INIT; import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_CODE_ADAS_SEND_GLOBAL_PATH; import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_CODE_ADAS_SEND_SYSTEM_CMD; import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_CODE_ADAS_SEND_TRAJECTORY_DOWNLOAD; -import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_CODE_ADAS_START_AUTOPILOT; import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_CODE_CONNECT_ADDRESS; import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_CODE_STATUS_CHANGE_REASON; import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_SOURCE_ADAS; @@ -16,13 +15,11 @@ import android.os.Handler; import android.os.Message; import android.os.SystemClock; import android.text.TextUtils; -import android.util.Log; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.google.protobuf.InvalidProtocolBufferException; -import com.zhjt.mogo.adas.data.bean.AdasParam; import com.zhidao.support.adas.high.bean.VersionCompatibility; import com.zhidao.support.adas.high.common.AutopilotReview; import com.zhidao.support.adas.high.common.ByteUtil; @@ -47,12 +44,14 @@ import com.zhidao.support.adas.high.subscribe.SubscribeInterface; import com.zhidao.support.adas.high.subscribe.SubscribeInterfaceOptions; import com.zhidao.support.adas.high.thread.DispatchHandler; import com.zhjt.mogo.adas.data.AdasConstants; +import com.zhjt.mogo.adas.data.bean.AdasParam; import com.zhjt.mogo.adas.data.bean.AutopilotStatistics; import com.zhjt.mogo.adas.data.sweeper.SweeperCloudTask; import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable; import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask; -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume; +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm; +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop; import com.zhjt.service.chain.ChainLog; @@ -68,8 +67,8 @@ import java.util.concurrent.atomic.AtomicInteger; import bag_manager.BagManagerOuterClass; import chassis.SpecialVehicleTaskCmdOuterClass; import common.HeaderOuterClass; -import mogo.telematics.ParamSetCmdOuterClass; import function_state_management.FSMStatusReasonQueryOuterClass; +import mogo.telematics.ParamSetCmdOuterClass; import mogo.telematics.pad.MessagePad; import okio.ByteString; @@ -1748,6 +1747,7 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec ParamSetCmdOuterClass.ParamSetCmd req = builder.build(); return sendPBMessage(MessageType.TYPE_SEND_SET_PARAM_REQ_V2.typeCode, req.toByteArray()); } + /** * FSM状态原因查询 * 当FSMFunctionStates的类型是XXX_DRIVING_OFF时查询OFF的原因 @@ -1866,5 +1866,18 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec public boolean sendSweeperAutopilotBootable(@NonNull String reqNo, @NonNull SweeperBootable.IsBootable isBootable) { return sendSweeperCloudTaskCmd(SweeperCloudTask.MessageType.PadSendBootable, reqNo, isBootable.toByteString()); } + + /** + * pad收到云端下发暂停恢复响应 + * 10、云端下发任务暂停/恢复指令到pad(type: 100010)sweeper_task_cloud_suspend_resume.proto/BigTaskActionResp + * + * @param reqNo 请求编号 + * @param bigTaskActionResp 参数 + * @return boolean + */ + @Override + public boolean sendSweeperCloudSuspendResumeTaskResp(@NonNull String reqNo, @NonNull SweeperTaskCloudSuspendResume.BigTaskActionResp bigTaskActionResp) { + return sendSweeperCloudTaskCmd(SweeperCloudTask.MessageType.CloudPushTaskSuspendResume, reqNo, bigTaskActionResp.toByteString()); + } } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java index 53e041eb9f..bb0e5980a5 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java @@ -5,7 +5,6 @@ import android.text.TextUtils; import androidx.annotation.NonNull; -import com.zhjt.mogo.adas.data.bean.AdasParam; import com.zhidao.support.adas.high.bean.VersionCompatibility; import com.zhidao.support.adas.high.common.AppPreferenceHelper; import com.zhidao.support.adas.high.common.Constants; @@ -13,12 +12,14 @@ import com.zhidao.support.adas.high.common.CupidLogUtils; import com.zhidao.support.adas.high.common.Define; import com.zhidao.support.adas.high.common.MessageType; import com.zhidao.support.adas.high.common.ReceiveTimeoutManager; +import com.zhjt.mogo.adas.data.AdasConstants; +import com.zhjt.mogo.adas.data.bean.AdasParam; import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable; import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask; -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume; +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm; +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop; -import com.zhjt.mogo.adas.data.AdasConstants; import java.util.HashSet; import java.util.List; @@ -929,7 +930,7 @@ public class AdasManager implements IAdasNetCommApi { * 参数获取请求 * 结果回调{@link OnAdasListener#onGetParamResp(MessagePad.Header, MessagePad.SetParamReq, AdasParam)} * - * @param paramType 参数类型:libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto + * @param paramType 参数类型:libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto * @return boolean */ @Override @@ -1081,6 +1082,19 @@ public class AdasManager implements IAdasNetCommApi { return mChannel != null && mChannel.sendSweeperAutopilotBootable(reqNo, isBootable); } + /** + * pad收到云端下发暂停恢复响应 + * 10、云端下发任务暂停/恢复指令到pad(type: 100010)sweeper_task_cloud_suspend_resume.proto/BigTaskActionResp + * + * @param reqNo 请求编号 + * @param bigTaskActionResp 参数 + * @return boolean + */ + @Override + public boolean sendSweeperCloudSuspendResumeTaskResp(@NonNull String reqNo, @NonNull SweeperTaskCloudSuspendResume.BigTaskActionResp bigTaskActionResp) { + return mChannel != null && mChannel.sendSweeperCloudSuspendResumeTaskResp(reqNo, bigTaskActionResp); + } + /** * 获取工控机固定IP列表 * diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/IAdasNetCommApi.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/IAdasNetCommApi.java index 16a2e8da3c..468095b63c 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/IAdasNetCommApi.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/IAdasNetCommApi.java @@ -6,12 +6,13 @@ import com.zhidao.support.adas.high.bean.VersionCompatibility; import com.zhidao.support.adas.high.common.Constants; import com.zhidao.support.adas.high.common.Define; import com.zhidao.support.adas.high.common.MessageType; +import com.zhjt.mogo.adas.data.AdasConstants; import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable; import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask; -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume; +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm; +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop; -import com.zhjt.mogo.adas.data.AdasConstants; import java.util.List; import java.util.Set; @@ -572,7 +573,7 @@ public interface IAdasNetCommApi { /** * 参数获取请求 * - * @param paramType 参数类型:libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto + * @param paramType 参数类型:libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto * @return boolean */ boolean sendGetParamReq(AdasConstants.MapSystemParamType paramType); @@ -690,6 +691,16 @@ public interface IAdasNetCommApi { */ boolean sendSweeperAutopilotBootable(@NonNull String reqNo, @NonNull SweeperBootable.IsBootable isBootable); + /** + * pad收到云端下发暂停恢复响应 + * 10、云端下发任务暂停/恢复指令到pad(type: 100010)sweeper_task_cloud_suspend_resume.proto/BigTaskActionResp + * + * @param reqNo 请求编号 + * @param bigTaskActionResp 参数 + * @return boolean + */ + boolean sendSweeperCloudSuspendResumeTaskResp(@NonNull String reqNo, @NonNull SweeperTaskCloudSuspendResume.BigTaskActionResp bigTaskActionResp); + // TODO 需求暂停 待讨论 // boolean getRoutes(); diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java index 8caa4165c7..40b79e0859 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java @@ -4,18 +4,18 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.mogo.support.obu.ObuScene; -import com.zhjt.mogo.adas.data.AdasConstants; import com.zhidao.support.adas.high.common.MessageType; import com.zhidao.support.adas.high.common.ProtocolStatus; +import com.zhjt.mogo.adas.data.AdasConstants; import com.zhjt.mogo.adas.data.bean.AdasParam; import com.zhjt.mogo.adas.data.bean.AutopilotStatistics; - import com.zhjt.mogo.adas.data.sweeper.SweeperCloudTask; import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable; import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask; -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.big.SweeperBigTaskStatus; +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm; +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.status.SweeperTaskStatus; import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop; @@ -355,6 +355,17 @@ public interface OnAdasListener { */ void onSweeperFutianCloudBigTaskStatus(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperBigTaskStatus.BigTaskStatusPush bigTaskStatusPush); + /** + * 10、云端下发任务暂停/恢复指令到pad(type: 100010)-> sweeper_task_cloud_suspend_resume.proto + * + * @param header 头 + * @param messageType 消息类型 + * @param reqNo 请求编号 + * @param sysTime 当前时间戳 + * @param bigTaskActionPush 数据 + */ + void onSweeperFutianCloudTaskCloudSuspendResume(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperTaskCloudSuspendResume.BigTaskActionPush bigTaskActionPush); + /** * 清扫车云端任务未知类型 * diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/msg/SweeperCloudTaskMessage.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/msg/SweeperCloudTaskMessage.java index 3f74546c23..2af62348ec 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/msg/SweeperCloudTaskMessage.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/msg/SweeperCloudTaskMessage.java @@ -1,11 +1,9 @@ package com.zhidao.support.adas.high.msg; import android.os.SystemClock; -import android.util.Log; import com.google.protobuf.ByteString; import com.google.protobuf.InvalidProtocolBufferException; -import com.google.protobuf.TextFormat; import com.zhidao.support.adas.high.AdasChannel; import com.zhidao.support.adas.high.OnAdasListener; import com.zhidao.support.adas.high.common.ByteUtil; @@ -14,9 +12,10 @@ import com.zhidao.support.adas.high.protocol.RawData; import com.zhjt.mogo.adas.data.sweeper.SweeperCloudTask; import com.zhjt.mogo.adas.data.sweeper.bootable.SweeperBootable; import com.zhjt.mogo.adas.data.sweeper.task.SweeperTask; -import com.zhjt.mogo.adas.data.sweeper.task.SweeperTaskSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.big.SweeperBigTaskStatus; +import com.zhjt.mogo.adas.data.sweeper.task.cloud.s_r.SweeperTaskCloudSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm; +import com.zhjt.mogo.adas.data.sweeper.task.s_r.SweeperTaskSuspendResume; import com.zhjt.mogo.adas.data.sweeper.task.status.SweeperTaskStatus; import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop; @@ -44,7 +43,7 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { String reqNo = message.getReqNo(); //请求编号,响应请求时,使用请求方的请求编号 long sysTime = message.getSysTime(); //当前时间戳 ByteString payload = message.getPayload(); - Log.i("SweeperCloudTaskMessage", "MsgType=" + (msgType == null ? "null" : msgType.getNumber()) + " reqNo=" + reqNo + " sysTime=" + sysTime); + CupidLogUtils.i("SweeperCloudTaskMessage", "MsgType=" + (msgType == null ? "null" : msgType.getNumber()) + " reqNo=" + reqNo + " sysTime=" + sysTime); boolean isExistPayload = payload != null && !payload.isEmpty(); if (msgType == SweeperCloudTask.MessageType.CloudPushTask || msgType == SweeperCloudTask.MessageType.PadSendGetTaskReq) { //1、云端下发大任务信息(type: 100001)-> sweeper_task.proto @@ -53,8 +52,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { taskInfo = SweeperTask.TaskInfo.parseFrom(payload); } - Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (taskInfo == null ? "null" : - TextFormat.printer().escapingNonAscii(false).printToString(taskInfo))); +// Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (taskInfo == null ? "null" : +// TextFormat.printer().escapingNonAscii(false).printToString(taskInfo))); adasListener.onSweeperFutianCloudTask(header, msgType, reqNo, sysTime, taskInfo); } else if (msgType == SweeperCloudTask.MessageType.CloudPushTaskConfirm) { //2、云端下发子任务,请求pad确认(type:100002)-> sweeper_task_confirm.proto @@ -62,8 +61,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { taskConfirm = SweeperTaskConfirm.TaskConfirm.parseFrom(payload); } - Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (taskConfirm == null ? "null" : - TextFormat.printer().escapingNonAscii(false).printToString(taskConfirm))); +// Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (taskConfirm == null ? "null" : +// TextFormat.printer().escapingNonAscii(false).printToString(taskConfirm))); adasListener.onSweeperFutianCloudTaskConfirm(header, msgType, reqNo, sysTime, taskConfirm); } else if (msgType == SweeperCloudTask.MessageType.CloudPushTaskStatus) { //3、云端下发任务状态到pad(type:100003)-> sweeper_task_status.proto @@ -71,8 +70,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { taskStatusPush = SweeperTaskStatus.TaskStatusPush.parseFrom(payload); } - Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (taskStatusPush == null ? "null" : - TextFormat.printer().escapingNonAscii(false).printToString(taskStatusPush))); +// Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (taskStatusPush == null ? "null" : +// TextFormat.printer().escapingNonAscii(false).printToString(taskStatusPush))); adasListener.onSweeperFutianCloudTaskStatus(header, msgType, reqNo, sysTime, taskStatusPush); } else if (msgType == SweeperCloudTask.MessageType.CloudPushTaskStop) { //4、云端请求pad结束任务(type:100004)-> sweeper_task_stop.proto @@ -80,8 +79,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { stopTaskReq = SweeperTaskStop.StopTaskReq.parseFrom(payload); } - Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (stopTaskReq == null ? "null" : - TextFormat.printer().escapingNonAscii(false).printToString(stopTaskReq))); +// Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (stopTaskReq == null ? "null" : +// TextFormat.printer().escapingNonAscii(false).printToString(stopTaskReq))); adasListener.onSweeperFutianCloudTaskStop(header, msgType, reqNo, sysTime, stopTaskReq); } else if (msgType == SweeperCloudTask.MessageType.PadSendTaskSuspend || msgType == SweeperCloudTask.MessageType.PadSendTaskResume) { //5、pad请求挂起任务(type:100005)-> sweeper_task_suspend_resume.proto @@ -90,8 +89,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { suspendResumeTaskResp = SweeperTaskSuspendResume.SuspendResumeTaskResp.parseFrom(payload); } - Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (suspendResumeTaskResp == null ? "null" : - TextFormat.printer().escapingNonAscii(false).printToString(suspendResumeTaskResp))); +// Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (suspendResumeTaskResp == null ? "null" : +// TextFormat.printer().escapingNonAscii(false).printToString(suspendResumeTaskResp))); adasListener.onSweeperFutianCloudTaskSuspendResume(header, msgType, reqNo, sysTime, suspendResumeTaskResp); } else if (msgType == SweeperCloudTask.MessageType.PadSendBootable) { //8、接管后回自驾-pad上报状态给云端 云端下发启动自驾(type: 100008)-> sweeper_autopilot.proto @@ -99,8 +98,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { isBootableResp = SweeperBootable.IsBootableResp.parseFrom(payload); } - Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (isBootableResp == null ? "null" : - TextFormat.printer().escapingNonAscii(false).printToString(isBootableResp))); +// Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (isBootableResp == null ? "null" : +// TextFormat.printer().escapingNonAscii(false).printToString(isBootableResp))); adasListener.onSweeperFutianCloudBootable(header, msgType, reqNo, sysTime, isBootableResp); } else if (msgType == SweeperCloudTask.MessageType.CloudPushBigTaskStatus) { //9、云端下发pad大任务状态(type: 100009)-> sweeper_big_task_status.proto @@ -108,12 +107,21 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler { if (isExistPayload) { bigTaskStatusPush = SweeperBigTaskStatus.BigTaskStatusPush.parseFrom(payload); } - Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (bigTaskStatusPush == null ? "null" : - TextFormat.printer().escapingNonAscii(false).printToString(bigTaskStatusPush))); +// Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (bigTaskStatusPush == null ? "null" : +// TextFormat.printer().escapingNonAscii(false).printToString(bigTaskStatusPush))); adasListener.onSweeperFutianCloudBigTaskStatus(header, msgType, reqNo, sysTime, bigTaskStatusPush); + } else if (msgType == SweeperCloudTask.MessageType.CloudPushTaskSuspendResume) { + //10、云端下发任务暂停/恢复指令到pad(type: 100010) + SweeperTaskCloudSuspendResume.BigTaskActionPush bigTaskActionPush = null; + if (isExistPayload) { + bigTaskActionPush = SweeperTaskCloudSuspendResume.BigTaskActionPush.parseFrom(payload); + } +// Log.i("SweeperCloudTaskMessage", " msgType=" + msgType + " " + (bigTaskActionPush == null ? "null" : +// TextFormat.printer().escapingNonAscii(false).printToString(bigTaskActionPush))); + adasListener.onSweeperFutianCloudTaskCloudSuspendResume(header, msgType, reqNo, sysTime, bigTaskActionPush); } else { //未知数据类型 - Log.i("SweeperCloudTaskMessage", " 错误数据=" + ByteUtil.byteArrToHex(bytes)); + CupidLogUtils.i("SweeperCloudTaskMessage", " 错误数据=" + ByteUtil.byteArrToHex(bytes)); adasListener.onSweeperFutianCloudTaskUnknown(header, bytes); } }