
هذا هو مكون Delphi للتفاعل مع Telegram BOT API. يوفر مجموعة من الوظائف لأداء إجراءات مختلفة باستخدام منصة Telegram Bot.
لاستخدام هذا المكون في مشروع Delphi الخاص بك ، اتبع هذه الخطوات:
DTelegram.dproj الموجود في مجلد "الحزمة" لرمز مصدر المكون.DTelegram.bpl . قد تتضمن هذه الخطوة النقر بزر الماوس الأيمن على ملف المشروع وتحديد "ترجمة" ثم "تثبيت". | وظيفة | وصف | مثال الاستخدام |
|---|---|---|
| getMe | احصل على معلومات حول الروبوت. | BotInfo := TelegramBot.GetMe; |
| تسجيل الخروج | تسجيل الخروج من الروبوت. | LoggedOut := TelegramBot.LogOut; |
| يغلق | أغلق اتصال الروبوت. | Closed := TelegramBot.Close; |
| SendMessage | إرسال رسالة نصية. | Message := TelegramBot.SendMessage(ChatId, 'Hello, Telegram!'); |
| الأمام | إعادة توجيه رسالة. | ForwardedMessage := TelegramBot.ForwardMessage(TargetChatId, SourceChatId, MessageId); |
| copymessage | انسخ رسالة. | CopiedMessageId := TelegramBot.CopyMessage(TargetChatId, SourceChatId, MessageId); |
| Sendphoto | أرسل صورة. | PhotoMessage := TelegramBot.SendPhoto(ChatId, 'path/to/photo.jpg', 'Check this out!'); |
| Sendaudio | إرسال ملف صوتي. | AudioMessage := TelegramBot.SendAudio(ChatId, 'path/to/audio.mp3', 'Listen to this!'); |
| SendDocument | إرسال وثيقة. | DocumentMessage := TelegramBot.SendDocument(ChatId, 'path/to/document.pdf'); |
| Sendvideo | أرسل فيديو. | VideoMessage := TelegramBot.SendVideo(ChatId, 'path/to/video.mp4'); |
| sendanimation | إرسال الرسوم المتحركة (GIF). | AnimationMessage := TelegramBot.SendAnimation(ChatId, 'path/to/animation.gif'); |
| Sendvoice | أرسل رسالة صوتية. | VoiceMessage := TelegramBot.SendVoice(ChatId, 'path/to/voice.ogg'); |
| Sendvideonote | إرسال مذكرة فيديو. | VideoNoteMessage := TelegramBot.SendVideoNote(ChatId, 'path/to/videonote.mp4'); |
| sendlocation | إرسال موقع. | LocationMessage := TelegramBot.SendLocation(ChatId, Latitude, Longitude); |
| Sendvenue | أرسل مكانًا. | VenueMessage := TelegramBot.SendVenue(ChatId, Latitude, Longitude, 'Venue Title', 'Venue Address'); |
| SendContact | أرسل جهة اتصال. | ContactMessage := TelegramBot.SendContact(ChatId, '123456789', 'John Doe'); |
| SendPoll | أرسل استطلاعًا. | PollMessage := TelegramBot.SendPoll(ChatId, 'Which is your favorite color?', ['Red', 'Green', 'Blue']); |
| Senddice | أرسل النرد. | DiceMessage := TelegramBot.SendDice(ChatId, '?'); |
| getUpdates | احصل على تحديثات من الخادم. | Updates := TelegramBot.GetUpdates(100, -1, 0); |
| getFile | احصل على معلومات حول ملف. | FileInfo := TelegramBot.GetFile(FileId); |
| Banchatmember | حظر عضو الدردشة. | Banned := TelegramBot.BanChatMember(ChatId, UserId); |
| unfanchatmember | إلغاء عضو الدردشة. | UnBanned := TelegramBot.UnBanChatMember(ChatId, UserId); |
| CreateChatinvitelink | قم بإنشاء رابط دعوة الدردشة. | InviteLink := TelegramBot.CreateChatInviteLink(ChatId); |
| revokechatinvitelink | إلغاء رابط دعوة الدردشة. | RevokedLink := TelegramBot.RevokeChatInviteLink(ChatId, 'your_invite_link'); |
| ExportChatinvitelink | تصدير رابط دعوة الدردشة. | ExportedLink := TelegramBot.ExportChatInviteLink(ChatId); |
| AbroveChatjoinRequest | الموافقة على طلب انضمام الدردشة. | Approved := TelegramBot.ApproveChatJoinRequest(ChatId, UserId); |
| concinechatjoinrequest | ترفض طلب انضمام الدردشة. | Declined := TelegramBot.DeclineChatJoinRequest(ChatId, UserId); |
| DELETECHATPHOTO | حذف صورة الدردشة. | PhotoDeleted := TelegramBot.DeleteChatPhoto(ChatId); |
| setChattitle | اضبط عنوان الدردشة. | TitleSet := TelegramBot.SetChatTitle(ChatId, 'New Title'); |
| setchatdescription | اضبط وصف الدردشة. | DescriptionSet := TelegramBot.SetChatDescription(ChatId, 'New Description'); |
| ليفيكات | اترك الدردشة. | LeftChat := TelegramBot.LeaveChat(ChatId); |
| getchat | احصل على معلومات حول الدردشة. | ChatInfo := TelegramBot.GetChat(ChatId); |
| setMyname | اضبط اسم الروبوت. | NameSet := TelegramBot.SetMyName('New Bot Name'); |
| getMyname | احصل على اسم الروبوت. | BotName := TelegramBot.GetMyName(); |
| setMyDescription | اضبط وصف الروبوت. | DescriptionSet := TelegramBot.SetMyDescription('New Bot Description'); |
| getMyDescription | احصل على وصف الروبوت. | BotDescription := TelegramBot.GetMyDescription(); |
| GeninlineKeyboard | رد لوحات المفاتيح | Response := TelegramBot.GenInlineKeyBoard(AButtonList,NumberOfButtonPerRow); |
تحتاج إلى إنشاء روبوت قبل استخدام هذا المكون.
من السهل جدًا العثور على القناة العامة.
Ex : https://t.me/abcdefg - > ChatId := @abcdefg;احصل على معلومات حول الروبوت.
var BotInfo := TelegramBot.GetMe;تسجيل الخروج من الروبوت.
var LoggedOut := TelegramBot.LogOut;أغلق اتصال الروبوت.
var Closed := TelegramBot.Close;إرسال رسالة نصية.
var Message := TelegramBot.SendMessage(ChatId, ' Hello, Telegram! ' );إعادة توجيه رسالة.
var ForwardedMessage := TelegramBot.ForwardMessage(TargetChatId, SourceChatId, MessageId);انسخ رسالة.
var CopiedMessageId := TelegramBot.CopyMessage(TargetChatId, SourceChatId, MessageId);أرسل صورة.
// How use AOptions
var AOption : TTelegramDic; // TDictionary<string,string>;
AOption := TTelegramDic.Create;
AOption.Add( ' protect_content ' , ' 1 ' ); // Example
var PhotoMessage := TelegramBot.SendPhoto(ChatId, ' path/to/photo.jpg ' , ' Check this out! ' ,AOption);إرسال ملف صوتي.
var AudioMessage := TelegramBot.SendAudio(ChatId, ' path/to/audio.mp3 ' , ' Listen to this! ' );إرسال وثيقة.
var DocumentMessage := TelegramBot.SendDocument(ChatId, ' path/to/document.pdf ' );أرسل فيديو.
var VideoMessage := TelegramBot.SendVideo(ChatId, ' path/to/video.mp4 ' );إرسال الرسوم المتحركة (GIF).
var AnimationMessage := TelegramBot.SendAnimation(ChatId, ' path/to/animation.gif ' );أرسل رسالة صوتية.
var VoiceMessage := TelegramBot.SendVoice(ChatId, ' path/to/voice.ogg ' );إرسال مذكرة فيديو.
var VideoNoteMessage := TelegramBot.SendVideoNote(ChatId, ' path/to/videonote.mp4 ' );إرسال موقع.
var LocationMessage := TelegramBot.SendLocation(ChatId, Latitude, Longitude);أرسل مكانًا.
var VenueMessage := TelegramBot.SendVenue(ChatId, Latitude, Longitude, ' Venue Title ' , ' Venue Address ' );أرسل جهة اتصال.
var ContactMessage := TelegramBot.SendContact(ChatId, ' 123456789 ' , ' John Doe ' );أرسل استطلاعًا.
var ListAnswers := TStringList.Create;
ListAnswers.Add( ' Red ' );
ListAnswers.Add( ' Green ' );
ListAnswers.Add( ' Blue ' );
// How use Option Argument
var Option := TStringList.Create;
Option.Add( ' allows_multiple_answers=1 ' );
Option.Add( ' protect_content=true ' );
var PollMessage := TelegramBot.SendPoll(ChatId, ' Which is your favorite color? ' , ListAnswers,Option);أرسل النرد.
MyEmoji := TEmojiDice.Basketball;
var DiceMessage := TelegramBot.SendDice(ChatId, MyEmoji);احصل على تحديثات من الخادم.
// By Default : Limit = 100; OffSet = -1; TimeOut = 0
var Updates := TelegramBot.GetUpdates(limit,AOffSet,ATimeOut);
احصل على معلومات حول ملف.
var FileInfo := TelegramBot.GetFile(FileId);حظر عضو الدردشة.
var Banned := TelegramBot.BanChatMember(ChatId, UserId);إلغاء عضو الدردشة.
var UnBanned := TelegramBot.UnBanChatMember(ChatId, UserId);قم بإنشاء رابط دعوة الدردشة.
var InviteLink := TelegramBot.CreateChatInviteLink(ChatId);إلغاء رابط دعوة الدردشة.
var RevokedLink := TelegramBot.RevokeChatInviteLink(ChatId, ' your_invite_link ' );تصدير رابط دعوة الدردشة.
var ExportedLink := TelegramBot.ExportChatInviteLink(ChatId);الموافقة على طلب انضمام الدردشة.
var Approved := TelegramBot.ApproveChatJoinRequest(ChatId, UserId);ترفض طلب انضمام الدردشة.
var Declined := TelegramBot.DeclineChatJoinRequest(ChatId, UserId);حذف صورة الدردشة.
var PhotoDeleted := TelegramBot.DeleteChatPhoto(ChatId);اضبط عنوان الدردشة.
var TitleSet := TelegramBot.SetChatTitle(ChatId, ' New Title ' );اضبط وصف الدردشة.
var DescriptionSet := TelegramBot.SetChatDescription(ChatId, ' New Description ' );اترك الدردشة.
var LeftChat := TelegramBot.LeaveChat(ChatId);احصل على معلومات حول الدردشة.
var ChatInfo := TelegramBot.GetChat(ChatId);اضبط اسم الروبوت.
var NameSet := TelegramBot.SetMyName( ' New Bot Name ' );احصل على اسم الروبوت.
var BotName := TelegramBot.GetMyName();اضبط وصف الروبوت.
var DescriptionSet := TelegramBot.SetMyDescription( ' New Bot Description ' );احصل على وصف الروبوت.
var BotDescription := TelegramBot.GetMyDescription();تمكين لوحات المفاتيح المضمنة للإجراءات التفاعلية. أزرار دعم لوحات المفاتيح المضمنة التي يمكن أن تعمل خلف الكواليس أو فتح واجهات مختلفة ، بما في ذلك أزرار URL.
باستخدام temojiconstants يحتاج إلى وحدة الجزء الثالث https://github.com/aso14/delphi-unicode-emoji
// Example usage of Inline Keyboards
var
LButtonList : TList <TTelegramInlineKeyBoardButton>;
begin
LButtonList := TList<TTelegramInlineKeyBoardButton>.Create;
// Create Button without Emoji
var LButton1 := TTelegramInlineKeyBoardButton.Create;
LButton1.text := ' Delphi Telegram ' ;
LButton1.url := ' https://github.com/aso14/DTelegram ' ;
// Create Button with Emoji
var LButton2 := TTelegramInlineKeyBoardButton.Create;
LButton2.text := ' Delphi UI ' + TEmojiConstants.UpsideDownFace;
LButton2.url := ' https://t.me/delphui ' ;
var LButton3 := TTelegramInlineKeyBoardButton.Create;
LButton3.text := ' Youtube ' +TEmojiConstants.WinkingFace;
LButton3.url := ' https://www.youtube.com/@uidelphi ' ;
LButtonList.Add(LButton1);
LButtonList.Add(LButton2);
LButtonList.Add(LButton3);
// If ALimitValue = 3, the maximun number of Button per row will be 3
var Response := TelegramBot.GenInlineKeyBoard(LButtonList, 3 );
var Option := TStringList.Create;
Option.Add( ' reply_markup= ' +Response);
TelegramBot.SendMessage( ' @chatId ' , ' Text ' ,Option);
end ;يتم إصدار هذه المكتبة تحت رخصة معهد ماساتشوستس للتكنولوجيا.
لا تتردد في المساهمة أو فتح المشكلات أو تقديم ملاحظات!