mirror of
https://github.com/NapNeko/NapCatQQ.git
synced 2024-11-21 09:36:35 +00:00
chore: 消息post
This commit is contained in:
parent
6f095470ad
commit
39ed9dea01
@ -54,34 +54,34 @@ export class NapCatOneBot11Adapter {
|
||||
|
||||
//创建NetWork服务
|
||||
let actions = createActionMap(this, this.core);
|
||||
let OB11NetworkManagerWrap = new OB11NetworkManager();
|
||||
if (ob11Config.http.enable) {
|
||||
OB11NetworkManagerWrap.registerAdapter(new OB11PassiveHttpAdapter(
|
||||
await this.networkManager.registerAdapter(new OB11PassiveHttpAdapter(
|
||||
ob11Config.http.port, ob11Config.token, this.core, this
|
||||
));
|
||||
}
|
||||
if (ob11Config.http.enablePost) {
|
||||
ob11Config.http.postUrls.forEach(url => {
|
||||
OB11NetworkManagerWrap.registerAdapter(new OB11ActiveHttpAdapter(
|
||||
ob11Config.http.postUrls.forEach(async url => {
|
||||
await this.networkManager.registerAdapter(new OB11ActiveHttpAdapter(
|
||||
url, ob11Config.heartInterval, ob11Config.token, this.core, this
|
||||
));
|
||||
});
|
||||
}
|
||||
if (ob11Config.ws.enable) {
|
||||
OB11NetworkManagerWrap.registerAdapter(new OB11PassiveWebSocketAdapter(
|
||||
let OBPassiveWebSocketAdapter = new OB11PassiveWebSocketAdapter(
|
||||
ob11Config.ws.host, ob11Config.ws.port, ob11Config.heartInterval, ob11Config.token, this.core, this
|
||||
));
|
||||
)
|
||||
await this.networkManager.registerAdapter(OBPassiveWebSocketAdapter);
|
||||
}
|
||||
if (ob11Config.reverseWs.enable) {
|
||||
ob11Config.reverseWs.urls.forEach(url => {
|
||||
OB11NetworkManagerWrap.registerAdapter(new OB11ActiveWebSocketAdapter(
|
||||
ob11Config.reverseWs.urls.forEach(async url => {
|
||||
await this.networkManager.registerAdapter(new OB11ActiveWebSocketAdapter(
|
||||
url, 5000, ob11Config.heartInterval, this.core, this
|
||||
));
|
||||
});
|
||||
}
|
||||
|
||||
OB11NetworkManagerWrap.registerAllActions(actions);
|
||||
OB11NetworkManagerWrap.openAllAdapters();
|
||||
await this.networkManager.registerAllActions(actions);
|
||||
await this.networkManager.openAllAdapters();
|
||||
// Todo 开始启动NetWork
|
||||
await this.initMsgListener();
|
||||
|
||||
@ -146,20 +146,20 @@ export class NapCatOneBot11Adapter {
|
||||
if (isSelfMsg) {
|
||||
ob11Msg.target_id = parseInt(message.peerUin);
|
||||
}
|
||||
this.networkManager.emitEvent(ob11Msg);
|
||||
this.networkManager.emitEvent(ob11Msg).then().catch(e => this.context.logger.logError('emitEvent error: ', e));
|
||||
}).catch(e => this.context.logger.logError('constructMessage error: ', e));
|
||||
|
||||
OB11Constructor.GroupEvent(this.core, message).then(groupEvent => {
|
||||
if (groupEvent) {
|
||||
// log("post group event", groupEvent);
|
||||
this.networkManager.emitEvent(groupEvent);
|
||||
this.networkManager.emitEvent(groupEvent).then().catch(e => this.context.logger.logError('emitEvent error: ', e));
|
||||
}
|
||||
}).catch(e => this.context.logger.logError('constructGroupEvent error: ', e));
|
||||
|
||||
OB11Constructor.PrivateEvent(this.core, message).then(privateEvent => {
|
||||
if (privateEvent) {
|
||||
// log("post private event", privateEvent);
|
||||
this.networkManager.emitEvent(privateEvent);
|
||||
this.networkManager.emitEvent(privateEvent).then().catch(e => this.context.logger.logError('emitEvent error: ', e));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -18,22 +18,28 @@ export interface IOB11NetworkAdapter {
|
||||
|
||||
export class OB11NetworkManager {
|
||||
adapters: IOB11NetworkAdapter[] = [];
|
||||
|
||||
async getAllAdapters() {
|
||||
return this.adapters;
|
||||
}
|
||||
|
||||
async openAllAdapters() {
|
||||
return Promise.all(this.adapters.map(adapter => adapter.open()));
|
||||
}
|
||||
async registerAllActions(actions: Map<string,BaseAction<any, any>>) {
|
||||
|
||||
async registerAllActions(actions: Map<string, BaseAction<any, any>>) {
|
||||
return Promise.all(this.adapters.map(adapter => adapter.registerActionMap(actions)));
|
||||
}
|
||||
|
||||
async emitEvent(event: OB11EmitEventContent) {
|
||||
// Mlikiowa V2.0.0 Refactor Todo
|
||||
console.log('adapters', this.adapters.length);
|
||||
return Promise.all(this.adapters.map(adapter => adapter.onEvent(event)));
|
||||
}
|
||||
|
||||
async registerAdapter(adapter: IOB11NetworkAdapter) {
|
||||
return this.adapters.push(adapter);
|
||||
console.log('Registering adapter:', adapter);
|
||||
this.adapters.push(adapter);
|
||||
console.log('Current adapters:', this.adapters.length);
|
||||
}
|
||||
|
||||
async closeSomeAdapters(adapters: IOB11NetworkAdapter[]) {
|
||||
@ -42,8 +48,10 @@ export class OB11NetworkManager {
|
||||
}
|
||||
|
||||
async closeAllAdapters() {
|
||||
this.adapters = [];
|
||||
console.log('Closing all adapters');
|
||||
await Promise.all(this.adapters.map(adapter => adapter.close()));
|
||||
this.adapters = [];
|
||||
console.log('All adapters closed. Current adapters:', this.adapters.length);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user