رد کردن این محتوا

ساخت ربات تلگرام با PHP – قسمت سوم

ادامه مقاله ساخت ربات تلگرام با PHP – قسمت دوم

آشنایی با API getUpdates

برای دریافت آخرین پیام های کاربران ربات تلگرام از getUpdates استفاده می کنیم.
استفاده از getUpdates شبیه به استفاده از getMe می باشد که در مقاله ی قبل توضیح داده شد.

ارسال پیام به ربات تلگرام

همانطور که در شکل بالا مشخص است پیام start برای ربات فرستاده شده است. حال اگر دستور getUpdates را اجرا کنیم خواهیم دید که این پیام توسط ربات دریافت شده است.ارسال در خواست getUpdates

و نتیجه به شکل زیر خواهد بود.

 

در متن بالا قسمت قرمز رنگ متن ارسالی از کاربر به ربات است.
مشخصات کاربر ارسال کننده پیام نیز به رنگ بنفش نمایش داده شده است.
هر کاربر یک شماره ی کاربری دارد که توسط این شماره کاربری می توان برای آن کاربر پیام ارسال کرد.

۴−کتابخانه ی TelegramBot

کتابخانه ی TelegramBot چیست ؟

کتابخانه ی TelegramBot مجموعه ای از توابع و کلاس های PHP از قبل آماده است که به کمک این توابع می توان به صورت کپسوله شده از API ربات تلگرام استفاده کرد.

آماده سازی TelegramBot

برای دریافت کتابخانه ی TelegramBot دو روش وجود دارد:

  1. استفاده از Composer
  2. دانلود سورس به صورت مستقیم

در این مقاله از روش اول استفاده می کنیم. آموزش نصب Composer

ابتدا وارد پوشه ی پروژه ربات تلگرام شوید سپس دستور زیر را در Command Prompt و یا Terminal وارد کنید و صبر کنید تا فایل های مورد نظر دانلود شود.

سپس یک فایل PHP به اسم TB.php درست کرده و کد های زیر را در آن بنویسید.

 

با انجام مراحل بالا آماده سازی TelegramBot انجام می شود.

ادامه ی آموزش در مقاله ی بعدی قرار خواهد گرفت.

 

منتشر شده آموزش

11 نظر

  1. amir amir

    سلام من ادرسی که گفتید میزنم و فقط اینو میبینم
    {“ok”:false,”error_code”:404,”description”:”Not Found”}

    • digiways digiways

      سلام
      امکان داره Token اشتباهی استفاده کرده باشی در مقاله ی آموزش ساخت ربات تلگرام قسمت دوم نحویه ی دریافت Token آموزش داده شده.
      اگه از صحت Token اطمینان داری آدرسی که استفاده کردی رو برام بفرست که بتونم کمک بیشتری کنم.

  2. محمد محمد

    سلام
    خسته نباشید
    چه جوری میشه مقدار start رو از این url ربات گرفت و به سمت سرور سایتمون ارسال کرد؟
    مثلا این آدرس ربات و مقدار start هست
    http://telegram.me/funpatogh2017_bot?start=73782230
    الان به چه شکلی میتونم مقدار start رو دریافت کنم

    • digiways digiways

      فکر نمیکنم این امکان وجود داشته باشه
      چرا این عدد رو لازم دارید ؟

  3. احسان احسان

    سلام
    این قسمت رو متوجه نمیشم. میشه بیشتر توضیح بدید؟
    “ابتدا وارد پوشه ی پروژه ربات تلگرام شوید سپس دستور زیر را در Command Prompt و یا Terminal وارد کنید و صبر کنید تا فایل های مورد نظر دانلود شود.”

    • digiways digiways

      سلام برای دانلود کتابخانه های PHP برای ساخت ربات تلگرام از پکیج منیجر Composer استفاده کرده ایم برای اینکه بتونیم توسط این نرم افزار کتابخانه ها را دانلود کنیم باید ابتدا این نرم افزار رو نصب کنیم و وارد پوشه ی پروژه بشیم و بعد از اون دستوراتی که گفته شده رو توی Command Line ویندوز یا Terminal لینوکس بزنیم که اتوماتیک کتابخانه ها رو دانلود کنه.

      • digiways digiways

        پیشنهاد می کنم از PhpStorm IDE استفاده کنید. این IDE شامل Composer هم هست

  4. سلام
    من یه کدی نوشتم که getupdates بکنه و به پیغام ها جواب بده
    دو تا مشکل وجود داره
    اول این که هر بار که کد اجرا میشه، دو باره به پیغام های قبلی گه پاسخ داده پاسخ میده
    دوم اینکه به پیغام هایی که تو گروه فرستاده شده پاسخ نمیده اصلا
    ایراد از کجاست
    چه باید کرد؟
    ممنون میشم زود پاسخ بدید

    • digiways digiways

      سلام
      با توجه به API تلگرام Telegram getUpdates API دستور getUpdates یک offset داره که این offset باید یزرگتر از آخرین Id پیامی باشه که خونده شده.
      مثلا اگر آخرین پیامی که خوندی Id = 500 داشته باشه برای دریافت پیام‌های جدید offset باید 501 بشه.

      در مورد سوال دوم باید پیام رو توی گروه مستقیم به Bot فرستاد برای این کار قبل از دستوری که می خواید به ربات بفرستید اسم ربات رو به صورت @botName بزارید

  5. مصطفی مصطفی

    سلام
    من یک دکمه در رباتم به نام ارسال نظر ساختم، ولی نتونستم تعریفش کنم، یعنی میخوام وقتی کاربر بخواد نظر بده روی دکمه کلیک کنه و پیام استقبال من براش ظاهر بشه و بعد پیام رو بنویسه و برای من بفرسته، بعد میخوام اصل پیام کاربر به همراه ایدی عددی و یوزر نیم تلگرام کاربر برام ظاهر بشه و من این امکان رو داشته باشم که به اون پاسخ بدم
    میشه کد رو بنویسید یا راهنمایی کنید بنده بنویسم؟؟

    • digiways digiways

      این کاری که می‌خواید انجام بدید ساده نیست بهتره اول به بخش پرونده‌های (Documents) ربات تلگرام برید و کسب اطلاع کنید

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *