آموزش گام به گام ساخت ربات تلگرام با سی شارپ

آموزش گام به گام ساخت ربات تلگرام با سی شارپ

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

آموزش گام به گام ساخت ربات تلگرام با سی شارپ :

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

در ابتدا دو راه وجود داره داره برای ایجاد ربات خودتون :

1-خرید سرور و دادن دستورات خاص برای اتصال به ربات(نتیجه این کار سرعت بیشتر ربات است که درصورت لزوم میتوانید در قسمت نظرات درخواست بدید تا اموزششو روی سایت قرار بدیم.)

2-از مکان های اماده استفاده کنید و دیگر نیازی به اتصال محل خود به تلگرام نداشته باشید(البته در این روش هم نرم افزار شما باید در مکانی باشد که 24 ساعته فعال است.)

برای اینکار وارد نرم افزار تلگرام نسخه دسکتاپ شده و @BotFather را تایپ کنید و اینتر را بزنید. حال روی ان کلیک کنید تا وارد بوت فادر شوید.شکل زیر:

Capture

Capture

حالا دستور newbot/ ارسال کنید تا فرایند ساخت ربات جدید انجام بشه.سپس باید برای آن نامی انتخاب کنید و نام را ارسال کنید مانند sourcebaranbot

سپس از شما میخواهد که یوزرنیمی را انتخاب کنید که ما در اینجا همان sourcebaranbot را انتخاب کرده ایم.دقت داشته باشید که لازم است اخر این نام کلمه Bot وجود داشته باشد.در صورتی که ربات پیامی مبنی بر این که نام قبلا توسط فردی دیگر اشغال شده است داد باید نام خود را تغیر داده یا پسوندی در ان ایجاد کنید مانند:SourceBarannewBot

پس از ان بات به شما مقداری به نام توکن خواهد داد که شما باید انرا کپی کنید زیرا ما به ان نیاز خواهیم داشت.

Capture

خوب حالا وقت ان است که شروع به کدنویسی کنیم ویژوال سی شارپ را باز کرده و یک پروژه کنسولی با نام دلخواه انتخاب کنید:

Capture

از انجا که ما به لایبری های تلگرام احتیاج داریم کامند زیر را به  Nuget Console ارسال میکنیم:

Install-Package TelegramBotSharp

همانطور که میبینید این پکیج به مراجع ما اضافه گشت و ما میتوانیم از دستورات آن استفاده کنیم.

using TelegramBotSharp;

کد بالا هم که برای اشاره کردن به پکیج ما میباشد.

حالا برای ساخت یک شی کد زیر را در کلاس وارد میکنیم:

public static TelegramBot bot;

و از ان یک شی با نام بوت میسازیم:

bot=new TelegramBot("توکن خود را در این جا وارد کنید");

حال متدی بسازید به شکل زیر و در کلاس اصلی انرا صدا بزنید:

private static void Phasokhgo(Message m)
{
while (true)
{
var result = await bot.GetMessages();
if (m.Text == null) return;
if (m.Text.Contains("درود"))
{
bot.SendMessage(Target, "به سورس باران بیاید");
}
}
}

همانطور که میبیند ربات در جواب “درود” خواهد گفت به سورس باران بیایید.

شما میتوانید از elseif های زیادی استفاده کنید و بات سخنگوی کاملی بسازید.برای انکه ربات شما بتواند به پیام هایی تعریف نشده نیز جواب بدهد یک else قرار بدهید.

حتما میدانید که اگر بخواهید یک ربات هوشمند بسازید باید انرا طوری تنظیم کنید که همواره یک جواب به کاربر بر نگرداند.

برای این کار میتوانید از یک سویچ کیس و یک کلاس رندوم استفاده کنید مانند کد زیر:

if (m.Text.Contains("خوبی؟"))
{
Random r = new Random();
int a = r.Next(0,3);
switch (a)
{
case 0: bot.SendMessage(target, "ممنونم");break;
case 1: bot.SendMessage(target, "مرسی,تو خوبی؟"); break;
case 2: bot.SendMessage(target, "تازگیا به سورس باران نمیای؟"); break;
case 3: bot.SendMessage(target, "دعا گوی شما هستم"); break;
}
}

سپس نرم افزار را روی یک سرور بگزارید تا 24 ساعته فعال بماند.هم اکنون شما صاحب یک بات شده اید.

راستی شما میتوانید با مراجعه به صفحه تلگرام شارپ در نوگت بقیه متدهای انرا هم یاد بگیرید.

در نهایت با تلاش و کوشش میتوانید یک ربات حرفه ای ایجاد کنید.

2.1/5 - (16 امتیاز)

راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.

پکیج آموزش برنامه‌ نویسی پایتون در 24 ساعت
  • انتشار: ۶ تیر ۱۳۹۵

دسته بندی موضوعات

آخرین محصولات فروشگاه

مشاهده همه

نظرات

  1. سلام عالی ولی خیلی کم بود، لطفا بیشتر توضیح بدید مخصوصا ذخیره اطلاعات در sql server

  2. سلام
    بسیار عالی بود ولی خیلی خیلی کم
    خیلی عالی میشه اگه مفصل تر توضیح بدید واقعا نیازه
    ممنون

  3. بسیار کاربردی اما نیاز به کار زیادی داره

  4. سلام
    وقتی که من کد
    Install-Package TelegramBotSharp
    در Nuget Console وارد میکنم ارور میده:
    Install failed. Rolling back…
    Package ‘RestSharp 105.1.0’ does not exist in project ‘Telegram-Bot’
    Package ‘RestSharp 105.1.0’ does not exist in folder ‘d:\visual projects\Telegram-Bot\packages’
    Install-Package : Could not install package ‘RestSharp 105.1.0’. You are trying to install this package into a project that targets ‘.NETFramework,Version=v2.0’, but the package does not contain any assembly
    references or content files that are compatible with that framework. For more information, contact the package author.
    At line:1 char:1
    + Install-Package TelegramBotSharp
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: (:) [Install-Package], Exception
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand
    و بعد پکیج رو اضافه نمیکنه.
    راهنمایی کنید ممنون میشم …

  5. سلام این بحثتون مثل سایتتون عالی بود اگه امکانش هست با یک پروژه دیگه, مطلب گسترش بدین …ممنون 🙂

  6. سلام
    من پروژه م رو با asp.net mvc ساختم. و توی یه حلقه بی نهایت با ارسال مکرر درخواست http ( یعنی روش getUpdate) پیغام ها رو میگیرم.
    برنامه رو گذاشتم روی یه هاست رایگان ویندوزی. اما برنامه بعد از راه اندازی فقط چند ساعت اجرا میشه و هاست می بندتش. کلی روش های مختلف امتحان کردم که نذارم session برنامه تموم بشه و هاست، برنامه مو نبنده اما هیچ کدوم کار نمی کنه.
    راه حل آخری که برام مونده استفاده از webhook هستش. اگر تجربه خوبی در این مورد دارین لطفا با کدش به اشتراک بذارین مراحلش رو.
    (لطفا طریقه گرفتن ssl روی یه دامینی مثل دامین های .tk رو هم مرحله به مرحله توضیح بدین، هیچ جا درست توضیح ندادن!!!!!!)

  7. محمد حسین
    13 تیر 1395

    ببخشید یه سوال، الان این رباته وقتی خروجی گرفته شد ، فایلاشو همینطوری میشه بریزیم روی سرور لینوکس یا اینکه باید سرور ویندوز داشته باشیم؟

    • محمدرضا بابایی یزدلی
      13 تیر 1395

      سلام دوست من
      باید سرور مجازی ویندوز تهیه بفرمایید

  8. دستت درد نکنه عالی بود فقط تابع :
    await bot.GetMessages
    error میده منبعش رو پیدا نکردم ، راهنمایی می کنید.

    • محمدرضا بابایی یزدلی
      08 تیر 1395

      سلام دوست من
      ابتدا برید بررسی کنید که پکیج به درستی نصب شده باشه
      سپس این سه نیم اسپیس رو به برنامتون اضافه کنید
      using TelegramBotSharp;
      using TelegramBotSharp.Serialization;
      using TelegramBotSharp.Types;
      انشاالله که درست میشه

  9. با سلام دوباره ایا شما توی تلگرام اکانت دارید برای سوال پرسیدن ؟؟

  10. ba salam babakhsid amozeshe shoma khili mabhame mamnon misham bishtar tozih bedid

    • محمدرضا بابایی یزدلی
      07 تیر 1395

      سلام دوست من
      اگر استقبال از این موضوع زیاد بشه شاید یک اموزش پروژه محور ایجاد کنیم
      تا اون موقع اگه سوالی دارید همینجا مطرح کنید

بازخوردهای خود را برای ما ارسال کنید

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.