syntax = "proto3"; import "Open_IM/pkg/proto/sdk_ws/ws.proto"; option go_package = "./relay;pbRelay"; package relay; message OnlinePushMsgReq { string OperationID = 1; server_api_params.MsgData msgData = 2; string pushToUserID = 3; } message OnlinePushMsgResp{ repeated SingleMsgToUserPlatform resp = 1; } message SingelMsgToUserResultList{ string userID =1; repeated SingleMsgToUserPlatform resp = 2; bool onlinePush = 3; } message OnlineBatchPushOneMsgReq{ string OperationID = 1; server_api_params.MsgData msgData = 2; repeated string pushToUserIDList = 3; } message OnlineBatchPushOneMsgResp{ repeated SingelMsgToUserResultList singlePushResult= 1; } //message SendMsgByWSReq{ // string SendID = 1; // string RecvID = 2; // string Content = 3; // int64 SendTime = 4; // int64 MsgFrom = 5; // int64 ContentType = 6; // int64 SessionType = 7; // string OperationID = 8; // int64 PlatformID = 9; //} message SingleMsgToUserPlatform{ int64 ResultCode = 1; string RecvID = 2; int32 RecvPlatFormID = 3; } message GetUsersOnlineStatusReq{ repeated string userIDList = 1; string operationID = 2; string opUserID = 3; } message GetUsersOnlineStatusResp{ int32 errCode = 1; string errMsg = 2; repeated SuccessResult successResult = 3; repeated FailedDetail failedResult = 4; message SuccessDetail{ string platform = 1; string status = 2; } message FailedDetail{ string userID = 3; int32 errCode = 1; string errMsg = 2; } message SuccessResult{ string userID = 1; string status = 2; repeated SuccessDetail detailPlatformStatus = 3; } } message KickUserOfflineReq{ string operationID = 1; int32 platformID = 2; repeated string kickUserIDList = 3; } message KickUserOfflineResp{ } message MultiTerminalLoginCheckReq{ string userID = 1; int32 platformID = 2; string token = 3; string operationID = 4; } message MultiTerminalLoginCheckResp{ int32 errCode = 1; string errMsg = 2; } service relay { rpc OnlinePushMsg(OnlinePushMsgReq) returns(OnlinePushMsgResp); rpc GetUsersOnlineStatus(GetUsersOnlineStatusReq) returns(GetUsersOnlineStatusResp); rpc OnlineBatchPushOneMsg(OnlineBatchPushOneMsgReq) returns(OnlineBatchPushOneMsgResp); rpc SuperGroupOnlineBatchPushOneMsg(OnlineBatchPushOneMsgReq) returns(OnlineBatchPushOneMsgResp); rpc KickUserOffline(KickUserOfflineReq) returns(KickUserOfflineResp); rpc MultiTerminalLoginCheck(MultiTerminalLoginCheckReq) returns(MultiTerminalLoginCheckResp); }