feat(telegram): load config from telegram.toml
This commit is contained in:
@@ -5,19 +5,30 @@ import os
|
||||
import sys
|
||||
from typing import Optional
|
||||
|
||||
from bridge_common import TelegramClient, RouteStore
|
||||
from bridge_common import TelegramClient, RouteStore, config_get, load_telegram_config
|
||||
|
||||
|
||||
def main() -> None:
|
||||
config = load_telegram_config()
|
||||
default_chat_id = config_get(config, "chat_id")
|
||||
if isinstance(default_chat_id, str):
|
||||
default_chat_id = int(default_chat_id) if default_chat_id.strip() else None
|
||||
elif not isinstance(default_chat_id, int):
|
||||
default_chat_id = None
|
||||
|
||||
ap = argparse.ArgumentParser()
|
||||
ap.add_argument("--chat-id", type=int, required=True)
|
||||
ap.add_argument("--chat-id", type=int, default=default_chat_id, required=default_chat_id is None)
|
||||
ap.add_argument("--tmux-target", type=str, required=True, help='tmux target, e.g. "codex1:0.0" or "codex1"')
|
||||
ap.add_argument("--db", type=str, default=os.environ.get("BRIDGE_DB", "./bridge_routes.sqlite3"))
|
||||
ap.add_argument(
|
||||
"--db",
|
||||
type=str,
|
||||
default=os.environ.get("BRIDGE_DB") or config_get(config, "bridge_db") or "./bridge_routes.sqlite3",
|
||||
)
|
||||
ap.add_argument("--reply-to", type=int, default=None, help="Optional Telegram message_id to reply to")
|
||||
ap.add_argument("--text", type=str, default=None, help="Message text. If omitted, read stdin.")
|
||||
args = ap.parse_args()
|
||||
|
||||
token = os.environ.get("TELEGRAM_BOT_TOKEN", "")
|
||||
token = os.environ.get("TELEGRAM_BOT_TOKEN") or config_get(config, "bot_token") or ""
|
||||
bot = TelegramClient(token)
|
||||
store = RouteStore(args.db)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user