mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2024-09-27 19:46:09 +00:00
fix: cant emit FriendAddNoticeEvent
This commit is contained in:
parent
0dbfe8ca55
commit
5e53ea0bc3
@ -40,6 +40,7 @@ import { OB11GroupAdminNoticeEvent } from '@/onebot/event/notice/OB11GroupAdminN
|
||||
import { GroupDecreaseSubType, OB11GroupDecreaseEvent } from '@/onebot/event/notice/OB11GroupDecreaseEvent';
|
||||
import { OB11GroupRequestEvent } from '@/onebot/event/request/OB11GroupRequest';
|
||||
import { OB11FriendRecallNoticeEvent } from '@/onebot/event/notice/OB11FriendRecallNoticeEvent';
|
||||
import { OB11FriendAddNoticeEvent } from '@/onebot/event/notice/OB11FriendAddNoticeEvent';
|
||||
import { OB11GroupRecallNoticeEvent } from '@/onebot/event/notice/OB11GroupRecallNoticeEvent';
|
||||
import { LRUCache } from '@/common/lru-cache';
|
||||
import { NodeIKernelRecentContactListener } from '@/core/listeners/NodeIKernelRecentContactListener';
|
||||
@ -310,8 +311,17 @@ export class NapCatOneBot11Adapter {
|
||||
|
||||
private initBuddyListener() {
|
||||
const buddyListener = new NodeIKernelBuddyListener();
|
||||
let buddyPendingReqs: string[] = [];
|
||||
|
||||
buddyListener.onBuddyReqChange = async reqs => {
|
||||
for(const req of reqs.buddyReqs){
|
||||
if (req.isDecide && !req.isInitiator && req.reqType === BuddyReqType.KMEAGREEDANDADDED && buddyPendingReqs.includes(req.friendUid)) {
|
||||
buddyPendingReqs = buddyPendingReqs.filter(item => item !== req.friendUid);
|
||||
const friendAddNoticeEvent = new OB11FriendAddNoticeEvent(this.core, Number(await this.core.apis.UserApi.getUinByUidV2(req.friendUid)));
|
||||
await this.networkManager.emitEvent(friendAddNoticeEvent);
|
||||
}
|
||||
}
|
||||
|
||||
this.core.apis.FriendApi.clearBuddyReqUnreadCnt();
|
||||
for (let i = 0; i < reqs.unreadNums; i++) {
|
||||
const req = reqs.buddyReqs[i];
|
||||
@ -320,6 +330,7 @@ export class NapCatOneBot11Adapter {
|
||||
}
|
||||
try {
|
||||
const requesterUin = await this.core.apis.UserApi.getUinByUidV2(req.friendUid);
|
||||
buddyPendingReqs.push(req.friendUid);
|
||||
await this.networkManager.emitEvent(new OB11FriendRequestEvent(
|
||||
this.core,
|
||||
parseInt(requesterUin!),
|
||||
|
Loading…
Reference in New Issue
Block a user