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) {
|
async isBuddy(uid: string) {
|
||||||
return this.context.session.getBuddyService().isBuddy(uid);
|
return this.context.session.getBuddyService().isBuddy(uid);
|
||||||
}
|
}
|
||||||
|
async clearBuddyReqUnreadCnt(){
|
||||||
|
return this.context.session.getBuddyService().clearBuddyReqUnreadCnt();
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* @deprecated
|
* @deprecated
|
||||||
* @param forced
|
* @param forced
|
||||||
|
@@ -64,6 +64,7 @@ export enum BuddyReqType {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export interface FriendRequest {
|
export interface FriendRequest {
|
||||||
|
isBuddy?: boolean;
|
||||||
isInitiator?: boolean;
|
isInitiator?: boolean;
|
||||||
isDecide: boolean;
|
isDecide: boolean;
|
||||||
friendUid: string;
|
friendUid: string;
|
||||||
|
@@ -65,7 +65,7 @@ export interface NodeIKernelBuddyService {
|
|||||||
|
|
||||||
delBuddyReq(uid: number): void;
|
delBuddyReq(uid: number): void;
|
||||||
|
|
||||||
clearBuddyReqUnreadCnt(): void;
|
clearBuddyReqUnreadCnt(): Promise<GeneralCallResult>;
|
||||||
|
|
||||||
reqToAddFriends(uid: number, msg: string): void;
|
reqToAddFriends(uid: number, msg: string): void;
|
||||||
|
|
||||||
|
@@ -283,8 +283,16 @@ export class NapCatOneBot11Adapter {
|
|||||||
private initBuddyListener() {
|
private initBuddyListener() {
|
||||||
const buddyListener = new BuddyListener();
|
const buddyListener = new BuddyListener();
|
||||||
|
|
||||||
buddyListener.onBuddyReqChange = reqs => {
|
buddyListener.onBuddyReqChange = async reqs => {
|
||||||
reqs.buddyReqs.forEach(async req => {
|
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)) {
|
if (!!req.isInitiator || (req.isDecide && req.reqType !== BuddyReqType.KMEINITIATORWAITPEERCONFIRM)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -299,7 +307,7 @@ export class NapCatOneBot11Adapter {
|
|||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.context.logger.logDebug('获取加好友者QQ号失败', e);
|
this.context.logger.logDebug('获取加好友者QQ号失败', e);
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
this.context.session.getBuddyService().addKernelBuddyListener(
|
this.context.session.getBuddyService().addKernelBuddyListener(
|
||||||
|
Reference in New Issue
Block a user