معرفی
در مقاله قبلی من ، ما سعی کردیم اصول چارچوب ربات مایکروسافت را درک کنیم. اکنون، در این مقاله، یک Echo Bot اساسی برای شما بچه ها ایجاد می کنیم تا نحوه راه اندازی یک برنامه hello world را درک کنید. در مرحله بعد یک ربات پیشواز را پیاده سازی می کنیم که به ما سلام می کند و نام ما را می خواهد و سپس می بینیم که با کمک شناسه کاربری ما می تواند نام ما را به خاطر بسپارد. در حال حاضر، ما از Microsoft Bot Builder's MemoryStorage استفاده خواهیم کرد، که یک لایه ذخیره سازی است که از فرهنگ لغت درون حافظه استفاده می کند. همچنین در صورت تمایل به استفاده از سرویسهای Azure، کدی را برای استفاده از AzureBlobStorage برای شما قرار میدهم که حساب ذخیرهسازی و نام محفظه ذخیرهسازی شما را ضمیمه میکند.
بنابراین، بدون اتلاف وقت بیشتر، بیایید به آن شیرجه بزنیم. در زیر پیش نیازهای زیر وجود دارد که باید در سیستم خود داشته باشیم:
- Microsoft Visual Studio 2019 (هر نسخه ای. من از نسخه انجمن استفاده می کنم)
- پسوند ویژوال استودیو برای چارچوب ربات.
- شبیه ساز چارچوب ربات.
آنچه را که در قالب Echo Bot داریم را درک کنید
پس از نصب پیش نیازها، ویژوال استودیو خود را باز کنید و پسوند پروژه را مانند زیر انتخاب کنید:
![طراحی و توسعه یک ربات تبریک با استفاده از چارچوب ربات مایکروسافت در نسخه جامعه VS2019](http://pezhvak24.ir/dl/codenevis/firstcode/article/temp/80778/Images/1.png)
از شما می خواهد که نام پروژه را بدهید و مکان پروژه ها و غیره را مرور کنید. می توانید آنها را پر کنید و به صفحه زیر مراجعه کنید.
![طراحی و توسعه یک ربات تبریک با استفاده از چارچوب ربات مایکروسافت در نسخه جامعه VS2019](http://pezhvak24.ir/dl/codenevis/firstcode/article/temp/80778/Images/2.png)
روی Create کلیک کنید. شما باید بتوانید راه حل های زیر را با پوشه ها ببینید:
![طراحی و توسعه یک ربات تبریک با استفاده از چارچوب ربات مایکروسافت در نسخه جامعه VS2019](http://pezhvak24.ir/dl/codenevis/firstcode/article/temp/80778/Images/3.png)
شما این ساختار پروژه را شبیه پروژه های اصلی دات نت خواهید دید، جایی که یک پوشه www-root دارید و یک فایل کلاس Startup.cs نیز دارید. شاید تعجب کنید که چرا، اما از آنجایی که برنامه های ربات یک برنامه تحت وب هستند و زمانی که ما از قالب VSIX استفاده می کنیم، یک برنامه ASP.NET MVC Core تولید می کند و این فایل ها شبیه برنامه اصلی هستند که برای همه وب مورد نیاز است. برنامه ها و مختص ربات نیستند.
appsettings.json فایل پیکربندی است که حاوی اطلاعات خاص ربات شما مانند شناسه برنامه، گذرواژهها و غیره است. میتوانید بعداً بر اساس محیط خود، کلیدها یا URL خود را به این فایل پیکربندی اضافه کنید. اما برای این مثال، خالی است که کاملا طبیعی است و چون در حال حاضر به آن نیازی نداریم.
همانطور که قبلاً به شما گفتم ربات یک برنامه وب است. در اینجا، چون ما از یک برنامه هسته ای ASP.NET MVC استفاده می کنیم، پوشه ای که کنترلرها و ربات ها را مشاهده می کنید فقط به آن مربوط می شود. ما در مورد کلاس هایی که این پوشه ها دارند بیشتر صحبت خواهیم کرد، اما می توانید به خاطر داشته باشید که این برنامه همان برنامه وب اصلی MVC است.
پوشه ربات ها شامل یک کلاس EchoBot است که ActivityHandler را گسترش می دهد که رابط IBot را پیاده سازی می کند. در حال حاضر، متوجه خواهید شد که ما دو روش داریم که قبلاً برای ما نادیده گرفته شده است. OnMessageActivityAsync زمانی استفاده می شود که ربات شما یک فعالیت پیامی دریافت کند. هر زمان که کنترلکننده نوبت فعالیت ورودی را ببیند، آن را به کنترلکننده فعالیت OnMessageActivityAsync ارسال میکند. بنابراین، ما از این روش برای مدیریت و پاسخگویی به پیام با منطق خود در هنگام ساخت ربات خود استفاده خواهیم کرد.