شاید شما از برنامه نویسانی باشید که بخواهید تلگرام رو به صورت تحت وب برای خودتان شخصی سازی کنید. به خاطر سورس باز (open source) بودن تلگرام ، ساخت ربات تلگرام و انجام شخصی سازی های مختلف بسیار آسان است.
میتوانید با استفاده از API هایی که خود سایت تلگرام در اختیارتان قرار می دهد ، استفاده کنید. یا میتوانید از برنامه هایی که برای کار با این API ها نوشته شده استفاده کنید.
ما در آموزش ساخت ربات تلگرام CLI با PHP از روش دوم استفاده میکنیم. یکی از برنامه نویسان برنامه ای رو برای لینوکس توسعه داده که میتونید از طریق خط فرمان با تلگرام کار کنید. کار کردن با خط فرمان شاید برای همه راحت نباشه.
برای همین یک کلاس آماده برای ارتباط با این ابزار نوشتم تا شما راحت بتونید از این برنامه در PHP استفاده کنید.
سورس ربات تلگرام CLI را در آخر مقاله از باکس دانلود , دریافت کنید
۱ – نصب
برای کار با این برنامه که از این به بعد به اسم واقعیش یعنی tg-cli صداش میزنیم ابتدا باید طبق توضیحات خودش توی لینوکس نصبش کنید.بعد از اینکه نصبش کردید با دستور
1 |
./bin/telegram-cli |
در خط فرمان لینوکس (terminal) اجرا کنید
در ابتدا از شما شماره موبایل میخواد. شماره موبایلی رو که روش تلگرام دارید رو بهش بدید. یک کد به تلگرامتون ارسال میشه. کد رو وارد کنید. حالا وارد برنامه tg-cli شدید و میتونید به وسیله دستوراتی که داره با تلگرام توی ترمینال کار کنید.
میتونید دستور help رو تایپ کنید تا ببینید چه دستوراتی داره.مثلا با دستور contact_list میتونید لیست کانتکت هاتون رو ببینید. بعد از اینکه از کار کردن باهاش مطمین شدید با زدن Ctrl+c ازش خارج بشید و مرحله بعدی رو انجام بدید.
۲ – نصب کتابخانه مورد نیاز ساخت ربات تلگرام CLI با Composer
به وسیله Composer کتابخانه زیر رو نصب کنید.
ابتدا یک فایل با نام composer.json ایجاد کنید و محتویات زیر رو داخلش کپی کنید :
1 2 3 4 5 |
{ "require": { "smoqadam/telegramcli": "@dev" } } |
سپس دستور composer install رو اجرا کنید.
نکته :اگر نمیدونید Composer چیه و چجوری نصبش کنید و چجوری میشه ازش استفاده کرد بهتره با مراجعه به آموزش composer در php و بعد از یادگرفتن کامپوزر برگردید و آموزش رو ادامه بدید.
۳ – ایحاد کد های ساخت ربات تلگرام CLI با PHP
حالا یک فایل با نام index.php ایجاد کنید :
1 2 3 4 5 |
require 'vendor/autoload.php'; $t = new Smoqadam\TelegramCli('unix:///tmp/t.sck'); $contacts = $t->contact_list(); //print_r($contacts); echo $t->post($contacts[0]['print_name'],'Hello'); |
خط اول یه شیء جدید ساختیم و آدرس سوکتی که توی مرحله بعد میبینید رو بهش دادیم. خط بعدی لیست کانتکت هارو گرفتیم. خط بعدش پرینتش کردیم. خط آخر هم یک پیام به اولین کانتکتمون ارسال کردیم.
۴ – مرحله آخر – اجرای اسکریپت
خب فایل index.php رو ذخیره کنید.حالا Terminal رو باز کنید و توی مسیری که tg-cli رو نصب کردید دستور زیر رو بزنید :
1 |
./bin/telegram-cli --json -dWS /tmp/t.sck & |
با استفاده از این دستور تمام ارتباطاطی رو که میخوایم با tg-cli داشته باشیم از طریق سوکتی که در مسیر /tmp/t.sck
ذخیره شده انجام میدیم. پس دقت کنید که مسیر سوکت رو در فایل php هم درست وارد کنید.
آپشن --json
هم به منظور استقاده شده که تمام خروحی ها رو به صورت json برای ما برگردونه تا توی php راحت تر بتونیم ازش استفاده کنیم.
حالا index.php رو توی مرورگر باز کنید. اگر مراحل قبل رو به درستی انجام داده باشید٫ پس بازشدن مرورگر و اجر شدن index.php لیست contact های شما توی صفحه نمایش داده میشه. همچنین یک پیام به اولین کانتکت شما ارسال میشه.(حواستون باشه چیز بدی ننویسید آبرو ریزی بشه)
نکته خوبی که در مورد استفاده از این کتابخانه هست اینه که تمای دستوراتی که توی برنامه tg-cli وجود داره رو با همون سینتکس میتونید استفاده کنید.
مثلا دستور post برای ارسال پیام به یک کاربر خاصه. توی خط فرمان باید مثل زیر عمل کنیم :
1 |
> post hasan_shafiei "salam khoobi |
حالا همین دستور رو اگر بخواید در php استفاده کنید باید مثل زیر باشه :
1 2 3 |
<?php $t->post(‘hasan_shafiei’,’salam khoobi’); |
با استفاده از این کلاس میتوانید برای خودتان یک تلگرام شخصی سازی شده درست کنید که مثلا وقتی یک پیام رو خواندید تیک خوانده شده برای طرف مقابل نخوره. یا هزاران کار فوق العاده دیگذ.
کد های ساخت ربات تلگرام CLI با PHP را از باکس دانلود , دریافت کنید
هر گونه سوالی در مورد پیاده سازی ساخت ربات تلگرام CLI با PHP داشتید از قسمت نظرات ارسال کنید . سریعا به پرسش شما پاسخ داده می شود .
سفارش ساخت ربات تلگرام
موفق و پیروز باشید
سلام آقای شفیعی بنده خیلی به برنامه نویسی علاقه دارم و از PHP یه کَمَکی سرم میشه البته HTML هم بلدم ولی خداییش هیچ وقت جرعت نکردم پول به یرور اختصاصی یا هاست بدم یا سایتی بنویسم یا کلاً ولی گه گداری برای یادم نره HTML مینویسم شما مرجعی یا کمکی میتونید بکنید تا بنده بصورت حرفه برنامه نویسی PHP رو شروع کنم ؟
بعد برای آموزش بالا نمیشه آموزش ویندوز رو هم بزارید ؟
سلام. آموزش بالا روی سرور لینوکس جواب میده و نمیشه در ویندوز استفاده کرد.
برای php نیز می توانید آموزش php را دنبال کنید
موفق باشید.
خيلي ممنونم از پاسخگويي شما
لطف كرديد
سلام
چطور مي تونم فايلي از شماره تلفن ها رو به ربات بدم و ربات خودش شماره تلفن ها رو در ليست مخاطبينش ذخيره كنه و هر موقع كه خواستم مخاطبين رو پاك كنم
لطفا جواب مبسوط بديد
سلام.
اگر بدرستی روی سرور نصب کردید :
با php به اینصورت میتونید هم لیست مخاطب را ببینید یا شماره/مخاطب جدید اضافه کنید
برای دستورات بش هم میتونید لیست دستورات رو ببینید
https://github.com/vysheng/tg/wiki/Telegram-CLI-Commands
موفق باشید.
سلام این ربات هنوز کارایی داره برای ارسال تبلیغات؟
سلام. بله تا زمانی که تلگرام هست, این ربات هم کار خواهد کرد و میتونید ازش استفاده کنید.
موفق باشید.
سلام وقت بخیر
من سرور ندارم
برای تست میشه بدون سرور روی سیستم لینوکس نصب کنیم و امتحان کنیم
سلام. ممنون.
بله میتونید. !ف|!شکن| هم حتما روشن باشه.
موفق باشید.
سلام ببخشید یک سوال دیگه
اگر این رباتی که طبق آموزش شما طراحی کردیم تو گروه یا کانالی عضو نباشه بازم میتونیم به صورت یک شخص معمولی از طریق این ربات برای ۵۰۰ نفر پیام ارسال کنیم؟
در کل ربات به خودی خود میتونه پیام برای کسی ارسال کنه؟
لطفاً پاسخ بدید باتشکر
سلام. بله. بله. ربات CLI همانند یک اکانت عادی تلگرام است و این موارد رو میتونید انجام بدید.
موفق باشید.
سلام من میخوام مثلا به ۵۰۰ خط در تلگرام یک پیام ارسال کنم. امکانش هست با این رباتی که آموزش دادین این کار انجام بشه؟
در ضمن این ۵۰۰ خطی که گفتم تو گروه یا کانالی نیستن و من میخوام جداگانه برای همه بفرستم
لطفا پاسخ بدید باتشکر
سلام. بله.
موفق باشید.
سلام خسته نباشید ببخشید میخواستم بدونم میشه با c# هم این ربات های cli رو نوشت؟ اگر میشه نوشت از کجا یاد بگیرم باهاشون کار کنم؟ هیچ جا هیچ توضیحی نیست جز سایت شما که به زبان php البته درضمن این ربات ها همه کار میتوانند بکنند دیگه؟ مثلا به پروکسی وصل شوند؟ بعد میشه روی ویندوز این ربات ها رو نوشت من تا به حال سمت لینوکس نرفتم و اصلا هم نمیدونم چطوریه باید لینوکس نصب کنم قبلش یا چیز دیگری؟؟؟؟ خیلی ممنون میشم راهنماییم کنید
سلام . ممنون . با هر زبانی میتونید ربات cli بنویسید . در این اموزش از کتابخانه ای که به این منظور به زبان php نوشته شده استفاده کردیم که خب شما با مطالعه و نصب نسخه لینوکسی اون روی سرور خارجی لینوکس و ارسال درخواست ها و اتصال به اون از طریقssh داخل برنامه سی شارپ تون میتونید باهاش ارتباط برقرار کنید و عملیات رو پیش ببرید.
موفق باشید.
سلام
لطفا بگید ایا میشه تبچی رو روی هاست cpanel راه انداخت و چجوری ؟
قسمت ترمینال رو پیدا نمیکنم رو هاست؟/
سلام . خیر نیاز به سرور مجازی یا اختصاصی دارید .
برای استفاده از ربات تلگرام تبچی قابل اجرا روی هاست از این لینک خرید و سورس مناسب رو دریافت کنید
https://netparadis.com/tabchi-telegram-bot-source-php/
موفق باشید.
سلام علاقه خاصی به اینکه در زمینه امنیت شبکه و یاد گیریزبان برنامه نویسی دارم به نظزتون از کجا شزوع کنم مرجع خاصی یا اینکه روش خاصی مد نظرتون هست راهنمایی کنید
Rezahali315@gmail.com
سلام . این مجموعه میتونه به شما کمک کنه و مسیر رو براتون باز کنه https://netparadis.com/netwok-security-pentest-book
موفق باشید.
سلام من خیلی علاقه دارم ربات cli انلاین بسازم ولی سردرنمیارم اگه بیاین به ایدی زیر و یادم بدین ممنون میشم
سلام . اینکار نیاز به آشنایی به کار با سرور و ران کردن سورس های مربوطه روی سرور داره که آموزشی لازم رو در اینجا گفته شده و میتونید استفاده کنید.
موفق باشید.
سلام خسته نباشید
اقا شما میدونید اینجا باید چیکار کنم موقعه ای که دیگه باید ازم شماره موبایل بخواد ، هیچ عکس العملی نشون نمیده
اینم عکس:*
بخدا سه روز تو سایتای خارجی ایرانی روسیه هندی سرچ میکنم
چیزی در موردش پیدا نمیکنم ، اگرم پیدا بشه شاید من درست متوجه نشدم
خلاصه خسته شدم ممنون میشم کمکم کنید
سلام . ممنون. این مورد رو روی یک سرور مجازی که دسترسی به خط فرمان است چک کنید.
موفق باشید.
سلام آقای شفیعی خسته نباشید
این رباتای cli همونایی هستند که همیشه میزنن آنلاین ؟
یعنی انگار اکانته ولی کار رباتا رو انجام میده ؟
در ضمن اگه آموزش کامل و جامعی درباره ساخت اینگونه رباتا دارید میشه برام بفرستید
خیلی ممنون ازتون
سلام . ممنون.
بله همان اکانت معمولی تلگرام است که با ربات CLI راه اندازی شده سمت سرور که همیشه آنلاین و متصل به اینترنت هست, مدیریت میشه.
برای ساخت باید از کتابخانه ای که در بالا قرار داده شده به همراه آموزش بر روی یک سرور مجازی لینوکس راه اندازی کنید.
موفق باشید.
لطف کردین❤️موفق و سلامت باشی
نمیتونید یه کمک کوچیک بهم بکنید با همین مطالب سایت خودتون
خیر متاسفانه آموزش صفر تا صد برای php نداریم وبیشتر آموزش های پروژه محور و کاربردیه و بهتره از منابع دیگه استفاده کنید.و برای تکمیل آموخنته ها از این پست ها بهره ببرید.
سلام من عاشق برنامه نویسی هستم ولی متاسفانه بلد نیسم و فعلا وقت نمیکنم کلتس برم عاشق این هستم ک یه ربات cli ضدلینک و این چیزا برای خودم بسازم نمیدونم چ کار کنم و از کجا شروع کنم اقای شفیعی این ایدی منه اگه لطف کنید کمکم کنید خیلی ممنون میشم❤️
سلام . برای اینکار نیاز است برنامه نویسی بلد باشید که میتونید در زمینه آموزش php و یا python جستجو کنید منابع رایگان و خوبی قطعا در سطج وب وجود داره .
موفق باشید.
با سلام خدمت شما من می خواهم کد های جدید برای رباتم بسازم تا بتونم کار های بیشتری کنم و همچنین می خواهم رباتم همیشه ان باشه میشع در ایدی تلگرامم توضیح بدید ممنون میشم
سلام در ارتباط با کار چطوری میشه با شما در ارتباط بود؟
سلام . بسیار ممنونم از علاقتون .
لطفا زمینه کاری و اطلاعات تکمیلی تماس تون رو از طریق فرم تماس با ما ارسال کنید سریعا بررسی و برای نهایی شدن کا با شما در تماس خواهیم بود .
موفق و پیروز باشیذ
سلام ببخشید من یه ربات تبچی cli ساختم با سرور رایگانهcodeany سوال اولم اینکه سروری هست که ۲۴ساعته انلاین باشه و ارزون سوال دوم اینکه چرا اکانتم دیلت شد بعد چند مدت apiساخته بودم دیلت شد رباته
سلام . از سرورهای مجازی استفاده کنید .
به خاطر قوانین تلگرام استفاده از این ربات ها مجاز نیست و بعد از مدتی بسته میشه .
موفق باشید.
سلام آقای شفیعی
منظور از ربات cli چیه و چه تفاوتی با رباتهای معمولی تلگرام داره؟
آیا api جداگانهای از صفحه زیر داره؟
https://core.telegram.org/bots/api
یک سوال دیگه هم اینکه برای ارسال فایلهای با حجم بالا راه حل دیگهای جز api صفحه زیر سراغ ندارید؟ من با این api مشکل دارم
ممنون.
سلام.
ربات های API تلگرام نیاز به یک شماره تلفن دیگر برا ساخت اکانت برای ربات نیست و در همان اکانت میتونید ربات خودتون رو با بات فادر بسازید.می توانید کامند هایی رو با ربات های API اجرا کنید .با درخواست های HTTP POST میتونید کارهای مختلف زیادی با ربات انجام بدید و از همه مهمتر کار با ربات API تلگرام هم بسیار آسان است است و نیاز به سرور های اختصاصی و یا مجازی برای دسترسی به خط فرمان و اجرای دستورات هسته سیستم عامل نیست .
ربات های CLI دسترسی های یک یوزر معمولی رو که الان شما با تلگرام خودتون دارید رو دارند مثلا اگر شما در رباتی عضو نشید و استارت رو نزنید خب مطمینا نمیتونید به فرد پیامی از طریق ربات ارسال کنید ولی با ربات CLI در واقع شما به اکانت خودتون متصب میشید و همان کارهایی که با تلگرام موبایل و دستکتاپ رو انجام میدید رو میتونید انجام بدید با این تفاوت که در محیط کنسول این موارد رو پیاده میکنید نه بصورت گرافیکی !
بنابراین باید متوجه شده باشید که در واقع مفهوم ربات در اینجا بسیار متفاوت است و کارشون هم با هم دیگر فرق دارند . در ربات CLI شما مستقیما با پروتکل MTproto در ارتباط هستید مثل یوزر معمولی تلگرام که با نسخه موبایل یا دسکتاپ کار میکند و می توانید بصورت مستقیم از شماره خودتون به یک شماره ثبت شده یا یوزر دیگر در تلگرام پیام ارسال کنید اما این امکان با ربات های API ممکن نیست و ابتدا باید طرف در ربات یکبار استارت بزنه تا شما بتونید این ارتباط رو بگیرید .ولی کار با ربات های API بسیار آسان تر هستند و می توانید با انواع زبان برنامه نویسی فقط با درخواست های HTTP POST و لایبرری هایی مثل cURL انواع مختلف کارهای جالبی که در api بصورت متد تعریف شده اند رو انجام بدید.
اجازه آپلود فایل های بیشتر از ۱٫۵ گیگابایت در تلگرام نیست .
موفق باشید.
سلام مجدد حسن آقا و تشکر بابت توضیح کاملتون
با توجه به توضیحات شما pwrtelegram.xyz یک ربات api باید باشه و core.telegram.org/api هم دایکیومنت اصلی تلگرام برای رباتهای api هستش درسته؟
ممنونم بابت راهنماییهایی که همیشه نسبت به من ارائه میدید و سوالاتمو بدون جواب نمیزارید و کامل توضیح میدید.
واستون آرزوی شادی همیشگی دارم.
سلام . خواهش میکنم . بله درسته . همچنین موفق و پیروز باشید.
سلام من خیلی دوست دارم رباتای cli بسازم ولی هیچ چیزی سر درنمیارم میشه کمکم کنید آیدی تلگرامم @luxury_crazy
سلام . خیلی هم عالی . برای اینکار بهتر است سرور اختصاصی یا مجازی داشته باشید در غیر اینصورت ربات api کار شما رو را میندازه
موفق باشید
سلام خسته نباشین
خطایی نداره تلگرام اجرا میشه ولی لیست کانتکت ها رو نمیاره هیچ عکس العملی نسبت به کد پی اچ پی نداره
سلام ممنونم.
حتما توجه داشته باشید که فایل /tmp/t.sck پرمیشن ۷۷۷ رو داشته باشه
موفق باشید.
سلام من همه کارای بالا رو انجام دادم فقط نمیدونم چجوری اجراش کنم
با دستور زیر اجرا کردم کار نکرد
telegram-cli –json index.php/.
سلام . چه خطایی دریافت کردید ؟
سلام من خیلی دوست دارم رباتای cli بسازم ولی هیچ چیزی سر درنمیارم. یه گروه بالای سی هزار نفر عضو هم دارم که دیگه رباتای معمولی [وابگو نیستن براش. میخواستم ببینم اگه آموزش صفر تا صد ربات ربات cli خوب دارین برام بفرستین. ممنونم. اینم ایدیم. @drmilad007
سلام . خیلی هم عالی. در حال حاظر هیچ آموز خاصی برای این مورد وجود نداره ولی بزودی قرار است آموزش آنلاینی در رابطه با ساخت ربات تلگرام به صورت api و cli منشتر بشه که مبتونید در اون دوره ثبت نام و ویدیوهای آموزشی رو دریافت کنید
موفق و پیروز باشید.
سلام من خیلی دوست دارم وعلاقه دارم ربات آنلاین cliبسازم ولی متاسفانه سردرنمیارم و اطلاعاتی که دادید رو نفهمیدم این آیدی منه ممنون میشم اگه یادم بدید
@kucain
سلام . راه اندازی ربات cli با کلاس آماده که قرار داده شده بسیار اسان است فقط کافیه یک سرور مجازی لینوکس هم داشته باشید تا همه چی طبق روال پیش برید
موفق و پیروز باشید
سلام
میخوام یه ربات بسازم با تلگرام cli که بدون جوین شدن توی کانال، پست های اون کانال رو بخونه
چیکار باید بکنم؟
این هم آی دی تلگرامم اگه لطف کنید و مطلب خاصی هست که برام ارسال بفرمایید
Alicatfish@
سلام . از متد Update استفاده کنید و مقادیر channel_post رو دریافت کنید
https://core.telegram.org/bots/api#update
موفق باشید.
سلام خسته نباشید، میتونید ی سرور قوی برای ساخت ربات معرفی کنید ؟؟
سلام . اگر کاربران استفاده کننده از ربات بالای ۱۰,۰۰۰ تا ۵۰,۰۰۰ است از سرور مجازی استفاده کنید و برای تعداد کاربران بالا تر از سرورهای اختصاصی بهره ببرید.
سرور های اختصاصی پارس پک یا هاست dl مناسب هستند
موفق باشید
برا ربات شخصی میخام یکم قیمت مناسب باشه داداش اینا خیلی بالاس 🙁
برای ربات شخصی لطفا تعرفه های این سایت را بررسی کنید
http://servermarkazi.com/
سلام ممنون از آموزش های خوبتان
چجوری می تونم از کاربر سوالی رو بپرسم و جواب کاربر را باید چگونه تشخیص بدم ماله کدوم سوالم بود
مانند بات فادر یا درست کردن پروفایل کاربری
سلام . خواهش میکنم خوشحالم که مفید واقع شده.
برای اینکار کافیه مرحله کاربر را در هر مرحله در جایی مثل دیتابیس یا فایل txt با نام ID عددی کاربر ذخیره کنید و آن را بخوانید و هر مرحله که کاربر پیش میرود مقدار آن را متناسب با مرحله تغییر بدید
مثلا سوال ۲ را به کاربر نمایش دادید و حالا باید کاربر جواب را ارسال کند کافیه مقدار ۲ را در جایی ذخیره کنید همینکه کاربر پاسخ را ارسال کرد اون فایل یا فیلدی که مقدار ۲ را ذخیره کردید بخوانید و ببینید که برابر چه عددی است مثلا اگر مقدار ذخیره شده شما ۲ بود پس مطمینا پاسخ ارسالی برای سوال ۲ می باشد
موفق باشید
سلام من خیلی دوست دارم وعلاقه دارم ربات آنلاین cliبسازم ولی متاسفانه سردرنمیارم این آیدی منه ممنون میشم اگه یادم بدید
سلام . توضیحات لازم به آی دی شما ارسال شد . موفق و پیروز باشید
باعرض سلام وادب واحترام چیزی به آیدی بنده ارسال نشده ممنون میشم اگه ارسال کنیدسپاس
سلام . بهتره مطالب آموزشی رو دنبال کنید و با تمرین اون رو پیاده سازی کنید . هیچ محتوایی بصورت شخصی یا با آی دی ارسال نمیشه .
موفق باشید.
سلام خدمت شما بزرگوار
خیلی دوست دارم ساخت ربات Cliرایاد بگیرم اما نمیدونم از کجا شروع کنم وچطوری پیش برم
ممنون میشم دراین مورد راهنماییم کنید
سلام . همین مقاله اطلاعات کافی در مورد ساخت ربات cli رو میده . کامل مطالعه و بر روی سرور تست کنید .
موفق باشید.
درود بر شما.
من تمام مراحل رو انجام دادم.
منتها موقع اجرای php خطای ۵۰۰ سرور رو داد.
البته من چون رو سرور انجام دادم فایل php رو در مسیر var/www/html قرار دادم و با ادرس ای پی و اسم فایل اجراش کردم
سلام . مطمینا یک خطایی از نوع fatal یا مشابه در کد های شما وجود داره که باعث نمایش خطای http میشه . حتما مقدار خطا را برابر ۱ قرار دهید
ini_set(‘display_errors’, 1);
و همجنین لاگ های ایجاد شده در دایرکتری موردنظر را چک کنید
موفق باشید
سلام مجدد جناب شفیعی
من دقیقا همون کدهای php رو که اینجا گفته شده رو وارد کردم.
هیچ لاگی هم در اون مسیر ایجاد نشده /:
مقدار خطا رو هم برابر ۱ گذاشتم منتها هیچی فرق نکرد.
اگه ممکنه براتون @connectmybot در تلگرام پیام بدین تا دسترسی سرور رو خدمتتون بدم خودتون مشاهده کنید.
جناب شفعی اگه بتونید کمک کنید خیلی ممنونتون میشم.خیلی وقت دنبال همچین سورسی بودم که بتونه دستورات cli با همان دستورات خودش اجرا کنه.
مشکل شما از طریق پیگیری هایی که از طریق تلگرام انجام شد برطرف گردید .
مشکل اصلی سرور شما نداشتن پرمیشن لازم در write کردن داده ها در فولدر tmp بود
. موفق باشید