bridge states: send CONNECTED/TRANSIENT_DISCONNECT

Signed-off-by: Sumner Evans <sumner.evans@automattic.com>
This commit is contained in:
Sumner Evans
2024-08-09 11:25:08 -06:00
parent 6462b709f5
commit d94dbe81dc
3 changed files with 12 additions and 4 deletions
+1 -1
View File
@@ -55,4 +55,4 @@ require (
rsc.io/qr v0.2.0 // indirect
)
replace github.com/gotd/td => github.com/beeper/td v0.107.1-0.20240814184019-6dd52cc45f51
replace github.com/gotd/td => github.com/beeper/td v0.107.1-0.20240815233135-3fc7e069705d
+2 -2
View File
@@ -1,7 +1,7 @@
github.com/DATA-DOG/go-sqlmock v1.5.2 h1:OcvFkGmslmlZibjAjaHm3L//6LiuBgolP7OputlJIzU=
github.com/DATA-DOG/go-sqlmock v1.5.2/go.mod h1:88MAG/4G7SMwSE3CeA0ZKzrT5CiOU3OJ+JlNzwDqpNU=
github.com/beeper/td v0.107.1-0.20240814184019-6dd52cc45f51 h1:+rsAynFEXJ/mkeatNlOHLOG3haRwQUazPa12dGkIUBU=
github.com/beeper/td v0.107.1-0.20240814184019-6dd52cc45f51/go.mod h1:rHtaG0hd4EY0ice4f9CVH/JxsA7ZICqkcH3aFSVZplg=
github.com/beeper/td v0.107.1-0.20240815233135-3fc7e069705d h1:NtQqxJ9meIIGAwGo0cayqeaNy3iqBng2Sq0rZgCqsuc=
github.com/beeper/td v0.107.1-0.20240815233135-3fc7e069705d/go.mod h1:rHtaG0hd4EY0ice4f9CVH/JxsA7ZICqkcH3aFSVZplg=
github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8=
github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE=
github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs=
+9 -1
View File
@@ -168,6 +168,15 @@ func NewTelegramClient(ctx context.Context, tc *TelegramConnector, login *bridge
SessionStorage: client.ScopedStore,
Logger: zaplog,
UpdateHandler: updatesManager,
OnDead: func() {
login.BridgeState.Send(status.BridgeState{
StateEvent: status.StateTransientDisconnect,
Message: "Telegram client disconnected",
})
},
OnSession: func() {
login.BridgeState.Send(status.BridgeState{StateEvent: status.StateConnected})
},
})
client.clientCancel, err = connectTelegramClient(ctx, client.client)
@@ -317,7 +326,6 @@ func connectTelegramClient(ctx context.Context, client *telegram.Client) (contex
func (t *TelegramClient) Connect(ctx context.Context) (err error) {
t.clientCancel, err = connectTelegramClient(ctx, t.client)
t.userLogin.BridgeState.Send(status.BridgeState{StateEvent: status.StateConnected})
return
}