mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2024-11-21 09:36:35 +00:00
Merge remote-tracking branch 'origin/main'
# Conflicts: # src/onebot/network/active-websocket.ts
This commit is contained in:
commit
ad8c962c25
@ -99,7 +99,7 @@ export class NapCatOneBot11Adapter {
|
||||
if (ob11Config.reverseWs.enable) {
|
||||
ob11Config.reverseWs.urls.forEach(url => {
|
||||
this.networkManager.registerAdapter(new OB11ActiveWebSocketAdapter(
|
||||
url, 5000, ob11Config.heartInterval, this.core, this
|
||||
url, 5000, ob11Config.heartInterval, ob11Config.token, this.core, this
|
||||
));
|
||||
});
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { IOB11NetworkAdapter, OB11EmitEventContent } from '@/onebot/network/index';
|
||||
import { WebSocket, WebSocket as NodeWebSocket } from 'ws';
|
||||
import { WebSocket } from 'ws';
|
||||
import BaseAction from '@/onebot/action/BaseAction';
|
||||
import { sleep } from '@/common/utils/helper';
|
||||
import { OB11HeartbeatEvent } from '../event/meta/OB11HeartbeatEvent';
|
||||
@ -17,12 +17,14 @@ export class OB11ActiveWebSocketAdapter implements IOB11NetworkAdapter {
|
||||
obContext: NapCatOneBot11Adapter;
|
||||
coreContext: NapCatCore;
|
||||
logger: LogWrapper;
|
||||
private connection: NodeWebSocket | null = null;
|
||||
private connection: WebSocket | null = null;
|
||||
private actionMap: Map<string, BaseAction<any, any>> = new Map();
|
||||
private heartbeatTimer: NodeJS.Timeout | null = null;
|
||||
|
||||
constructor(url: string, reconnectIntervalInMillis: number, heartbeatInterval: number, coreContext: NapCatCore, onebotContext: NapCatOneBot11Adapter) {
|
||||
private readonly token: string;
|
||||
|
||||
constructor(url: string, reconnectIntervalInMillis: number, heartbeatInterval: number, token:string, coreContext: NapCatCore, onebotContext: NapCatOneBot11Adapter) {
|
||||
this.url = url;
|
||||
this.token = token;
|
||||
this.heartbeatInterval = heartbeatInterval;
|
||||
this.reconnectIntervalInMillis = reconnectIntervalInMillis;
|
||||
this.coreContext = coreContext;
|
||||
@ -85,7 +87,14 @@ export class OB11ActiveWebSocketAdapter implements IOB11NetworkAdapter {
|
||||
private async tryConnect() {
|
||||
while (!this.connection && !this.isClosed) {
|
||||
try {
|
||||
this.connection = new NodeWebSocket(this.url);
|
||||
this.connection = new WebSocket(this.url, {
|
||||
headers: {
|
||||
'X-Self-ID': this.coreContext.selfInfo.uin,
|
||||
'Authorization': `Bearer ${this.token}`,
|
||||
'x-client-role': 'Universal', // koishi-adapter-onebot 需要这个字段
|
||||
'User-Agent': 'OneBot/11',
|
||||
}
|
||||
});
|
||||
this.connection.on('message', (data) => {
|
||||
this.handleMessage(data);
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user