mirror of
				https://github.com/openimsdk/open-im-server.git
				synced 2025-11-01 00:42:13 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			187 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
			
		
		
	
	
			187 lines
		
	
	
		
			4.8 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
| // Copyright © 2023 OpenIM. All rights reserved.
 | |
| //
 | |
| // Licensed under the Apache License, Version 2.0 (the "License");
 | |
| // you may not use this file except in compliance with the License.
 | |
| // You may obtain a copy of the License at
 | |
| //
 | |
| //     http://www.apache.org/licenses/LICENSE-2.0
 | |
| //
 | |
| // Unless required by applicable law or agreed to in writing, software
 | |
| // distributed under the License is distributed on an "AS IS" BASIS,
 | |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| // See the License for the specific language governing permissions and
 | |
| // limitations under the License.
 | |
| 
 | |
| syntax = "proto3";
 | |
| package OpenIMServer.friend;
 | |
| import "sdkws/sdkws.proto";
 | |
| option go_package = "github.com/OpenIMSDK/Open-IM-Server/pkg/proto/friend";
 | |
| 
 | |
| message getPaginationFriendsReq{
 | |
|   sdkws.RequestPagination pagination = 1;
 | |
|   string userID = 2;
 | |
| }
 | |
| message getPaginationFriendsResp{
 | |
|   repeated sdkws.FriendInfo friendsInfo = 1;
 | |
|   int32 total = 2;
 | |
| }
 | |
| 
 | |
| 
 | |
| message applyToAddFriendReq{
 | |
|   string fromUserID = 1;
 | |
|   string toUserID = 2;
 | |
|   string reqMsg = 3;
 | |
|   string ex = 4;
 | |
| }
 | |
| message applyToAddFriendResp{
 | |
| }
 | |
| 
 | |
| 
 | |
| message importFriendReq{
 | |
|   string ownerUserID = 1;
 | |
|   repeated string friendUserIDs = 2;
 | |
| }
 | |
| 
 | |
| message importFriendResp{
 | |
| }
 | |
| 
 | |
| 
 | |
| message getPaginationFriendsApplyToReq{
 | |
|   string userID = 1;
 | |
|   sdkws.RequestPagination pagination = 2;
 | |
| 
 | |
| }
 | |
| message getPaginationFriendsApplyToResp{
 | |
|   repeated sdkws.FriendRequest FriendRequests = 1;
 | |
|   int32 total = 2;
 | |
| }
 | |
| 
 | |
| 
 | |
| message getDesignatedFriendsReq{
 | |
|   string ownerUserID = 1;
 | |
|   repeated string friendUserIDs = 2;
 | |
| }
 | |
| message getDesignatedFriendsResp{
 | |
|   repeated sdkws.FriendInfo friendsInfo = 1;
 | |
| }
 | |
| 
 | |
| 
 | |
| message addBlackReq{
 | |
|   string ownerUserID = 1;
 | |
|   string blackUserID = 2;
 | |
| }
 | |
| message addBlackResp{
 | |
| }
 | |
| 
 | |
| 
 | |
| message removeBlackReq{
 | |
|   string ownerUserID = 1;
 | |
|   string blackUserID = 2;
 | |
| }
 | |
| message removeBlackResp{
 | |
| }
 | |
| 
 | |
| message getPaginationBlacksReq{
 | |
|   string userID = 1;
 | |
|   sdkws.RequestPagination pagination = 2;
 | |
| }
 | |
| message getPaginationBlacksResp{
 | |
|   repeated sdkws.BlackInfo blacks= 1;
 | |
|   int32 total = 2;
 | |
| }
 | |
| 
 | |
| 
 | |
| message isFriendReq{
 | |
|   string userID1 = 1;
 | |
|   string userID2 = 2;
 | |
| }
 | |
| message isFriendResp{
 | |
|   bool inUser1Friends = 1; //如果userID2在userID1的好友列表中 true
 | |
|   bool inUser2Friends = 2; //如果userID1在userID2的好友列表中 true
 | |
| }
 | |
| 
 | |
| 
 | |
| message isBlackReq{
 | |
|   string userID1 = 1;
 | |
|   string userID2 = 2;
 | |
| }
 | |
| message isBlackResp{
 | |
|   bool inUser1Blacks = 1; //如果userID2在userID1的黑名单列表中 true
 | |
|   bool inUser2Blacks = 2; //如果userID1在userID2的黑名单列表中 true
 | |
| }
 | |
| 
 | |
| 
 | |
| message deleteFriendReq{
 | |
|   string ownerUserID = 1;
 | |
|   string friendUserID = 2;
 | |
| }
 | |
| message deleteFriendResp{
 | |
| }
 | |
| 
 | |
| //process
 | |
| message respondFriendApplyReq{
 | |
|   string fromUserID = 1; //主动发起的申请者
 | |
|   string toUserID = 2;   //被动添加者
 | |
|   int32  handleResult = 3;
 | |
|   string handleMsg = 4;
 | |
| }
 | |
| message respondFriendApplyResp{
 | |
| }
 | |
| 
 | |
| message setFriendRemarkReq{
 | |
|   string ownerUserID = 1;
 | |
|   string friendUserID = 2;
 | |
|   string remark = 3;
 | |
| }
 | |
| message setFriendRemarkResp{
 | |
| }
 | |
| 
 | |
| message getPaginationFriendsApplyFromReq{
 | |
|   string userID = 1;
 | |
|   sdkws.RequestPagination pagination = 2;
 | |
| }
 | |
| message getPaginationFriendsApplyFromResp{
 | |
|   repeated sdkws.FriendRequest friendRequests = 1;
 | |
|   int32 total = 2;
 | |
| }
 | |
| 
 | |
| message getFriendIDsReq {
 | |
|   string userID = 1;
 | |
| }
 | |
| 
 | |
| message getFriendIDsResp {
 | |
|   repeated string friendIDs = 1;
 | |
| }
 | |
| 
 | |
| service friend{
 | |
|   //申请加好友
 | |
|   rpc applyToAddFriend(applyToAddFriendReq) returns(applyToAddFriendResp);
 | |
|   //获取收到的好友申请列表
 | |
|   rpc getPaginationFriendsApplyTo(getPaginationFriendsApplyToReq) returns(getPaginationFriendsApplyToResp);
 | |
|   //获取主动发出去的好友申请列表
 | |
|   rpc getPaginationFriendsApplyFrom(getPaginationFriendsApplyFromReq) returns(getPaginationFriendsApplyFromResp);
 | |
|   //添加黑名单
 | |
|   rpc addBlack(addBlackReq) returns(addBlackResp);
 | |
|   //移除黑名单
 | |
|   rpc removeBlack(removeBlackReq) returns(removeBlackResp);
 | |
|   //判断是否好友关系
 | |
|   rpc isFriend(isFriendReq) returns(isFriendResp);
 | |
|   //判断是否在黑名单中
 | |
|   rpc isBlack(isBlackReq) returns(isBlackResp);
 | |
|   //获取黑名单列表
 | |
|   rpc getPaginationBlacks(getPaginationBlacksReq) returns(getPaginationBlacksResp);
 | |
|   //删除好友
 | |
|   rpc deleteFriend(deleteFriendReq) returns(deleteFriendResp);
 | |
|   //对好友申请响应(同意或拒绝)
 | |
|   rpc respondFriendApply(respondFriendApplyReq) returns(respondFriendApplyResp);
 | |
|   //设置好友备注
 | |
|   rpc setFriendRemark(setFriendRemarkReq) returns(setFriendRemarkResp);
 | |
|   //导入好友关系
 | |
|   rpc importFriends(importFriendReq)  returns(importFriendResp);
 | |
|   //翻页获取好友列表 无结果不返回错误
 | |
|   rpc getDesignatedFriends(getDesignatedFriendsReq) returns(getDesignatedFriendsResp);
 | |
|   //获取指定好友信息 有id不存在也返回错误
 | |
|   rpc getPaginationFriends(getPaginationFriendsReq) returns (getPaginationFriendsResp);
 | |
|   // 获取好友ID列表
 | |
|   rpc getFriendIDs(getFriendIDsReq) returns (getFriendIDsResp);
 | |
| } |