mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2025-07-19 12:03:37 +00:00
fix: 好友申请重复推送
This commit is contained in:
@@ -70,7 +70,9 @@ export class NTQQFriendApi {
|
||||
async isBuddy(uid: string) {
|
||||
return this.context.session.getBuddyService().isBuddy(uid);
|
||||
}
|
||||
|
||||
async clearBuddyReqUnreadCnt(){
|
||||
return this.context.session.getBuddyService().clearBuddyReqUnreadCnt();
|
||||
}
|
||||
/**
|
||||
* @deprecated
|
||||
* @param forced
|
||||
|
@@ -64,6 +64,7 @@ export enum BuddyReqType {
|
||||
}
|
||||
|
||||
export interface FriendRequest {
|
||||
isBuddy?: boolean;
|
||||
isInitiator?: boolean;
|
||||
isDecide: boolean;
|
||||
friendUid: string;
|
||||
|
@@ -65,7 +65,7 @@ export interface NodeIKernelBuddyService {
|
||||
|
||||
delBuddyReq(uid: number): void;
|
||||
|
||||
clearBuddyReqUnreadCnt(): void;
|
||||
clearBuddyReqUnreadCnt(): Promise<GeneralCallResult>;
|
||||
|
||||
reqToAddFriends(uid: number, msg: string): void;
|
||||
|
||||
|
@@ -283,8 +283,16 @@ export class NapCatOneBot11Adapter {
|
||||
private initBuddyListener() {
|
||||
const buddyListener = new BuddyListener();
|
||||
|
||||
buddyListener.onBuddyReqChange = reqs => {
|
||||
reqs.buddyReqs.forEach(async req => {
|
||||
buddyListener.onBuddyReqChange = async reqs => {
|
||||
this.core.apis.FriendApi.clearBuddyReqUnreadCnt();
|
||||
for (let i = 0; i < reqs.unreadNums; i++) {
|
||||
const req = reqs.buddyReqs[i];
|
||||
//req.isBuddy === false是单向好友 null为常规情况
|
||||
// if (req.isBuddy === false && ) {
|
||||
// const NTQQFriendApi = this.core.apis.FriendApi;
|
||||
// await NTQQFriendApi.handleFriendRequest(req.friendUid + '|' + req.reqTime, true);
|
||||
// }
|
||||
|
||||
if (!!req.isInitiator || (req.isDecide && req.reqType !== BuddyReqType.KMEINITIATORWAITPEERCONFIRM)) {
|
||||
return;
|
||||
}
|
||||
@@ -299,7 +307,7 @@ export class NapCatOneBot11Adapter {
|
||||
} catch (e) {
|
||||
this.context.logger.logDebug('获取加好友者QQ号失败', e);
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
this.context.session.getBuddyService().addKernelBuddyListener(
|
||||
|
Reference in New Issue
Block a user