Telegram API
If you haven't read the setup instruction, please do so first.
from pyrogram import Client, filters
from pyrogram.types import Message
from doti18n import LocaleData
i18n = LocaleData("locales")
app = Client("bot", api_id=..., api_hash="...", bot_token="...")
@app.on_message(filters.command("start"))
async def main(_, message: Message):
t = i18n[message.from_user.language_code].main
await message.reply(t.hello)
app.run()
import asyncio
from aiogram import Bot, Dispatcher
from aiogram.types import Message
from aiogram.filters import CommandStart
from doti18n import LocaleData
i18n = LocaleData("locales")
dp = Dispatcher()
@dp.message(CommandStart())
async def start_handler(message: Message):
t = i18n[message.from_user.language_code].main
await message.reply(t.hello)
async def main():
bot = Bot(token="...")
await dp.start_polling(bot)
if __name__ == "__main__":
asyncio.run(main())
from telegram import Update
from telegram.ext import ApplicationBuilder, CommandHandler, ContextTypes
from doti18n import LocaleData
i18n = LocaleData("locales")
async def main(update: Update, _):
t = i18n[update.effective_user.language_code].main
await update.message.reply_text(t.hello)
app = ApplicationBuilder().token("...").build()
app.add_handler(CommandHandler("start", hello))
app.run_polling()
from telethon import TelegramClient, events
from doti18n import LocaleData
i18n = LocaleData("locales")
client = TelegramClient("bot", api_id=..., api_hash="...").start(bot_token="...")
@client.on(events.NewMessage(pattern='/start'))
async def main(event: events.NewMessage.Event):
user = await event.get_sender()
t = i18n[user.lang_code].main
await event.reply(t.hello)
client.run_until_disconnected()