ربات بله با php

سلام
چندوقت پیش یک نفر من رو ازطریق مطلبی که درباره بات نویسی پیام رسان بله نوشته بودم پیداکرد (نمیدونم از طریق ویرگولم بود یا همین سایت)‌ و گفت یک مسابقه داریم و میخوایم افراد اثر هاشنو رو برای ربات بفرستند و ربات برای من. (ربات بله برای فورواد کردن نیاز داشتن، یعنی نمی خواست افراد مستقیما براش چیزی بفرستند و میخواست به واسطه ربات پیام هارو دریافت کنه!)، گفتن سرور داریم، ربات رو با پایتون آمده کردم(که خیلی داستان داشت، بعدا وقت شد مینویسم) گفتم دسترسی ssh بدید بارگذاری کنم دیدم یوزنیم پسورد یک هاست cpanel فرستادن!
دوتا راهکار داشتم:
1- پیاده سازی با فلسک یا …
2- استفاده از php (لعنت الله علیه)

یکم با کدم سرکله زدم دیدم پیاده سازیش داستان داره، بیخیال شدم و رفتم به سمت PHP !
حدود یکی دوسال پیش با php برای تلگرام بات نوشتم (اگر قسمت بشه کدش رو تو گیت‌هام پابلیش میکنم) رباتی که فایل های apk براش ارسال میکردی و با virus total چک میکرد بد افزار هست یا نه (اون زمان تو تلگرام خیلی بدافزار به باعنوان های زرد مثل صیغه یاب و… منتشر میشد)

مطلب بالا رو برای این گفتم، چون api جدید بله با تلگرام سازگاری داره (یا حداقل اینطوری ادعا میکنن) و اون کتابخونه که استفاده کردم خیلی کوچیک و راه انداز بود و فقط کافی هست با چند تغییر کوچیک برای بله آمادش کنیم.

برای شروع اول این کتاب خونه رو دانلود کنید.
و مقدار api.telegram.org این خط و این خط رو به tapi.bale.ai تغییر بدید، به همین آسونی!

مثلا یک فایل به اسم bot.php ایجاد کنید و دو فایل Telegram.php و TelegramErrorLogger.php در کنارش قرار بدید (حتما تغییرات قسمت بالا رو داده باشد)

bot.php

مقدار BOT_TOKEN رو به توکن ربات خودتون و YOUR_CHAT_ID رو با چت آیدی خودتون جایگزین کنین.

و در آخر webhook تون رو ست کنید:

موفق باشید

پ.ن: چند بازخورد گرفتم که میگفتن YOUR_CHAT_ID چی چی هست و از کجا پیدا کنیم. لازم شد یکی چیزی رو اینجا توضیح بدم.
اول از همه این یک ربات فورواد کننده هست همونطوری که بالا اشاره کردم. دوم،‌ برای بدست آوردن chat id خودتون، میتونید یک قسمت دیگه به کد اضافه کنید که chat id خودتون رو برای خودتون بفرسته، مثلا:

21 پاسخ به “ربات بله با php”

  1. سلام
    درباره ست کردن webhook میشه بیشتر توضیح بدید؟
    من روی هاستم یه پوشه ساختم و فایلهای کتابخانه شما رو با تغییراتی که گفتید داخلش وارد کردم مرحله مرحله پیش رفتم اما چنین پاسخی از وبهوک میگیرم توی مرورگر:
    {
    “ok” : false,
    “result” : null,
    “description” : “Not Found: method not found”,
    “errorCode” : 404,
    “parameters” : null
    }

    1. امیر مطهری میگویند: پاسخ

      سلام هموطن 🙂
      ست کردن وب ‌هوک ربات بله دقبقا مثل ربات تلگرام هست
      فقط کافی هست مقدار [BOT_TOKEN] و [YOUR_DOMAIN] با توکن و ادرس خودن عوض کنید!
      (من یک یک غلط املایی در قسمت وب هوک داشتم، درستش کردم به احتمال زیاد برای همون کارنمیکرد، شرمنده)

  2. ساختمش 🙂

    1. امیر مطهری میگویند: پاسخ

      آفرین 🙂

  3. جعفر میگویند: پاسخ

    سلام ممنون..ربات درست کار میکنه ولی من نتونستم کیبورد واینلاین کیبورد را راه اندازی کنم..نمایش نمیده

    1. امیر مطهری میگویند: پاسخ

      سلام
      واقعا یادم نیست، این ربات مال خیلی وقت پیش هست 🙂

  4. salam
    agha in chat_id ro bayad az koja bir biyarim

    1. امیر مطهری میگویند: پاسخ

      سلام
      موقعی که پیام براتون ارسال میشه و شما دریافت میکنید حامل chat id هم هست

  5. نیما میگویند: پاسخ

    داداش هر مرحله رو که گفتی انجام دادم ولی نشد. هاست از پک رایگان infinityfree هست و گواهی ssl فعالی داره و سایت رو که سرچ میکنم میاره ولی ربات کار نمیکنه.

    1. امیر مطهری میگویند: پاسخ

      باید لاگ کنی، شاید داری جایی ارور میخوری فکر میکنی که کلا کار نمیکنه!

  6. سلام، با php خام نمیشه!؟ حتما باید با composer استفاده کرد؟!

    1. امیر مطهری میگویند: پاسخ

      سلام
      این با PHP خام هست 🙂

  7. سلام ممنون از اطلاعات خوبتون
    چگونه chat id رو در پیام رسان بله پیدا کنیم؟

    1. امیر مطهری میگویند: پاسخ

      سلام، لطف دارید
      اینکه قبل از پیام به ربات chat id رو پیدا کنید رو نمیدونم(بگردید، شاید رباتی پیدا کردید که با فوروارد کردن پیام بهتون chat id رو بده) ولی توی کد مشخص هست چطور
      $chat_id = $telegram->ChatID();

  8. ممنونم
    فقط الا $admin_chat_id همان آید داخل پروفایل بله هستش یا باید از جایی پیدا کنیم؟

    1. امیر مطهری میگویند: پاسخ

      نه،‌id با username‌متفاوت هست.
      به آخر پست یک توضیح اضافه کردم، اون بخونید

  9. ممنون لطف کردین

  10. همین کتابخونه رو سال 96 من استفاده کردم و سال 97 باهاش یک استارت آپ راه انداختم
    الان که فهمیدم بله همون رو میتونه ساپورت کنه رفتم کاری که گفتی رو کردم

    composer require saber13812002/telegram-bale-bot-php

    هر کس خواست میتونه از این استفاده کنه

    راهنماش رو هم اینجا میگذارم

    https://github.com/saber13812002/TelegramBotPHP

    خیلی ساده است

    اگر کلاس تلگرام رو صدا زدی توکن میدی استفاده میکنی
    $telegram = new Telegram(‘YOUR_TELEGRAM_TOKEN’);

    مثل قبل

    اگر کلاس بله رو خواستی بزنی توکن بله رو میدی پارامتر دوم رو ‘bale’ میفرستی

    $bale = new Telegram(‘YOUR_BALE_TOKEN’,’bale’);

    و بقیه چیزا همه مثل قبله

    1. امیر مطهری میگویند: پاسخ

      عالی!

  11. سلام
    من یه سورس رو api رو از تلگرام به بله تغییر دادم
    ست وبهوک هم موفقیت آمیز بود
    ولی ربات کار نمیکنه میشه کمک کنید

    اینم نتیجه ست وبهوک
    {“ok”:true,”result”:true,”error_code”:0}

    1. امیر مطهری میگویند: پاسخ

      سلام
      این کد رو خیلی وقت پیش نوشتم و اصلا یادم نیست
      فکر کنم خودش یک فایل لاگ میسازه و ارور ها رو اونجا میذاره

دیدگاهتان را بنویسید