يدعم هذا الإصدار من المكتبة ميزات تحديث Telegram Bot API 9.4 و 9.5. فيما يلي الميزات الجديدة وكيفية استخدامها.
تم إضافة نوع جديد للكيانات MessageEntity يسمى date_time لعرض التاريخ والوقت بتنسيق محدد للمستخدم.
// مثال على تنسيق التاريخ والوقت في MarkdownV2
$text = "موعد الاجتماع: ";
Request::sendMessage([
'chat_id' => $chat_id,
'text' => $text,
'parse_mode' => 'MarkdownV2',
]);أصبح بإمكان جميع البوتات الآن استخدام الطريقة sendMessageDraft لبث أجزاء من الرسالة للمستخدم أثناء إنشائها (مثل تطبيقات الذكاء الاصطناعي).
Request::sendMessageDraft([
'chat_id' => $chat_id,
'draft_id' => 12345, // معرف فريد للمسودة
'text' => "جاري التفكير...",
]);
// تحديث النص (سيظهر بحركة أنيميشن)
Request::sendMessageDraft([
'chat_id' => $chat_id,
'draft_id' => 12345,
'text' => "جاري التفكير... لقد وجدت الحل!",
]);
// إرسال الرسالة النهائية باستخدام sendMessage العاديتم إضافة حقل tag للأعضاء العاديين، وطريقة setChatMemberTag لتعيينها، بالإضافة إلى أذونات التحكم بها.
// تعيين وسم لعضو
Request::setChatMemberTag([
'chat_id' => $chat_id,
'user_id' => $user_id,
'tag' => "مميز",
]);الأذونات الجديدة:
can_edit_tag: يسمح للمستخدم بتعديل وسمه الخاص.can_manage_tags: يسمح للمشرفين بتعديل وسوم الأعضاء.
أصبح بإمكان البوتات إنشاء مواضيع في الدردشات الخاصة مع المستخدمين، تماماً كما في المجموعات الكبيرة.
// إنشاء موضوع في دردشة خاصة
Request::createForumTopic([
'chat_id' => $user_id,
'name' => "الدعم الفني",
]);يمكن الآن تغيير لون الأزرار وإضافة رموز تعبيرية مخصصة لها.
$keyboard = new InlineKeyboard([
['text' => 'حذف', 'callback_data' => 'delete', 'style' => 'danger'], // زر أحمر
['text' => 'تأكيد', 'callback_data' => 'ok', 'style' => 'success'], // زر أخضر
['text' => 'معلومات', 'callback_data' => 'info', 'style' => 'primary'], // زر أزرق
]);
$keyboard_with_emoji = new Keyboard([
['text' => 'الإعدادات', 'icon_custom_emoji_id' => '5368324170671202286'],
]);طرق جديدة لتعيين أو حذف صورة البوت الشخصية مباشرة عبر API.
Request::setMyProfilePhoto([
'photo' => '/path/to/photo.jpg',
]);
Request::removeMyProfilePhoto();VideoQuality: الحصول على معلومات حول الجودات المتاحة للفيديو.first_profile_audio: الحصول على أول ملف صوتي في ملف تعريف المستخدم (للحسابات المميزة).getUserProfileAudios: جلب قائمة الملفات الصوتية في ملف تعريف المستخدم.
$response = Request::getUserProfileAudios(['user_id' => $user_id]);
if ($response->isOk()) {
$audios = $response->getResult()->getAudios();
}first_profile_audio: في كائنChatFullInfo(للدردشات الخاصة)، يمثل أول ملف صوتي في ملف تعريف المستخدم.
// جلب أول صوت في الملف الشخصي من معلومات الدردشة الكاملة
$chat_info = Request::getChat(['chat_id' => $user_id])->getResult();
$first_audio = $chat_info->getFirstProfileAudio();تم إضافة دعم لتعيين زر في أسفل الدردشة يفتح تطبيق ويب (Mini App).
Request::setChatBottomButton([
'chat_id' => $chat_id,
'bottom_button' => [
'text' => 'فتح المتجر',
'web_app' => ['url' => 'https://example.com/shop'],
],
]);- إضافة حقل
rarityلنماذج الهدايا الفريدة (UniqueGiftModel). - إضافة حقل
is_burnedللهدايا الفريدة (UniqueGift) التي تم استخدامها في نظام الصياغة (Crafting).