در قسمتهای قبل با ربات تلگرام آشنا شدیم و یاد گرفتیم که چگونه به درخواستهای کاربران پاسخ مناسب بدهیم. در این قسمت یعنی قسمت چهارم برنامه نویسی با php برای ربات تلگرام با ارسال عکس، صوت، فیلم، مستندات، استیکر، موقعیت مکانی، کارت دعوت، اطلاعات تماس و وضعیت فعالیت بات آشنا میشویم.
ارسال تصاویر برای بات تلگرام با متد sendPhoto:
برای ارسال عکس با ربات تلگرام از متد sendPhoto استفاده میکنیم. متد sendPhoto تصویر را با استفاده از POST برای کاربر ارسال میکند. در مثال زیر با CURL کار ارسال را انجام میدهیم:
$url= "https://api.telegram.org/bot".$token."/sendPhoto?chat_id=".$chat_id;
$post = array(
'photo' => new CURLFile(realpath("hitos.jpg"))
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_exec($ch);
دستورات بالا عکس موجود در ریشه جاری با نام hitos.jpg را به کاربر ارسال میکند.
می توان زیر تصاویر متنی برای توضیح ارسال کرد. برای ارسال این مقدار از پارامتر caption به شکل زیر استفاده میکنیم:
$url= "https://api.telegram.org/bot".$token."/sendPhoto?chat_id=".$chat_id."&caption=متن کپشن";
ارسال تصاویر برای بات تلگرام با متد sendAudio:
ارسال صوت در تلگرام شبیه ارسال تصویر است. در زیر مثالی از استفاده از این متد مشاهده میکنید:
$url= "https://api.telegram.org/bot".$token."/sendAudio?chat_id=".$chat_id;
$post = array(
'audio' => new CURLFile(realpath("hitos.mp3"))
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_exec($ch);
در بالا مانند sendPhoto فایل صوتی خود را با curl و متد پست ارسال میکنیم.
متد sendAudio پارامترهای اختیاری زیر را دارد:
- caption: متن توضیح زیر فایل صوتی را تعیین میکند.
- duration: طول مدت Track صوتی را به ثانیه دریافت میکند.
- performer: نام اجرا کننده Track صوتی (مثلا نام خواننده)
- title: نام Track صوتی
نکته: محدودیت حجمی ارسال فایلهای صوتی با بات تلگرام 50 مگابایت است.
ارسال فیلم برای بات تلگرام با متد sendVideo:
بهترین حالت ارسال فیلم برای بات تلگرام ارسال فیلم با فرمت mp4 است. هر چند که فرمتهای دیگر نیز ممکن است ارسال شوند. اگر از فرمت خاصی استفاده کنید که تلگرام امکان ارسال آن به عنوان video را نداشته باشد خود تلگرام آن را به عنوان document ارسال میکند:
$url= "https://api.telegram.org/bot".$token."/sendVideo?chat_id=".$chat_id;
$post = array(
'video' => new CURLFile(realpath("hitos.mp4"))
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_exec($ch);
ارسال مستندات برای بات تلگرام با متد sendDocument:
مثالی از ارسال مستندات با بات تلگرام را در زیر میبینید:
$url= "https://api.telegram.org/bot".$token."/sendDocument?chat_id=".$chat_id;
برای متد sendDocument نیز میتوان caption ارسال کرد.
نکته: محدودیت حجمی ارسال مستندات با بات تلگرام 50 مگابایت است.
ارسال استیکر برای بات تلگرام با متد sendSticker:
فرمت پیشنهادی تلگرام برای ارسال استیکر فرمت webp است. اگر تصاویر خود را با این فرمت به عنوان استیکر ارسال کنید خروجی کار بهتر خواهد بود، هر چند میتوان عکسهایی با فرمتهای دیگر را نیز ارسال کرد.
اگر تصویری با فرمتهای رایج دارید و میخواهید به webp تبدیل کنید از این سایت استفاده کنید.
$url= "https://api.telegram.org/bot".$token."/sendSticker?chat_id=".$chat_id;
$post = array(
'sticker' => new CURLFile(realpath("hitos.webp"))
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_exec($ch);
ارسال موقعیت برای بات تلگرام با متد sendLocation:
در این متد با داشتن طول و عرض موقعیت جغرافیایی یک عکس و لینک از آدرس محل مورد نظر برای کاربر ارسال میشود:
$url= "https://api.telegram.org/bot".$token."/sendLocation?chat_id=".$chat_id."&latitude=37.7576793&longitude=-122.5076402";
file_get_contents($url);
ارسال کارت دعوت برای بات تلگرام با متد sendVenue:
این متد بسیار شبیه sendLocation است با این تفاوت که عنوان و آدرس نیز میتوان به آن اضافه کرد:
$url= "https://api.telegram.org/bot".$token."/sendVenue?chat_id=".$chat_id."&latitude=37.7576793&longitude=-122.5076402&title=عنوان&address=آدرس";
file_get_contents($url);
ارسال مشخصات تماس برای بات تلگرام با متد sendContact:
متد فوق بسیار ساده است، شماره، نام و نام خانوادگی مشترک را دریافت و مشخصات تماس را برای کاربر ارسال میکند:
$url= "https://api.telegram.org/bot".$token."/sendContact?chat_id=".$chat_id."&phone_number=09122222222&first_name=hitos&last_name=.ir";
file_get_contents($url);
ارسال وضعیت عملکرد بات برای بات تلگرام با متد sendChatAction:
متد فوق کارکرد جالبی دارد، فرض کنید قرار است با بات برای کاربر ویدیو حجیمی بفرستید مدت زمانی که کاربر صبر میکند تا ویدیو به دستش برسد جالب است که متن sending a video"" برای کاربر نمایش داده شود و پس از آن کلیپ ویدیو به نمایش درآید:
$url= "https://api.telegram.org/bot".$token."/sendChatAction?chat_id=".$chat_id."&action=upload_video";
file_get_contents($url);
$url= "https://api.telegram.org/bot".$token."/sendVideo?chat_id=".$chat_id;
$post = array(
'video' => new CURLFile(realpath("hitos.mp4"))
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_exec($ch);
سلام
لطفا بفرمایید که چطور شماره کاربر رو ازش بگیرم؟ (Share Contact) یا لوکیشن کاربر ارسال اشتراک گذاری بشه؟
اکثر آموزش های شما مرتبط به بخش ارسال از سمت ربات هست. بخش ارسال از سمت کاربر هم مهم است..):
در صورتی که میخواهید آموزش را ادامه دهید لینک صفحه پرداخت بدهید که کاربران دونیت کنند.
سلام
آموزش های سایت در آینده نزدیک بروز رسانی مفصلی می شوند.
اساسا با استفاده از ربات نمی شه به شماره کاربر دسترسی پیدا کرد، مگر این که خودش بهتون این شماره رو بده.
سلام، من یه دستور لازم دارم که وقتی یه commacnd فراخوان شد،
از کاربر متن رو بگیره! (دریافت متن از کاربر)
ممنون از آموزش خوبتون...
سلام
باید برای ربات خود یک پایگاه داده ایجاد کنید تا وقتی برای کاربر یک پیام مناسب ارسال کردید منتظر دریافت متن باشید.
کدوم مطلب؟
https://hitos.ir/74
ممنون از سایت خوبتون
فقط این چهار جلسه اموزش که گذاشتین
دیگه بعد از اینا ادامشو نمیزارین؟
خواهش می کنم.
قسمت های بعدی به زودی منتشر می شه.
با عرض سلام و تشکر بابت این اموزش خوب.اگر من بخواهم از کاربر یک کد بگیرم و فایل مخصوص ان کد که عکس است را فقط به ان کاربر بفرستم باید چه کنم؟با تشکر فراوان
سلام
از ارسال و دریافت فایل استفاده می کنید که کار سختی نیست.
سلام و وقت بخیر
مرسی بابت این آموزش خوبتون
ببخشید میشه پستی رو که می خوایم به کانالمون بفرستیم رو زماندار بفرستیم؟ مثلا دستوری وارد کنیم که بگیم نیم ساعت دیگه این پست رو ارسال کن؟ یا هر ساعت دیگه ای که مد نظرمونه...
ممنون میشم اگه اطلاعاتی دارید راهنمایی کنید
سلام
اگر از هاست لینوکسی استفاده می کنید می تونید از CURL استفاده کنید و کدهاتون رو در زمان مشخصی اجرا کنید.
سلام من می خوام وقتی توی پیام یک link هست لینک به کاربر نمایش داده نشه نمی دونم چی کار کنم
سلام، نمونه پیامتون رو ارسال کنید ببینم.
من می خوام یک متن زیادو به یک عکس اتچ کنم وقتی آدرس عکس و تو متن متن ارسالی می زارم عکس با متن درست ارسال می شه اما بعضی جاها دیدم که ادرس عکس نیست فقط عکس و متن هست ؟
اجازه بدید چند وقت دیگه یک آموزشی در این زمینه منتشر می کنم.
سلام
ببخشید اگه بخوام بجای یه فایل توی هاست از یه لینک دانلود استفاده کنم چطوری میشه کدهاش؟
مثلا لینک یک موزیک رو میدم بهش و خروجی ربات به صورت موزیک بفرسته برای کاربر
سلام
منتظر باشید تا چند وقت دیگه آموزشی در این زمینه منتشر می کنم.
سلام دوست عزیز مقالتون خیلی عالی بود فقط یک سوال:وقتی از متد sendMessage استفاده میکنیم ی متدهای مشابه برای ارسال متن,متن هارو به صورت متراکم و بدونه فاصله و شکست خط میفرسته و امکان استفاده از اموجی های تلگرامم نیست ولی تو روبات های دیگه دیدم که استفاده میکنن ممنون میشم در این باره راهنماییم کنین
سلام
شما یک متن با اموجی های مورد نظرتون تو ربات تلگرام ارسال کنید و سمت سرور اونو دریافت کنید و از همون اموجی ها تو متد sendMessage استفاده کنید.
سلام
خسته نباشید
ببخشید آرایه مسیج ویس به چه صورت هست؟
در واقع می خوام یک شرط بذارم: اگر comment برابر بود با voice، فلان کار رو انجام بده.
یعنی اگر ویسی از طرف کاربر به بات ارسال بشه، بات فلان کار رو انجام بده.
ممنونم
سلام، کار سختی نیست و تنها کافیه که یک شرط تو PHP برای این کار ایجاد کنید.
در آینده آموزش ویدیویی کاملی از این فرایند در سایت منتشر می شه.
ممنون از پاسخگویی تون
من الان دارم انجام میدم فقط مسئله ای که هست اینِ که Contact رو هم فایل صوتی در نظر میگیره و هم ارسال مخاطب تلگرام.
آرایه Contact من به این صورت هست:
و آرایه Voice به این صورت:
ویس کار نمیکنه، در عوضش Contact هم فایل صوتی میگیره و هم مخاطب تلگرام.
امکان این قضیه وجود نداره بیشتر به سورستون توجه کنید.
درود شما کانال تلگرام یا ای دی دارید که مستقیم مزاحمتون بشیم.
t.me/hitos_ir
سلام خسته نباشید.
یک سوال داشتم ازتون اگه میشه یکن زود جواب بدید.
من میخوام به یکی از کاربرای رباتم خودم یک متن یا عکس بفرستم ایا میشه فرستاد؟
اگه میشه لطفا کامل بگید چیکار کنم
سلام
آموزش همین مطلب رو دنبال کنید.
ببخشید این متود هایی که درسایت قرار دادید رو چطوری تو یه سورس بزنم بصورت نمونه تو یه سورس بزنید اینا بفرستید ببینیم / مثلا متود ارسال کارت دعوت رو تو یه سورس نمونه بریزین که تو سایت گذاشتین تا ببینیم.
تشکر
سلام، بستگی به روش ارسالتون داره، می تونید متن بفرستید یا عکس.
سلام من می خوام وقتی کاربر عضو ربات شد یک پیام براش بفرستم و ازش بخوام اونو مثلا به 5 نفر بفرسته
اگه به 5 نفر فرستاد یک جایزه بهش بدم
می شه راهنمایی کنید
سلام
صبر کنید آموزشش رو منتشر می کنم.
میشه بگید کی آموزش ها ادامه پیدا میکنه؟ ما همچنان منتظر معرفی متد های جدید ربات توسط شما هستیم ! ):
سلام
مطالبی که آموزش دادید رو کاملا مطالعه کردم چیزی که بنظرم جاش خالی بود این بود که توضیح بدید چطور متوجه بشیم کاربر در پاسخ به اون متنی که ما میفرستیم جواب داده. مثلا من یک باتن یا دکمه ایجاد کردم ارسال نام و نام خانوادگی شما... بعد از این که کاربر کلیک کرد یک پیغام ارسال می کنم که لطفا نام و نام خانوادگی را وارد کنید... در این حالت کاربر باید متن وارد کنه اما خب وقتی متن ارسالی کاربر جز اون دسته بندی نباشه شامل else آخری میشه که اگر جز اونا نبود پیغام بفرسته دستور اشتباه وارد شده !
لطفا راهنمایی کنید چطور از آخرین وضعیت دکمه ی کلیک شده مطلع بشیم!
سلام دوست عزیز
کار سختی نیست و باید سورس ربات رو مجهز به دیتابیس بکنید.
در آینده یک آموزش کامل از این بخش می ذارم روی سایت.
سلام ببخشید من کیبورد ایجاد کردم میخوام وقتی کاربر دکمه رو زد همان دکمه در دیتابیس ذخیره بشه در اصل میخوام در یک متغیر ذخیره بشه تا بعدا با کد اینسرت تو دیتا بیس درج کنم!! کد اینسرتم مشکلی نداره ولی برای ذخیره کیبورد نمیدونم چیکار بکنم؟
سلام. متوجه منظورتون نمی شم. بیشتر توضیح بدید.
سلام وقتتون بخیر
از سورس ها و متد هایی که آموز دادی استفاده کردم و واقعا ممنونم ازتون خیلی مفید بودند
فقط من میخوام وقتی تصویر برای یوزر ارسال میشه هم زمان کلید هایی هم به کاربر نشون داره بشه که یکی از گزینه هارو انتخاب کنه و سوال بعدی براش ظاهر بشه چکار باید بکنم؟
سلام جواد عزیز
شما با هر پیامی که برای کاربر ارسال می کنید با استفاده از reply_markup می تونید این کیبورد را تغییر بدهید.
سلام
اگه خواسته باشیم یه عکس که قبلا در سرور تلگرام اپلود شده رو دوباره بفرستیم نیاز به اپلود مجدد نیس و با لینک زیر میشه فرستاد
ایا همچین روشی برای ارسال فایل های صوتی تکراری هم هست؟
با تشکر
سلام
بله تفاوتی نمی کنه
سلام خسته نباشید من یک دستور گذاتشم تا درصورت اجرا عکس بفرسته اما فرستاده نمیشه ممنون میشم مشکلمو بهم بگید. با تشکر:
سلام
مشکل در دستور if هست. قبل از else باید براکت if رو ببنید.
سلام درست نشد.
سلام خسته نباشید از طریق چه متدی میشه فایل doc , xlsx , pdf یا چیزای دیگه فرستاد ؟
سلام
از sendDocument استفاده کنید.
با سلام من میخوام رباتی طراحی کنم مطالب از کانالی فوروارد بشه ربات ردپای مطلب رو پاک کنه آی دی و لینک و اسم کانالی که فوروارد زده شده و بعد درج آی دی کانالم به کانالم بفرسته
سلام
در آینده آموزشی برای این کار در سایت منتشر می شه.
سلام
چه طوری میشه عضویت یک کاربر را در کانال خودمان چک کنیم که عضو شده یا خیر؟
سلام
می توان با آیدی چک کرد.
با سلام
من ربات طراحی کردم که در ارسال عکس با ربات کدهای من مشکل دارن
تا اونجایی که میدونم همه را درست وارد کرده ام
لطفا بنده رو راهنمایی کنید تا بدونم اشتباهم کجاست
متد CURL به شرح زیر است
متد ارسال عکس نیز به شرح زیر است:
از بابت راهنمایی خیلی ممنونم
سلام
گاهی Curl ىر برخی سرورها غیر فعال شده، ابتدا از فعال بودن Curl مطمین بشید.
سلام و تشکر بابت آموزش ها
من میخوام یه ربات بسازم که قیمت ارز را به کاربر های ربات بفرسته نه با دستور وارد کردن کاربر ها هر وقت خودم قیمت را تغییر دادم قیمت جدید ازسال بشه از چه روشی استفاده کنم؟
سلام Arman: بله مشکلی نیست، فقط باید کاربراتون یک بار به robot شما متصل بشه، و شما اطلاعاتش رو تو دیتابیستون ذخیره کنید. هر وقت نرخ ارز عوض شد به راحتی یک پیام برای کاربراتون ارسال کنید.
من میخوام عکس رو از کاربر بگیره و بعد از اعمال تغییرات بفرستتش ، چطوری میشه؟
خوب شما پس از دریافت عکس از کاربر اون عکس رو تو سرور ویرایش می کنید و به id اون کاربر ارسال می کنید.
ولی مشکلی که دارم اینه که نمیتونم برای این کار به مشخصهfile id توی json دسترسی پیدا کنم،یعنی مثلا میشه با
[message][from][id] آی دی فرستنده رو گرفت ولی وقتی میخوام مشخصه file_id رو بگیرم نمیشه،چطوری میتونم بگیرمش؟
با تشکر
خوب شما باید از json_decode استفاده کنید تا json رو تبدیل به یک آرایه معمولی php کنید.
پیدا شد بالاخره ☺
بنظرتون مشکل این یک خط چیه گه عکس رو نمیفرسته؟
من کدتون رو بررسی کردم باید کار کنه. file_get_contents آخر رو برای چی نوشتید؟
خط آخر برای اجراش لازم نیست؟فکر کردم لازمه
نمیدونم چرا مشکل داره برام
یه چیز دیگه
یه sdk هست که بنظر اون هم از همین روش استفاده میکنه منتها به ما توابع آماده میده،این صفحه رو ببینید:
https://telegram-bot-sdk.readme.io/reference
امکانش هست یه توضیح کوچیک برا نصبش بدید؟چون اصلا سر در نمیارم چجوری باید به توابعش دسترسی داشته باشم
بابت پرسش های زیادم عذر میخوام :-(
با تشکر
نه خط آخر لازم نیست.
در ضمن SDK ای که دادید برای فریم ورک لاراوله که فقط کار رو سخت می کنه.
طرز کار ربات تلگرام خیلی راحته و اصلا نیازمند هیچ چیز اضافه ای نیست.
سلام
بنده یه کد ساده برای چت بین کاربر سایت با با تلگرام میخواهم میشه بنده را راهنمایی کنید
هر چی بعد از دستور if از دستور echo برای پرینت اطلاعات استفاده میکنم نمیشه خواهش میکنم کمک کنید
فقط یه چت ساده دوطرفه بین کاربر سایت با روبات تلگرام همین ):
سلام خدمت شما دوست گرامی.
ارتباطی نداره دستورات با echo برای کاربر تلگرام ارسال نمی شن. همه قسمت های آموزش رو با دقت بخونید.
سلام
بنده میخواهم بین روباتم که روی هاست خودم هست با یه پنجره چت توی سایتم ارتباط داشته باشم ولی هر کاری میکنم نمیشه میخواهم یه چت لایو ساده درست کنم مثل افزونه
Universal Chat
که توی وردپرس هست
کد روبات رو تغییر دادم به شکلی که اطلاعات را در داخل دو فایل txt ذخیره کنه برای ارسال و دریافت
اما مشکل اینجا هست که باید از هر طرف یه دستور ارسال بشه تا جواب قبلی طرف مقابل را دریافت کنه !!
با تشکر
سلام. از کرون جاب استفاده کنید.
آقا ممنون خیلی کامل و مفید بود
یه سوال داشتم اگر بخوا عکس از دیتابیس مستقیم بفرستم کدش چه جوری میشه منظورم
به جای اسم فایل فیلد BLOB مستقیم قبول نمی کند
مشکلی وجود نداره و هم به صورت معمولی می تونید بفرستید و هم از CURL استفاده کنید.
سلام
وقت شما بخیر
ببخشید سوالی داشتم در خصوص ارسال مشخصات کاربری
چگونه می توان از فردی که عضو ربات است، مشخصات کاربری وی را دریافت نمود؟
به عنوان مثال دکمه ای قرار دهیم و مشترک با کلیک بر روی آن، نام کاربری و شماره تماس تلگرام خود را برای ربات ارسال نماید و ربات آن را به مدیر فوروارد نماید.
سلام دوست عزیز
کار مشکلی نیست، فقط ترتیب ارسال ها بسیار مهم است.
مثلا فرض کنید کاربر در خواست ثبت نام می دهد، شما یک پیام به کاربر ارسال می کنید که نام خود را وارد کنید و کاربر ارسال می کنه و اون برای شما میاد، در مرحله بعد شما پیام شماره تماس خود را وارد کنید و کاربر اون رو براتون ارسال می کنه و ...
سمت سرور هم به سادگی عملیات ثبت درخواست ها انجام می شه.
سلام
سپاس از پاسخگویی شما
بنده در همان روز پس از جستجویی، کدها را نوشتم و به درستی نیز پاسخ داد.
سوال دیگری داشتم در خصوص اندازه دکمه های صفحه کلید.
اگر قابلیت Resize هم فعال باشد، شما به طور مثال پنج دکمه قرار دهید، دکمه ها خیلی کوچک خواهند شد و البته در یک دریف.
برای اینکه در دو یا چند ردیف قرار گیرند، چه باید کرد؟
کد بنده هم مانند کد شما است اما با یک آرایه اضافه که با ساختار text و requestهایی که تلگرام معرفی کرده، نوشته شده است.
سلام
برای تغییر در تعداد دکمه های هر سطر باید اون ها رو در یک آرایه دیگه گذاشت. مثلا به جای قرار دادن چهار کلید در یک آرایه، دو تا را در یک آرایه و دو تا را در آرایه دیگر قرار دهید. مثال زیر رو ببینید:
سلام من طبق این آموزش برای خودم یه ربات ساختم فقط یه مشکلی دارم چطور میشه که این ربات تو گروه من جواب رو بفرسته ممنون میشم اگه راهنمایی کنید
در آینده یک آموزش خوب برای عضو کردن ربات در گروه های تلگرامی آماده می کنم.
سلام
چطوری میشه به همه ی کاربران ربات به صورت همزمان پیام ارسال کرد؟
سلام
اگر شما شناسه کاربرا رو ذخیره داشته باشید به راحتی می تونید با یک حلقه ساده به تمام کاربرا پیام ارسال کنید.
سلام آقای موسوی چطور میتونم مثلاً کاربر یه عکسی فرستاد این عکس رو دانلود کنم
میدونم متد getfile هست ولی چطوری ازش استفاده کنم اون فیلد آی دی عکس رو بگیرم و ذخیره کنم
ممکنه کد این بخشو برام بزارید
تشکر میکنم
سلام
متد getfile بهتون سه شناسه می ده که با اون ها باید عکس رو دریافت کنید.
سلام
خسته نباشید
چه جوری میشه مقدار start رو از این url ربات گرفت و به سمت سرور سایتمون ارسال کرد؟
مثلا این آدرس ربات و مقدار start هست
http://telegram.me/funpatogh2017_bot?start=73782230
الان به چه شکلی میتونم مقدار start رو دریافت کنم
سلام
سخت نیست و فقط باید رشته رو در php پردازش کنید. مثلا برای رشته فوق داریم:
خروجی کدهای بالا شناسه پس از علامت مساوی است.
الان مشکلم اینه که چه طوری مقدار start رو توی متغییر str$ که شما مثال زدید بریزم
مثلا با $_GET میشد مقدار متغییر رو از url گرفت ولی توی تلگرام چه جوری دریافتش کنم که سمت سرور php پردازشش کنم
این لینک رباط
http://Telegram.me/funpatogh2017_bot?start=73782230
متوجه منظورتون نمی شم، لطفا واضح تر بگید.
سلام
خسته نباشین
ربات ها عضو گیر رو دیدین، اونا یک لینک دعوت میسازن مثل این http://Telegram.me/funpatogh2017_bot?start=73782230 و بعد ما با کلیک روی این لینک وارد ربات میشیم، حالا سوال اینجاس چطوری بفهمم طرف معرفش کی بوده ؟
این کد معرفشه 73782230 و میدونم,ولی وقتی وارد ربات میشه این کجا ذخیره میشهhttp://Telegram.me/funpatogh2017_bot?start=73782230؟
سلام
این ربات ها واقعی نیستن و عملا نمی شه چنین کاری تو تلگرام انجام داد.
ولی الگوریتمشون به این شکله که شما برای دوستانتون دعوت نامه می فرستید و اونا هم دیگران رو عضو می کنند یکی از این اعضا به صورت تصادفی به شما داده می شود که از پروفایل شما دیدن کرده است.
سلام ، اگر بخوام به دستور ارسال داکیومنت یه اینلاین اضافه کنم کد چطور میشه ؟
سلام.
خوب باید درخواست داده بشه و بعد کاربر فایل ارسال کنه.
سلام
طبق پاسخ زیر به یکی از دوستان دقیقا چطور میشه نام و نام خانوادگی رو دریافت کرد و در آخر تکمیل ثبت نام به کاربر پیام تکمیل ثبت نام را بفرستیم
پاسخ:
سلام دوست عزیز
کار مشکلی نیست، فقط ترتیب ارسال ها بسیار مهم است.
مثلا فرض کنید کاربر در خواست ثبت نام می دهد، شما یک پیام به کاربر ارسال می کنید که نام خود را وارد کنید و کاربر ارسال می کنه و اون برای شما میاد، در مرحله بعد شما پیام شماره تماس خود را وارد کنید و کاربر اون رو براتون ارسال می کنه و ...
سمت سرور هم به سادگی عملیات ثبت درخواست ها انجام می شه.
سلام
بله دوست عزیز.
همانطور که می دونید رشته Json ای که شما از سمت تلگرام دریافت می کنید غیر از شناسه کاربر حاوی نام او نیز هست که می شود استخراج و در نهایت چاپ کرد.
سلام
اول از همه تشکر میکنم از سایت خوبتون و همچنین خود شما برای این آموزش.
دوم میخواستم بگم که اگر میشه کانال تلگرامی تاسیس کنید و اونجا هم آموزش ساخت ربات php بزارید چون به عقیده من کانال خیلی بهتره.
سلام
از این لینک استفاده کنید: https://telegram.me/hitos_ir
معمولا کاربران اسم واقعی خود را نمیزارن یا یکی از فیلدها خالی هستش
اگر بخوایم کاربر خودش نام و نام خانوادگی رو وارد کند و بفرستد چطوری باید اون پیام رو بفهمیم
چون زمانی که میگیم بیاد اون پیام رو بگیره و بعدش پیام تایید رو بفرسته برای کاربر بلافاصله پس از اینکه ربات پیام نام و نام خانوادگی رو فرستاد پیام تایید رو هم میفرسته چون قبلش کاربر یک کامند رو انتخاب کرده و یا یک متن الکی ارسال کرده
باید چیکار کنیم که بگیم بعد از این که نام و نام خانوادگی بیاد شرط رو اجرا کنه و ببینه بعد از پیام ربات، متنی کاربر ارسال کرده یا نه؟
سلام
ببینید باید الگوریتم صحیحی بنویسید و از پایگاه داده هم استفاده کنید. مثلا یک پیام نمایش می دید برای دریافت نام و نام خانوادگی، پس از دریافت مقادیر از کاربر اول چک کنید چه محتوایی برای شما ارسال شده، اگر محتوا متنیه و طول معقولی داره به پایگاه داده مراجعه می کنید و در صورت خالی بودن فیلد نام و نام خانوادگی در پایگاه داده این مقدار دریافتی رو ذخیره می کنید. و ...
سلام
برای خوندن کیبورد شیشه ای از دیتابیس به مشکلی برخوردم
طبق کد زیر:
سلام. سینتکس کدتون مشکل داره.
سلام. متن ارسال شده با ربات در متغییری به اسم command ذخیره میشه و ما میتونیم کد بزنیم که مثلا اگه command==salam بود ربات در جواب کلمه علیک سلام رو به کاربر بفرسته.
سوال من اینه که اگه کاربر به ربات عکس ارسال کرد این عکس در چه متغییری ذخیره میشه؟
سلام
منتظر باشید در آینده در این زمینه آموزشی قرار می گیره که از طریق ایمیل به شما اطلاع رسانی خواهد شد.