Forwarded from Foydali botlar
Kanalga kelgan yangi "qo'shilish so'rovlar"ini qabul qilishKanaldagi eski "qo'shilish so'rovlar"ini qabul qilishPlease open Telegram to view this post
VIEW IN TELEGRAM
PHP'da bot kodini yozadiganlar uchun GitHub link
GitHub
GitHub - BotirRaimqulov/phptelegrambot
Contribute to BotirRaimqulov/phptelegrambot development by creating an account on GitHub.
🤖 Telegram botingiz uchun Webhook sozlashni osonlashtiring!
Endi Telegram botingizni sozlashda Apify Webhook sizga yordam beradi.
🔗 https://apify.uz/webhook/
✅ Oddiy interfeys
✅ Tez sozlash
Botingizni ishga tushirishni xohlaysizmi? Boshlash uchun havolani bosing! 🚀
Endi Telegram botingizni sozlashda Apify Webhook sizga yordam beradi.
🔗 https://apify.uz/webhook/
✅ Oddiy interfeys
✅ Tez sozlash
Botingizni ishga tushirishni xohlaysizmi? Boshlash uchun havolani bosing! 🚀
👍1
from aiogram import Bot, Dispatcher, Router, F
from aiogram.types import (
Message,
MessageEntity,
InlineKeyboardMarkup,
InlineKeyboardButton,
CallbackQuery,
)
from aiogram.enums import ParseMode
import asyncio
router = Router()
BOT_TOKEN = "TOKEN"
FIRE = "5368324170671202286"
STAR = "5471952986970267163"
ROCKET = "5386367538735104399"
CHECK = "5382322671028990089"
def utf16_len(s: str) -> int:
return len(s.encode("utf-16-le")) // 2
# 1. HTML orqali
@router.message(F.text == "/html")
async def cmd_html(message: Message):
text = (
f'<tg-emoji emoji-id="{STAR}">⭐️</tg-emoji> Salom!\n'
f'<tg-emoji emoji-id="{FIRE}">🔥</tg-emoji> Premium emoji <b>HTML</b> orqali'
)
await message.answer(text, parse_mode=ParseMode.HTML)
# 2. MarkdownV2 orqali
@router.message(F.text == "/markdown")
async def cmd_markdown(message: Message):
text = (
f" Salom\\!\n"
f" Premium emoji *MarkdownV2* orqali"
)
await message.answer(text, parse_mode=ParseMode.MARKDOWN_V2)
# 3. entities orqali (parse_mode kerak emas)
@router.message(F.text == "/entities")
async def cmd_entities(message: Message):
p1 = "⭐️"
p2 = " Salom! "
p3 = "🔥"
p4 = " Premium emoji entities orqali"
text = p1 + p2 + p3 + p4
entities = [
MessageEntity(
type="custom_emoji",
offset=0,
length=utf16_len(p1),
custom_emoji_id=STAR,
),
MessageEntity(
type="custom_emoji",
offset=utf16_len(p1 + p2),
length=utf16_len(p3),
custom_emoji_id=FIRE,
),
]
await message.answer(text, entities=entities)
# 4. inline tugmalarda premium emoji
@router.message(F.text == "/menu")
async def cmd_menu(message: Message):
text = (
f'<tg-emoji emoji-id="{STAR}">⭐️</tg-emoji> <b>Asosiy menyu</b>\n\n'
f'<tg-emoji emoji-id="{FIRE}">🔥</tg-emoji> Tugmani tanlang:'
)
kb = InlineKeyboardMarkup(inline_keyboard=[
[
InlineKeyboardButton(
text="Profil",
callback_data="profile",
icon_custom_emoji_id=STAR,
),
InlineKeyboardButton(
text="Sozlamalar",
callback_data="settings",
icon_custom_emoji_id=FIRE,
),
],
[
InlineKeyboardButton(
text="Premium",
callback_data="premium",
icon_custom_emoji_id=ROCKET,
style="success",
),
],
[
InlineKeyboardButton(
text="Bekor qilish",
callback_data="cancel",
icon_custom_emoji_id=CHECK,
style="danger",
),
],
])
await message.answer(text, parse_mode=ParseMode.HTML, reply_markup=kb)
# Yuborilgan Premium emoji ID ni olish
@router.message(F.entities)
async def get_emoji_id(message: Message):
ids = [
e.custom_emoji_id
for e in message.entities
if e.type == "custom_emoji" and e.custom_emoji_id
]
if ids:
lines = "\n".join(f"<code>{eid}</code>" for eid in ids)
await message.reply(f"Emoji ID:\n{lines}", parse_mode=ParseMode.HTML)
@router.callback_query(F.data.in_({"profile", "settings", "premium", "cancel"}))
async def on_callback(callback: CallbackQuery):
await callback.answer(f"{callback.data} bosildi")
async def main():
bot = Bot(token=BOT_TOKEN)
dp = Dispatcher()
dp.include_router(router)
await dp.start_polling(bot)
if __name__ == "__main__":
asyncio.run(main())
Telegram bot api'dagi ba'zi yangilanishlarni ishlatish uchun aiogram kodi namunasi (AI orqali yozilgan, tekshirib ko'rilgan)
from aiogram import Bot, Dispatcher, Router, F
from aiogram.types import (
Message,
ReplyKeyboardMarkup,
KeyboardButton,
KeyboardButtonPollType,
)
import asyncio
bot = Bot(token="token")
dp = Dispatcher()
router = Router()
dp.include_router(router)
@router.message(F.text == "/poll")
async def send_poll_keyboard(message: Message):
keyboard = ReplyKeyboardMarkup(
keyboard=[
[
KeyboardButton(
text="Regular",
request_poll=KeyboardButtonPollType(type="regular"),
),
KeyboardButton(
text="Quiz",
request_poll=KeyboardButtonPollType(type="quiz"),
),
],
[
KeyboardButton(
text="Ixtiyoriy",
request_poll=KeyboardButtonPollType(),
),
],
],
resize_keyboard=True,
)
await message.answer("Poll turini tanlang:", reply_markup=keyboard)
async def main():
await dp.start_polling(bot)
if __name__ == "__main__":
asyncio.run(main())
So‘rovnoma (Poll) yaratish oynasini ochuvchi Keyboard namunasi. Natijalarni olish ilgariroq ko‘rsatilgan
Uzoq tanaffusdan so'ng yana faoliyatni davom ettiramiz!
So'nggi bir necha oy davomida Telegram Bot API yangiliklarini muntazam kuzata olmadim. Bugun esa o'zgarishlarni ko'rib chiqdim va aytishim mumkinki — Bot API yana jiddiy rivojlanibdi.
Ayniqsa 11-iyun yangilanishi e'tiborimni tortdi. Unda botlar uchun bir nechta muhim imkoniyatlar qo'shildi:
Rich Messages
Oddiy matndan ancha kuchli va moslashuvchan xabarlar.
Sarlavhalar, jadvallar, ro'yxatlar, iqtiboslar, media bloklari, spoiler, kod bloklari, matematik formulalar va boshqa ko'plab formatlash imkoniyatlari.
AI javoblarini bosqichma-bosqich (streaming) ko'rsatish imkoniyati.
Rich Message'larni yuborish, tahrirlash va Web App hamda Inline rejimlarida ishlatish.
Join Request Queries
Kanal va guruhlarga qo'shilish so'rovlarini boshqaruvchi botlar uchun yangi metodlar.
Join Request jarayonini yanada qulay avtomatlashtirish imkoniyati.
Poll yangilanishlari
So'rovnomalarda havolalarni qo'llab-quvvatlash.
Poll variantlariga media obyektlarini yanada qulay biriktirish imkoniyatlari.
Bu esa hali hammasi emas. Oxirgi versiyalarda yana ko'plab foydali o'zgarishlar qo'shilgan.
Yaqin kunlarda ushbu yangiliklarning har birini real kod namunalari, PHP, Python (Aiogram) va Telegram Bot API misollari bilan alohida postlarda ko'rib chiqamiz.
Agar Telegram botlar ustida ishlayotgan bo'lsangiz, kanalni kuzatib boring — amaliy misollar hali oldinda.
So'nggi bir necha oy davomida Telegram Bot API yangiliklarini muntazam kuzata olmadim. Bugun esa o'zgarishlarni ko'rib chiqdim va aytishim mumkinki — Bot API yana jiddiy rivojlanibdi.
Ayniqsa 11-iyun yangilanishi e'tiborimni tortdi. Unda botlar uchun bir nechta muhim imkoniyatlar qo'shildi:
Rich Messages
Oddiy matndan ancha kuchli va moslashuvchan xabarlar.
Sarlavhalar, jadvallar, ro'yxatlar, iqtiboslar, media bloklari, spoiler, kod bloklari, matematik formulalar va boshqa ko'plab formatlash imkoniyatlari.
AI javoblarini bosqichma-bosqich (streaming) ko'rsatish imkoniyati.
Rich Message'larni yuborish, tahrirlash va Web App hamda Inline rejimlarida ishlatish.
Join Request Queries
Kanal va guruhlarga qo'shilish so'rovlarini boshqaruvchi botlar uchun yangi metodlar.
Join Request jarayonini yanada qulay avtomatlashtirish imkoniyati.
Poll yangilanishlari
So'rovnomalarda havolalarni qo'llab-quvvatlash.
Poll variantlariga media obyektlarini yanada qulay biriktirish imkoniyatlari.
Bu esa hali hammasi emas. Oxirgi versiyalarda yana ko'plab foydali o'zgarishlar qo'shilgan.
Yaqin kunlarda ushbu yangiliklarning har birini real kod namunalari, PHP, Python (Aiogram) va Telegram Bot API misollari bilan alohida postlarda ko'rib chiqamiz.
Agar Telegram botlar ustida ishlayotgan bo'lsangiz, kanalni kuzatib boring — amaliy misollar hali oldinda.
🚀 PHP Telegram Bot kutubxonasi yangilandi!
Telegram Bot API 10.0 → 10.2 yangiliklari endi PHP kutubxonasida ham mavjud. Endi Telegram botlaringizda yangi imkoniyatlarni yanada oson va qulay ishlatishingiz mumkin. ⚡️
✨ Nimalar qo‘shildi?
👻 Ephemeral Messages
Guruhda faqat ma’lum bir foydalanuvchiga ko‘rinadigan maxfiy xabarlar.
🧱 Rich Messages
Sarlavha, iqtibos, kod, jadval va boshqa bloklardan foydalanib, chiroyli va strukturali xabarlar yaratish.
🕵️ Guest Mode
Bot a’zo bo‘lmagan chatlarda ham ayrim holatlarda ishlashi mumkin.
🚪 Chat Join Request
Kanal yoki guruhga qo‘shilish so‘rovlarini boshqarish, tugmalar va Web App bilan ishlash.
👍 Reaksiyalarni boshqarish
Reaksiyalarni olib tashlash va boshqarish uchun yangi metodlar.
📊 Poll yangilanishlari
📸 Live Photo
Jonli suratlarni bot orqali yuborish imkoniyati.
⚙️ 15+ yangi metod va
📚 To‘liq hujjat va kodlar — o‘zbek tilida:
🔗 https://github.com/BotirRaimqulov/phptelegrambot
PHP’da Telegram bot ishlab chiqayotgan bo‘lsangiz, kutubxonani sinab ko‘rishingiz mumkin. 🚀
#PHP #TelegramBot #BotAPI #Telegram #OpenSource
Telegram Bot API 10.0 → 10.2 yangiliklari endi PHP kutubxonasida ham mavjud. Endi Telegram botlaringizda yangi imkoniyatlarni yanada oson va qulay ishlatishingiz mumkin. ⚡️
✨ Nimalar qo‘shildi?
👻 Ephemeral Messages
Guruhda faqat ma’lum bir foydalanuvchiga ko‘rinadigan maxfiy xabarlar.
🧱 Rich Messages
Sarlavha, iqtibos, kod, jadval va boshqa bloklardan foydalanib, chiroyli va strukturali xabarlar yaratish.
🕵️ Guest Mode
Bot a’zo bo‘lmagan chatlarda ham ayrim holatlarda ishlashi mumkin.
🚪 Chat Join Request
Kanal yoki guruhga qo‘shilish so‘rovlarini boshqarish, tugmalar va Web App bilan ishlash.
👍 Reaksiyalarni boshqarish
Reaksiyalarni olib tashlash va boshqarish uchun yangi metodlar.
📊 Poll yangilanishlari
members_only, media va bitta variantli poll kabi yangi imkoniyatlar.📸 Live Photo
Jonli suratlarni bot orqali yuborish imkoniyati.
⚙️ 15+ yangi metod va
bot.php faylida tayyor foydalanish namunalari qo‘shildi:/rich • /secret • /poll • /admins📚 To‘liq hujjat va kodlar — o‘zbek tilida:
🔗 https://github.com/BotirRaimqulov/phptelegrambot
PHP’da Telegram bot ishlab chiqayotgan bo‘lsangiz, kutubxonani sinab ko‘rishingiz mumkin. 🚀
#PHP #TelegramBot #BotAPI #Telegram #OpenSource
GitHub
GitHub - BotirRaimqulov/phptelegrambot
Contribute to BotirRaimqulov/phptelegrambot development by creating an account on GitHub.