fix(core): send connection state through worker
This commit is contained in:
parent
f7d6e6730b
commit
81a12a8088
3 changed files with 11 additions and 0 deletions
|
@ -51,6 +51,9 @@ export abstract class TelegramWorkerPort<Custom extends WorkerCustomMethods> imp
|
|||
case 'server_update':
|
||||
this._serverUpdatesHandler(message.update)
|
||||
break
|
||||
case 'conn_state':
|
||||
this._connectionStateHandler(message.state)
|
||||
break
|
||||
case 'update': {
|
||||
const peers = new PeersIndex(message.users, message.chats)
|
||||
peers.hasMin = message.hasMin
|
||||
|
|
|
@ -2,6 +2,7 @@ import type { Worker as NodeWorker } from 'worker_threads'
|
|||
|
||||
import { tl } from '@mtcute/tl'
|
||||
|
||||
import { ConnectionState } from '../client.types.js'
|
||||
import { SerializedError } from './errors.js'
|
||||
|
||||
export type WorkerInboundMessage = {
|
||||
|
@ -23,6 +24,7 @@ export type WorkerOutboundMessage =
|
|||
hasMin: boolean
|
||||
}
|
||||
| { type: 'error'; error: unknown }
|
||||
| { type: 'conn_state'; state: ConnectionState }
|
||||
| {
|
||||
type: 'log'
|
||||
color: number
|
||||
|
|
|
@ -40,6 +40,12 @@ export abstract class TelegramWorker<T extends WorkerCustomMethods> {
|
|||
error: err,
|
||||
}),
|
||||
)
|
||||
client.onConnectionState((state) =>
|
||||
this.broadcast({
|
||||
type: 'conn_state',
|
||||
state,
|
||||
}),
|
||||
)
|
||||
|
||||
if (client.updates) {
|
||||
client.onUpdate((update, peers) =>
|
||||
|
|
Loading…
Reference in a new issue