إنشاء بوت تيليجرام بلغة Swift: من الفكرة إلى النشر

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

بوت تيليجرام بلغة Swift: دليل خطوة بخطوة للشجعان

\n\n

مرحبًا أيها المطور! إذا كنت تعتقد أن بوتات تيليجرام تُكتب فقط بلغة Python أو JavaScript — لدي خبر لك. لغة Swift، التي تحبها كثيرًا لأناقتها وأدائها، مناسبة تمامًا لتطوير الخوادم. نعم، نفس لغة Swift التي تكتب بها تطبيقات iOS يمكنها العمل على الواجهة الخلفية أيضًا. في هذا الدليل، سننشئ بوت تيليجرام بلغة Swift من الصفر باستخدام Vapor — إطار عمل ويب قوي. سيرد البوت على الأوامر، ويعالج الرسائل، بل ويرسل الصور أيضًا. هيا بنا!

\n\n

لماذا Swift لبوت تيليجرام؟ تحطيم الصور النمطية

\n\n

قبل أن نغوص في الكود، دعنا نفهم لماذا نكتب بوتًا بلغة Swift. أولاً، إذا كنت مطور iOS، فأنت تعرف اللغة بالفعل. لست بحاجة لتعلم Python أو JS من الصفر. ثانيًا، Swift يوفر أمان الأنواع والسرعة. سيعمل البوت بسرعة وبدون مفاجآت. ثالثًا، نظام Vapor البيئي يسمح بالتكامل بسهولة مع قواعد البيانات، وإرسال الإشعارات، وحتى تحليل JSON. ونعم، Telegram Bot API يعمل بشكل ممتاز مع Swift. المهم هو إعداد البيئة بشكل صحيح.

\n\n

الخطوة 1: إعداد البيئة

\n\n

سنحتاج إلى Xcode (الإصدار 14 على الأقل)، Homebrew، وVapor. إذا كان لديك Xcode بالفعل — رائع. إذا لم يكن — قم بتنزيله من Mac App Store. الآن لنقم بتثبيت Vapor:

\n\n
brew install vapor
\n\n

بعد التثبيت، تحقق من الإصدار:

\n\n
vapor --version
\n\n

هل ترى رقم الإصدار؟ ممتاز. الآن لننشئ مشروعًا جديدًا:

\n\n
vapor new TelegramBotSwift --template web\ncd TelegramBotSwift
\n\n

العلامة --template web ستنشئ هيكل تطبيق خادم. إذا كنت تريد الحد الأدنى — استخدم --template api. سنسلك طريق تطبيق الويب للحصول على مرونة أكبر.

\n\n

الخطوة 2: ربط Telegram Bot API

\n\n

للعمل مع تيليجرام، سنحتاج إلى مكتبة. هناك عدة خيارات: TelegramBotSDK من Vapor، SwiftTelegramBot، أو طلبات HTTP الخام. أوصي بـ TelegramBotSDK — فهو مستقر وموثق جيدًا. لنضفه إلى Package.swift:

\n\n
// swift-tools-version:5.9\nimport PackageDescription\n\nlet package = Package(\n    name: "TelegramBotSwift",\n    platforms: [.macOS(.v12)],\n    dependencies: [\n        .package(url: "https://github.com/vapor/vapor.git", from: "4.0.0"),\n        .package(url: "https://github.com/vapor/telegram-bot-sdk.git", from: "2.0.0")\n    ],\n    targets: [\n        .executableTarget(\n            name: "App",\n            dependencies: [\n                .product(name: "Vapor", package: "vapor"),\n                .product(name: "TelegramBotSDK", package: "telegram-bot-sdk")\n            ]\n        )\n    ]\n)
\n\n

الآن لنحصل على رمز (توكن) البوت. افتح تيليجرام، ابحث عن BotFather، اكتب /newbot، واتبع التعليمات. احفظ الرمز — ستحتاجه بعد دقيقة.

\n\n

الخطوة 3: كتابة أول بوت بلغة Swift

\n\n

افتح ملف Sources/App/configure.swift. هذه هي نقطة الدخول. لنكتب هيكلًا أساسيًا:

\n\n
import Vapor\nimport TelegramBotSDK\n\npublic func configure(_ app: Application) throws {\n    // الحصول على الرمز من متغيرات البيئة\n    guard let token = Environment.get("TELEGRAM_BOT_TOKEN") else {\n        fatalError("TELEGRAM_BOT_TOKEN غير موجود")\n    }\n    \n    // تهيئة البوت\n    let bot = TelegramBot(token: token, app: app)\n    \n    // معالج الأمر /start\n    bot.onCommand("start") { context in\n        try await context.sendMessage("مرحبًا! أنا بوت بلغة Swift. كيف يمكنني المساعدة؟")\n    }\n    \n    // معالج الأمر /help\n    bot.onCommand("help") { context in\n        try await context.sendMessage("الأوامر المتاحة:\\n/start - بدء\\n/help - مساعدة\\n/echo [نص] - تكرار الرسالة")\n    }\n    \n    // معالج الأمر /echo\n                

المدونات

توصيات الكتب