dev_sweeper310][adas]云控清扫车接收接口添加可空参数类型,添加未知类型回调

This commit is contained in:
xinfengkun
2023-04-06 14:31:36 +08:00
parent 1c46f27af8
commit 1ce857a56f
5 changed files with 102 additions and 36 deletions

View File

@@ -600,6 +600,7 @@ class MoGoAdasListenerImpl : OnAdasListener {
) {
}
/**
* 清扫车后部摄像头视频 10Hz
*
@@ -633,7 +634,7 @@ class MoGoAdasListenerImpl : OnAdasListener {
* @param sysTime 当前时间戳
* @param taskInfo 数据
*/
override fun onSweeperFutianCloudTask(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, taskInfo: SweeperTask.TaskInfo) {
override fun onSweeperFutianCloudTask(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, taskInfo: SweeperTask.TaskInfo?) {
CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudTask(messageType, reqNo, sysTime, taskInfo)
}
@@ -646,7 +647,7 @@ class MoGoAdasListenerImpl : OnAdasListener {
* @param sysTime 当前时间戳
* @param taskConfirm 数据
*/
override fun onSweeperFutianCloudTaskConfirm(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, taskConfirm: SweeperTaskConfirm.TaskConfirm) {
override fun onSweeperFutianCloudTaskConfirm(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, taskConfirm: SweeperTaskConfirm.TaskConfirm?) {
CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudTaskConfirm(messageType, reqNo, sysTime, taskConfirm)
}
@@ -659,7 +660,7 @@ class MoGoAdasListenerImpl : OnAdasListener {
* @param sysTime 当前时间戳
* @param taskStatusPush 数据
*/
override fun onSweeperFutianCloudTaskStatus(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, taskStatusPush: SweeperTaskStatus.TaskStatusPush) {
override fun onSweeperFutianCloudTaskStatus(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, taskStatusPush: SweeperTaskStatus.TaskStatusPush?) {
CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudTaskStatus(messageType, reqNo, sysTime, taskStatusPush)
}
@@ -672,7 +673,7 @@ class MoGoAdasListenerImpl : OnAdasListener {
* @param sysTime 当前时间戳
* @param stopTaskReq 数据
*/
override fun onSweeperFutianCloudTaskStop(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, stopTaskReq: SweeperTaskStop.StopTaskReq) {
override fun onSweeperFutianCloudTaskStop(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, stopTaskReq: SweeperTaskStop.StopTaskReq?) {
CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudTaskStop(messageType, reqNo, sysTime, stopTaskReq)
}
@@ -686,7 +687,7 @@ class MoGoAdasListenerImpl : OnAdasListener {
* @param sysTime 当前时间戳
* @param suspendResumeTaskResp 数据
*/
override fun onSweeperFutianCloudTaskSuspendResume(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, suspendResumeTaskResp: SweeperTaskSuspendResume.SuspendResumeTaskResp) {
override fun onSweeperFutianCloudTaskSuspendResume(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, suspendResumeTaskResp: SweeperTaskSuspendResume.SuspendResumeTaskResp?) {
CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudTaskSuspendResume(messageType, reqNo, sysTime, suspendResumeTaskResp)
}
@@ -699,7 +700,7 @@ class MoGoAdasListenerImpl : OnAdasListener {
* @param sysTime 当前时间戳
* @param isBootableResp 数据
*/
override fun onSweeperFutianCloudBootable(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, isBootableResp: SweeperBootable.IsBootableResp) {
override fun onSweeperFutianCloudBootable(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, isBootableResp: SweeperBootable.IsBootableResp?) {
CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudBootable(messageType, reqNo, sysTime, isBootableResp)
}
@@ -712,10 +713,20 @@ class MoGoAdasListenerImpl : OnAdasListener {
* @param sysTime 当前时间戳
* @param bigTaskStatusPush 数据
*/
override fun onSweeperFutianCloudBigTaskStatus(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, bigTaskStatusPush: SweeperBigTaskStatus.BigTaskStatusPush) {
override fun onSweeperFutianCloudBigTaskStatus(header: MessagePad.Header, messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, bigTaskStatusPush: SweeperBigTaskStatus.BigTaskStatusPush?) {
CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudBigTaskStatus(messageType, reqNo, sysTime, bigTaskStatusPush)
}
/**
* 清扫车云端任务未知类型
*
* @param header 头
* @param bytes 原始数据
*/
override fun onSweeperFutianCloudTaskUnknown(header: MessagePad.Header, bytes: ByteArray) {
CallerSweeperFutianCloudTaskListenerManager.invokeSweeperFutianCloudTaskUnknown(bytes)
}
/**
* Bag管理应答
*

View File

@@ -8,6 +8,7 @@ import com.zhjt.mogo.adas.data.sweeper.task.big.SweeperBigTaskStatus.BigTaskStat
import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm.TaskConfirm
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
/**
* 清扫车(福田)云端任务接口
@@ -23,7 +24,7 @@ interface IMoGoSweeperFutianCloudTaskListener {
* @param sysTime 当前时间戳
* @param taskInfo 数据
*/
fun onSweeperFutianCloudTask(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, taskInfo: SweeperTask.TaskInfo)
fun onSweeperFutianCloudTask(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, taskInfo: SweeperTask.TaskInfo?)
/**
* 2、云端下发子任务请求pad确认type100002-> sweeper_task_confirm.proto
@@ -33,7 +34,7 @@ interface IMoGoSweeperFutianCloudTaskListener {
* @param sysTime 当前时间戳
* @param taskConfirm 数据
*/
fun onSweeperFutianCloudTaskConfirm(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, taskConfirm: TaskConfirm)
fun onSweeperFutianCloudTaskConfirm(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, taskConfirm: TaskConfirm?)
/**
* 3、云端下发任务状态到padtype100003-> sweeper_task_status.proto
@@ -43,7 +44,7 @@ interface IMoGoSweeperFutianCloudTaskListener {
* @param sysTime 当前时间戳
* @param taskStatusPush 数据
*/
fun onSweeperFutianCloudTaskStatus(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, taskStatusPush: TaskStatusPush)
fun onSweeperFutianCloudTaskStatus(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, taskStatusPush: TaskStatusPush?)
/**
* 4、云端请求pad结束任务type100004-> sweeper_task_stop.proto
@@ -53,7 +54,7 @@ interface IMoGoSweeperFutianCloudTaskListener {
* @param sysTime 当前时间戳
* @param stopTaskReq 数据
*/
fun onSweeperFutianCloudTaskStop(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, stopTaskReq: StopTaskReq)
fun onSweeperFutianCloudTaskStop(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, stopTaskReq: StopTaskReq?)
/**
* 5、pad请求挂起任务type100005-> sweeper_task_suspend_resume.proto
@@ -64,7 +65,7 @@ interface IMoGoSweeperFutianCloudTaskListener {
* @param sysTime 当前时间戳
* @param suspendResumeTaskResp 数据
*/
fun onSweeperFutianCloudTaskSuspendResume(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, suspendResumeTaskResp: SuspendResumeTaskResp)
fun onSweeperFutianCloudTaskSuspendResume(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, suspendResumeTaskResp: SuspendResumeTaskResp?)
/**
* 8、接管后回自驾-pad上报状态给云端 云端下发启动自驾type: 100008-> sweeper_autopilot.proto
@@ -74,7 +75,7 @@ interface IMoGoSweeperFutianCloudTaskListener {
* @param sysTime 当前时间戳
* @param isBootableResp 数据
*/
fun onSweeperFutianCloudBootable(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, isBootableResp: IsBootableResp)
fun onSweeperFutianCloudBootable(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, isBootableResp: IsBootableResp?)
/**
* 9、云端下发pad大任务状态type: 100009-> sweeper_big_task_status.proto
@@ -84,6 +85,12 @@ interface IMoGoSweeperFutianCloudTaskListener {
* @param sysTime 当前时间戳
* @param bigTaskStatusPush 数据
*/
fun onSweeperFutianCloudBigTaskStatus(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, bigTaskStatusPush: BigTaskStatusPush)
fun onSweeperFutianCloudBigTaskStatus(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, bigTaskStatusPush: BigTaskStatusPush?)
/**
* 清扫车云端任务未知类型
*
* @param bytes 原始数据
*/
fun onSweeperFutianCloudTaskUnknown(bytes: ByteArray)
}

View File

@@ -25,7 +25,7 @@ object CallerSweeperFutianCloudTaskListenerManager : CallerBase<IMoGoSweeperFuti
* @param sysTime 当前时间戳
* @param taskInfo 数据
*/
fun invokeSweeperFutianCloudTask(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, taskInfo: SweeperTask.TaskInfo) {
fun invokeSweeperFutianCloudTask(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, taskInfo: SweeperTask.TaskInfo?) {
M_LISTENERS.forEach {
val listener = it.value
listener.onSweeperFutianCloudTask(messageType, reqNo, sysTime, taskInfo)
@@ -40,7 +40,7 @@ object CallerSweeperFutianCloudTaskListenerManager : CallerBase<IMoGoSweeperFuti
* @param sysTime 当前时间戳
* @param taskConfirm 数据
*/
fun invokeSweeperFutianCloudTaskConfirm(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, taskConfirm: SweeperTaskConfirm.TaskConfirm) {
fun invokeSweeperFutianCloudTaskConfirm(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, taskConfirm: SweeperTaskConfirm.TaskConfirm?) {
M_LISTENERS.forEach {
val listener = it.value
listener.onSweeperFutianCloudTaskConfirm(messageType, reqNo, sysTime, taskConfirm)
@@ -55,7 +55,7 @@ object CallerSweeperFutianCloudTaskListenerManager : CallerBase<IMoGoSweeperFuti
* @param sysTime 当前时间戳
* @param taskStatusPush 数据
*/
fun invokeSweeperFutianCloudTaskStatus(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, taskStatusPush: SweeperTaskStatus.TaskStatusPush) {
fun invokeSweeperFutianCloudTaskStatus(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, taskStatusPush: SweeperTaskStatus.TaskStatusPush?) {
M_LISTENERS.forEach {
val listener = it.value
listener.onSweeperFutianCloudTaskStatus(messageType, reqNo, sysTime, taskStatusPush)
@@ -70,7 +70,7 @@ object CallerSweeperFutianCloudTaskListenerManager : CallerBase<IMoGoSweeperFuti
* @param sysTime 当前时间戳
* @param stopTaskReq 数据
*/
fun invokeSweeperFutianCloudTaskStop(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, stopTaskReq: SweeperTaskStop.StopTaskReq) {
fun invokeSweeperFutianCloudTaskStop(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, stopTaskReq: SweeperTaskStop.StopTaskReq?) {
M_LISTENERS.forEach {
val listener = it.value
listener.onSweeperFutianCloudTaskStop(messageType, reqNo, sysTime, stopTaskReq)
@@ -86,7 +86,7 @@ object CallerSweeperFutianCloudTaskListenerManager : CallerBase<IMoGoSweeperFuti
* @param sysTime 当前时间戳
* @param suspendResumeTaskResp 数据
*/
fun invokeSweeperFutianCloudTaskSuspendResume(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, suspendResumeTaskResp: SweeperTaskSuspendResume.SuspendResumeTaskResp) {
fun invokeSweeperFutianCloudTaskSuspendResume(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, suspendResumeTaskResp: SweeperTaskSuspendResume.SuspendResumeTaskResp?) {
M_LISTENERS.forEach {
val listener = it.value
listener.onSweeperFutianCloudTaskSuspendResume(messageType, reqNo, sysTime, suspendResumeTaskResp)
@@ -101,7 +101,7 @@ object CallerSweeperFutianCloudTaskListenerManager : CallerBase<IMoGoSweeperFuti
* @param sysTime 当前时间戳
* @param isBootableResp 数据
*/
fun invokeSweeperFutianCloudBootable(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, isBootableResp: SweeperBootable.IsBootableResp) {
fun invokeSweeperFutianCloudBootable(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, isBootableResp: SweeperBootable.IsBootableResp?) {
M_LISTENERS.forEach {
val listener = it.value
listener.onSweeperFutianCloudBootable(messageType, reqNo, sysTime, isBootableResp)
@@ -116,10 +116,23 @@ object CallerSweeperFutianCloudTaskListenerManager : CallerBase<IMoGoSweeperFuti
* @param sysTime 当前时间戳
* @param bigTaskStatusPush 数据
*/
fun invokeSweeperFutianCloudBigTaskStatus(messageType: SweeperCloudTask.MessageType, reqNo: String, sysTime: Long, bigTaskStatusPush: SweeperBigTaskStatus.BigTaskStatusPush) {
fun invokeSweeperFutianCloudBigTaskStatus(messageType: SweeperCloudTask.MessageType, reqNo: String?, sysTime: Long, bigTaskStatusPush: SweeperBigTaskStatus.BigTaskStatusPush?) {
M_LISTENERS.forEach {
val listener = it.value
listener.onSweeperFutianCloudBigTaskStatus(messageType, reqNo, sysTime, bigTaskStatusPush)
}
}
/**
* 清扫车云端任务未知类型
*
* @param header 头
* @param bytes 原始数据
*/
fun invokeSweeperFutianCloudTaskUnknown(bytes: ByteArray) {
M_LISTENERS.forEach {
val listener = it.value
listener.onSweeperFutianCloudTaskUnknown(bytes)
}
}
}

View File

@@ -1,6 +1,7 @@
package com.zhidao.support.adas.high;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.mogo.support.obu.ObuScene;
import com.zhidao.support.adas.high.common.ProtocolStatus;
@@ -273,7 +274,7 @@ public interface OnAdasListener {
* @param sysTime 当前时间戳
* @param taskInfo 数据
*/
void onSweeperFutianCloudTask(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @NonNull String reqNo, long sysTime, @NonNull SweeperTask.TaskInfo taskInfo);
void onSweeperFutianCloudTask(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperTask.TaskInfo taskInfo);
/**
* 2、云端下发子任务请求pad确认type100002-> sweeper_task_confirm.proto
@@ -284,7 +285,7 @@ public interface OnAdasListener {
* @param sysTime 当前时间戳
* @param taskConfirm 数据
*/
void onSweeperFutianCloudTaskConfirm(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @NonNull String reqNo, long sysTime, @NonNull SweeperTaskConfirm.TaskConfirm taskConfirm);
void onSweeperFutianCloudTaskConfirm(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperTaskConfirm.TaskConfirm taskConfirm);
/**
* 3、云端下发任务状态到padtype100003-> sweeper_task_status.proto
@@ -295,7 +296,7 @@ public interface OnAdasListener {
* @param sysTime 当前时间戳
* @param taskStatusPush 数据
*/
void onSweeperFutianCloudTaskStatus(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @NonNull String reqNo, long sysTime, @NonNull SweeperTaskStatus.TaskStatusPush taskStatusPush);
void onSweeperFutianCloudTaskStatus(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperTaskStatus.TaskStatusPush taskStatusPush);
/**
* 4、云端请求pad结束任务type100004-> sweeper_task_stop.proto
@@ -306,7 +307,7 @@ public interface OnAdasListener {
* @param sysTime 当前时间戳
* @param stopTaskReq 数据
*/
void onSweeperFutianCloudTaskStop(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @NonNull String reqNo, long sysTime, @NonNull SweeperTaskStop.StopTaskReq stopTaskReq);
void onSweeperFutianCloudTaskStop(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperTaskStop.StopTaskReq stopTaskReq);
/**
* 5、pad请求挂起任务type100005-> sweeper_task_suspend_resume.proto
@@ -318,7 +319,7 @@ public interface OnAdasListener {
* @param sysTime 当前时间戳
* @param suspendResumeTaskResp 数据
*/
void onSweeperFutianCloudTaskSuspendResume(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @NonNull String reqNo, long sysTime, @NonNull SweeperTaskSuspendResume.SuspendResumeTaskResp suspendResumeTaskResp);
void onSweeperFutianCloudTaskSuspendResume(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperTaskSuspendResume.SuspendResumeTaskResp suspendResumeTaskResp);
/**
* 8、接管后回自驾-pad上报状态给云端 云端下发启动自驾type: 100008-> sweeper_autopilot.proto
@@ -329,7 +330,7 @@ public interface OnAdasListener {
* @param sysTime 当前时间戳
* @param isBootableResp 数据
*/
void onSweeperFutianCloudBootable(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @NonNull String reqNo, long sysTime, @NonNull SweeperBootable.IsBootableResp isBootableResp);
void onSweeperFutianCloudBootable(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperBootable.IsBootableResp isBootableResp);
/**
* 9、云端下发pad大任务状态type: 100009-> sweeper_big_task_status.proto
@@ -340,7 +341,15 @@ public interface OnAdasListener {
* @param sysTime 当前时间戳
* @param bigTaskStatusPush 数据
*/
void onSweeperFutianCloudBigTaskStatus(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @NonNull String reqNo, long sysTime, @NonNull SweeperBigTaskStatus.BigTaskStatusPush bigTaskStatusPush);
void onSweeperFutianCloudBigTaskStatus(@NonNull MessagePad.Header header, @NonNull SweeperCloudTask.MessageType messageType, @Nullable String reqNo, long sysTime, @Nullable SweeperBigTaskStatus.BigTaskStatusPush bigTaskStatusPush);
/**
* 清扫车云端任务未知类型
*
* @param header 头
* @param bytes 原始数据
*/
void onSweeperFutianCloudTaskUnknown(@NonNull MessagePad.Header header, @NonNull byte[] bytes);
/**
* Bag管理应答

View File

@@ -29,7 +29,8 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler {
@Override
public void handlerMsg(RawData raw, OnAdasListener adasListener) throws InvalidProtocolBufferException {
SweeperCloudTask.SweeperMessage message = SweeperCloudTask.SweeperMessage.parser().parseFrom(raw.originalData.toByteArray(), raw.getOffsetValue(), raw.getPackageLengthValue() - raw.getOffsetValue());
byte[] bytes = raw.originalData.toByteArray();
SweeperCloudTask.SweeperMessage message = SweeperCloudTask.SweeperMessage.parser().parseFrom(bytes, raw.getOffsetValue(), raw.getPackageLengthValue() - raw.getOffsetValue());
AdasChannel.calculateTimeConsumingOnDispatchRaw("清扫车云端任务调度", raw.receiveTime);
long nowTime = 0;
if (CupidLogUtils.isEnableLog())
@@ -40,36 +41,61 @@ public class SweeperCloudTaskMessage extends MyAbstractMessageHandler {
String reqNo = message.getReqNo(); //请求编号,响应请求时,使用请求方的请求编号
long sysTime = message.getSysTime(); //当前时间戳
ByteString payload = message.getPayload();
boolean isExistPayload = payload != null && !payload.isEmpty();
if (msgType == SweeperCloudTask.MessageType.CloudPushTask || msgType == SweeperCloudTask.MessageType.PadSendGetTaskReq) {
//1、云端下发大任务信息type: 100001-> sweeper_task.proto
//7、pad主动拉取当前车辆正在执行任务的完整信息type100007-> sweeper_task.proto
SweeperTask.TaskInfo taskInfo = SweeperTask.TaskInfo.parseFrom(payload);
SweeperTask.TaskInfo taskInfo = null;
if (isExistPayload) {
taskInfo = SweeperTask.TaskInfo.parseFrom(payload);
}
adasListener.onSweeperFutianCloudTask(header, msgType, reqNo, sysTime, taskInfo);
} else if (msgType == SweeperCloudTask.MessageType.CloudPushTaskConfirm) {
//2、云端下发子任务请求pad确认type100002-> sweeper_task_confirm.proto
SweeperTaskConfirm.TaskConfirm taskConfirm = SweeperTaskConfirm.TaskConfirm.parseFrom(payload);
SweeperTaskConfirm.TaskConfirm taskConfirm = null;
if (isExistPayload) {
taskConfirm = SweeperTaskConfirm.TaskConfirm.parseFrom(payload);
}
adasListener.onSweeperFutianCloudTaskConfirm(header, msgType, reqNo, sysTime, taskConfirm);
} else if (msgType == SweeperCloudTask.MessageType.CloudPushTaskStatus) {
//3、云端下发任务状态到padtype100003-> sweeper_task_status.proto
SweeperTaskStatus.TaskStatusPush taskStatusPush = SweeperTaskStatus.TaskStatusPush.parseFrom(payload);
SweeperTaskStatus.TaskStatusPush taskStatusPush = null;
if (isExistPayload) {
taskStatusPush = SweeperTaskStatus.TaskStatusPush.parseFrom(payload);
}
adasListener.onSweeperFutianCloudTaskStatus(header, msgType, reqNo, sysTime, taskStatusPush);
} else if (msgType == SweeperCloudTask.MessageType.CloudPushTaskStop) {
//4、云端请求pad结束任务type100004-> sweeper_task_stop.proto
SweeperTaskStop.StopTaskReq stopTaskReq = SweeperTaskStop.StopTaskReq.parseFrom(payload);
SweeperTaskStop.StopTaskReq stopTaskReq = null;
if (isExistPayload) {
stopTaskReq = SweeperTaskStop.StopTaskReq.parseFrom(payload);
}
adasListener.onSweeperFutianCloudTaskStop(header, msgType, reqNo, sysTime, stopTaskReq);
} else if (msgType == SweeperCloudTask.MessageType.PadSendTaskSuspend || msgType == SweeperCloudTask.MessageType.PadSendTaskResume) {
//5、pad请求挂起任务type100005-> sweeper_task_suspend_resume.proto
//6、pad请求恢复挂起的任务type100006-> sweeper_task_suspend_resume.proto
SweeperTaskSuspendResume.SuspendResumeTaskResp suspendResumeTaskResp = SweeperTaskSuspendResume.SuspendResumeTaskResp.parseFrom(payload);
SweeperTaskSuspendResume.SuspendResumeTaskResp suspendResumeTaskResp = null;
if (isExistPayload) {
suspendResumeTaskResp = SweeperTaskSuspendResume.SuspendResumeTaskResp.parseFrom(payload);
}
adasListener.onSweeperFutianCloudTaskSuspendResume(header, msgType, reqNo, sysTime, suspendResumeTaskResp);
} else if (msgType == SweeperCloudTask.MessageType.PadSendBootable) {
//8、接管后回自驾-pad上报状态给云端 云端下发启动自驾type: 100008-> sweeper_autopilot.proto
SweeperBootable.IsBootableResp isBootableResp = SweeperBootable.IsBootableResp.parseFrom(payload);
SweeperBootable.IsBootableResp isBootableResp = null;
if (isExistPayload) {
isBootableResp = SweeperBootable.IsBootableResp.parseFrom(payload);
}
adasListener.onSweeperFutianCloudBootable(header, msgType, reqNo, sysTime, isBootableResp);
} else if (msgType == SweeperCloudTask.MessageType.CloudPushBigTaskStatus) {
//9、云端下发pad大任务状态type: 100009-> sweeper_big_task_status.proto
SweeperBigTaskStatus.BigTaskStatusPush bigTaskStatusPush = SweeperBigTaskStatus.BigTaskStatusPush.parseFrom(payload);
SweeperBigTaskStatus.BigTaskStatusPush bigTaskStatusPush = null;
if (isExistPayload) {
bigTaskStatusPush = SweeperBigTaskStatus.BigTaskStatusPush.parseFrom(payload);
}
adasListener.onSweeperFutianCloudBigTaskStatus(header, msgType, reqNo, sysTime, bigTaskStatusPush);
} else {
//未知数据类型
adasListener.onSweeperFutianCloudTaskUnknown(header, bytes);
}
// adasListener.onBagManagerCmd(raw.getHeader(), bagManager);
}