Auto-restart gateway after Telegram QR onboarding

This commit is contained in:
Shannon Sands
2026-06-10 01:35:12 -07:00
committed by Teknium
parent 298bb93d39
commit 984e69ff62
4 changed files with 124 additions and 10 deletions
+5 -1
View File
@@ -1475,7 +1475,11 @@ export interface TelegramOnboardingApplyResponse {
ok: boolean;
platform: "telegram";
bot_username?: string;
needs_restart: true;
needs_restart: boolean;
restart_started?: boolean;
restart_action?: string;
restart_pid?: number | null;
restart_error?: string;
}
export interface SessionMessage {
+16 -7
View File
@@ -608,19 +608,28 @@ function TelegramOnboardingPanel({
setPhase("applying");
setError("");
try {
await api.applyTelegramOnboarding(setup.pairing_id, {
const result = await api.applyTelegramOnboarding(setup.pairing_id, {
allowed_user_ids: allowedIds,
});
resetSetup();
showToast("Telegram saved", "success");
try {
await api.restartGateway();
showToast("Gateway restarting…", "success");
if (result.restart_started) {
showToast("Telegram saved; gateway restarting…", "success");
setRestartNeeded(false);
setTimeout(() => void onChanged(), 4000);
} catch (restartError) {
} else if (result.restart_started === undefined && result.needs_restart) {
try {
await api.restartGateway();
showToast("Telegram saved; gateway restarting…", "success");
setRestartNeeded(false);
setTimeout(() => void onChanged(), 4000);
} catch (restartError) {
onRestartNeeded();
showToast(`Telegram saved; gateway restart failed: ${restartError}`, "error");
}
} else {
onRestartNeeded();
showToast(`Telegram saved; restart failed: ${restartError}`, "error");
const detail = result.restart_error ? `: ${result.restart_error}` : "";
showToast(`Telegram saved; gateway restart failed${detail}`, "error");
}
await onChanged();
} catch (applyError) {