نحوه ایجاد ربات IRC: 12 مرحله (همراه با تصاویر)

فهرست مطالب:

نحوه ایجاد ربات IRC: 12 مرحله (همراه با تصاویر)
نحوه ایجاد ربات IRC: 12 مرحله (همراه با تصاویر)

تصویری: نحوه ایجاد ربات IRC: 12 مرحله (همراه با تصاویر)

تصویری: نحوه ایجاد ربات IRC: 12 مرحله (همراه با تصاویر)
تصویری: بازیابی رمز جیمیل فراموش شده بدون شماره تلفن با گوشی how to recovery gmail account password 2021 2024, آوریل
Anonim

اگر در چت رله اینترنتی (IRC) بوده اید ، احتمالاً در مقطعی با ربات روبرو شده اید. ربات ها برنامه ها یا اسکریپت های مستقلی هستند که به همان روشی که یک انسان به شبکه متصل می شود ، متصل می شوند. آنها می توانند طوری برنامه ریزی شوند که به دستورات کاربر پاسخ دهند یا حتی چت کنند. در این راهنما ، می توانید گزینه های خود را برای ساخت ربات IRC و همچنین نحوه ساختن آن از ابتدا پیدا کنید.

مراحل

روش 1 از 2: ارزیابی گزینه ها

مرحله 1 یک IRC Bot ایجاد کنید
مرحله 1 یک IRC Bot ایجاد کنید

مرحله 1. نصب یک اسکریپت مشتری را در نظر بگیرید

گاهی اوقات شما فقط می خواهید یک کار ساده انجام شود و نمی خواهید یک برنامه مستقل باشد. در این حالت ، می توانید یک اسکریپت را به یک سرویس گیرنده IRC وصل کنید. این امر در مورد mIRC ، که دارای موتور اسکریپت قوی و انواع متنوع اسکریپت های موجود است ، بسیار رایج است. اگر تجربه برنامه نویسی زیادی ندارید ، این ساده ترین گزینه است و بسیار توصیه می شود. برای بقیه این راهنما ، دستورالعمل ها نیاز به دانش برنامه نویسی کامپیوتر دارند.

مرحله 2 یک IRC Bot ایجاد کنید
مرحله 2 یک IRC Bot ایجاد کنید

مرحله 2. یک پایگاه کد از قبل موجود برای ربات خود در نظر بگیرید

برنامه های متن باز و رایگان زیادی وجود دارد که می تواند به شما در تنظیم سریع ربات سفارشی خود کمک کند. یکی از این نمونه ها Eggdrop است ، قدیمی ترین ربات IRC که هنوز نگهداری می شود.

مرحله 3 یک IRC Bot ایجاد کنید
مرحله 3 یک IRC Bot ایجاد کنید

مرحله 3. نوشتن ربات خود را در نظر بگیرید

برای کاربران پیشرفته IRC و توسعه دهندگانی که راه خود را در اطراف یک زبان برنامه نویسی می دانند ، این یک گزینه عالی است. تا زمانی که سوکت پشتیبانی می کند ، تقریباً می توانید از هر زبانی که می خواهید استفاده کنید ، اما زبانهای رایج برای استفاده شامل Python ، Lua ، PHP ، C و Perl است. اگر هیچ کدام از این موارد را نمی دانید اما زبان دیگری می دانید ، مشکلی نیست. معمولاً می توانید نمونه هایی را در وب به هر زبانی که می خواهید پیدا کنید. برای این مقاله ، ما استفاده از PHP را نشان می دهیم. برای استفاده از PHP ، باید PHP-CLI را بر روی رایانه یا سرور خود نصب کرده باشید.

  • PHP را می توان از php.net بارگیری کرد
  • اسکریپت های PHP را می توان از خط فرمان اجرا کرد. برای اطلاعات بیشتر و کمک در استفاده از PHP ، به این صفحه راهنمای PHP مراجعه کنید.

روش 2 از 2: توسعه ربات خود

مرحله 4 ایجاد IRC Bot
مرحله 4 ایجاد IRC Bot

مرحله 1. جزئیات اتصال را جمع آوری کنید

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

  • سرور: نام دامنه سرور مورد استفاده برای اتصال به IRC ، مانند

    chat.freenode.net

  • بندر: در بیشتر موارد ، این 6667 است ، اما اگر مطمئن نیستید ، سرویس گیرنده IRC خود یا وب سایت شبکه را بررسی کنید.
  • کنیه: نام مستعار که ربات شما باید استفاده کند. به خاطر داشته باشید که برخی از نویسه های خاص معمولاً مجاز نیستند (@#! ~).
  • شناسایی کنید: فیلد ident پس از نام مستعار زمانی ظاهر می شود که شخصی WHOIS را به این شکل انجام دهد:

    نام مستعار! ident@hostname

  • GECOS: این قسمت معمولاً نام واقعی کاربر یا توضیحات کلی ربات را در خود نگه می دارد ، اما شما می توانید هر چیزی را که می خواهید در آنجا قرار دهید.
  • کانال: معمولاً می خواهید ربات شما در یک یا چند کانال حضور داشته باشد. در اکثر شبکه ها ، اینها با "#" پیشوند می شوند ، اما ممکن است چیز دیگری باشد.
مرحله 5 یک IRC Bot ایجاد کنید
مرحله 5 یک IRC Bot ایجاد کنید

مرحله 2. پیکربندی را در اسکریپت خود شروع کنید

اساسی ترین راه برای انجام این کار ، نامگذاری چند متغیر با توجه به نام پیکربندی بالا است. همچنین می توانید آنها را در یک فایل پیکربندی ذخیره کرده و آنها را تجزیه کنید ، اما در حال حاضر ما فقط به ضروریات مطلق پایبند هستیم.

مرحله 6 یک IRC Bot ایجاد کنید
مرحله 6 یک IRC Bot ایجاد کنید

مرحله 3. به شبکه متصل شوید

برای انجام این کار ، باید یک سوکت به سرور در پورت مشخص شده باز کنید. همچنین در صورت خرابی اتصال به هر دلیل ، باید کد مدیریت خطا را در این قسمت اضافه کنید. در این مورد ، PHP برخی از توابع مرتب را در اختیار ما قرار می دهد تا خطا را به طور موثر مدیریت کنیم.

مرحله 7 یک IRC Bot ایجاد کنید
مرحله 7 یک IRC Bot ایجاد کنید

مرحله 4. ربات خود را ثبت کنید

این بدان معناست که نام مستعار ، شناسه و GECOS خود را به سرور ارائه دهید ، بدون ثبت نام در NickServ. برای انجام این کار ، کافی است دستورات NICK و USER را به سرور بنویسید ، و سپس یک واگن بازگشتی و خط جدید را وارد کنید. ضروری است که این کار را دقیقاً مطابق تصویر انجام دهید ، زیرا اینگونه است که در RFC1459 ، مشخصات پروتکل IRC ، مشخص شده است.

توجه داشته باشید که دو پارامتر میانی (در این مورد * و 8) باید مشخص شوند ، اما سرور آنها را نادیده می گیرد. این دو فقط بین سرورهای مرتبط استفاده می شوند ، نه توسط یک سرویس گیرنده مستقیم متصل

مرحله 8 یک IRC Bot ایجاد کنید
مرحله 8 یک IRC Bot ایجاد کنید

مرحله 5. با استفاده از یک حلقه واکشی داده ها را از سوکت ادامه دهید

اگر از حلقه استفاده نمی کردید ، اسکریپت شما بلافاصله خاتمه می یافت و ربات اساساً بی فایده بود. برای حفظ ارتباط ، باید داده ها را از سرور واکشی کنید ، هرگونه ورودی را در جریان مورد نظر خود بررسی کنید و در صورت وجود به آن پاسخ دهید. در اینجا ، ما با استفاده از socket_read () داده ها را جمع آوری می کنیم تا هر گونه داده ای را که برای ما در دسترس است بگیریم. در صورت وجود ، ما به انجام هر کاری که در حلقه است ادامه می دهیم. همچنین ممکن است داده های خام را به کنسول ارسال کنید ، بنابراین می توانید از دیدگاه ربات مشاهده کنید که چه اتفاقی می افتد.

مرحله IRC Bot 9 را توسعه دهید
مرحله IRC Bot 9 را توسعه دهید

مرحله 6. یک کنترل کننده پینگ بنویسید

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

PING: rajaniemi.freenode.net

به سرور مجبور نیست نام خود را پس از ':' قرار دهد ، می تواند هر آنچه را که می خواهد تهیه کند. شما * باید * دقیقاً همان چیزی را که سرور گفته است ، بجز استفاده از PONG تکرار کنید.

مرحله 10 یک IRC Bot ایجاد کنید
مرحله 10 یک IRC Bot ایجاد کنید

مرحله 7. به کانال های خود بپیوندید

خوب ، بنابراین ما یک ربات داریم که به شبکه متصل می شود و به پینگ ها پاسخ می دهد ، اما در غیر این صورت هیچ کاری انجام نمی دهد. برای اینکه مردم ربات شما را ببینند و از آن استفاده کنند ، باید در یک کانال باشد (در غیر این صورت باید به آن پاسخ دهید تا به پیام های خصوصی پاسخ دهد).

  • برای انجام این کار ، ما کد وضعیت سرور 376 یا 422 را بررسی می کنیم. 376 به این معنی است که MOTD (پیام روز) به پایان رسیده است. 422 به این معنی است که هیچ MOTD برای ارسال وجود نداشت. این MOTD فقط چیزی است که سرور هنگام اتصال به شما ارسال می کند ، اما نشانگر خوبی برای زمان شروع پیوستن به کانال ها است.
  • شما باید یک دستور JOIN صادر کنید. این دستور را می توان با یک یا چند کانال که با کاما از هم جدا شده اند دنبال کرد.
  • توجه داشته باشید که داده هایی که سرور ارسال می کند به راحتی با فاصله مشخص می شود. به این ترتیب ما می توانیم داده ها را تقسیم کرده و با استفاده از ایندکس آرایه به آنها ارجاع دهیم.
مرحله یازدهم IRC Bot ایجاد کنید
مرحله یازدهم IRC Bot ایجاد کنید

مرحله 8. به پیامهای کانال پاسخ دهید

حالا برای قسمت باحالش. ربات شما به کانال پیوست ، بنابراین اکنون می توانید از آن برای آنچه می خواهید استفاده کنید. بیایید یک دستور مثال به نامmoo ایجاد کنیم.

  • به افست که پیامها در آن شروع می شوند توجه کنید (این امر هم در مورد کانالها و هم در پیامهای خصوصی صدق می کند). همیشه در یک مکان است.
  • با جمع کردن داده های تکه تکه شده به هم ($ d) می توانید دستوراتی را که فاصله در آنها وجود دارد مدیریت کنید. این خارج از حوصله این مقاله است.
  • اگر هدف یک کانال است (مانند #botters-test) ، پس به آن پاسخ می دهید. اگر یک پیام خصوصی است ، این بیت نام مستعار ربات شما خواهد بود! سپس باید با نام مستعار فرستنده پاسخ دهید ، نه نام شما (در غیر این صورت شما با خودتان صحبت می کنید ، و این فقط احمقانه است).
مرحله 12 یک IRC Bot ایجاد کنید
مرحله 12 یک IRC Bot ایجاد کنید

مرحله 9. ربات خود را گسترش دهید

با استفاده از پیاده سازی بالا می توانید بسیاری از ویژگی های جدید را اضافه کنید. بسیاری از دستورات دیگر را می توان برای شبکه IRC صادر کرد ، مانند مدیریت عملیات ، لگد زدن و ممنوع کردن ، تنظیم موضوع ، و بسیاری از ویژگی های دیگر.

نکات

  • شما می توانید نتیجه دستور "/me" را با پیشوند پیام های خود مانند این تهیه کنید:

    • PRIVMSG #channel: / 001ACTION متن اینجا / 001.
    • 001 به معنای کاراکتر 1 ASCII است و در یک رشته PHP با دو نقل قول چنین تفسیر می شود. از طرف دیگر ، می توانید استفاده کنید

      chr (1)

    • خارج از رشته
  • رنگها را می توان در یک پیام با پیشوند "\ 003" (کد ASCII 3) و سپس یک شماره برای یک رنگ تولید کرد. 0 = سفید ، 1 = سیاه ، 2 = آبی ، 3 = سبز ، 4 = قرمز […]. برای مشاهده رنگ های بیشتر به صفحه mIRC مراجعه کنید.
  • قبل از اینکه ربات خود را آنلاین کنید ، به عنوان احترام ، از صاحبان کانال و اپراتورهای IRC رضایت بگیرید. همه شبکه ها و کانال ها از سیاست استقبال نسبت به ربات ها ، حتی آنهایی که رفتار خوبی دارند ، برخوردار نیستند.
  • برخی از شیاطین IRC از مشخصات پروتکل فراتر رفته و سایر ویژگی ها را پیاده سازی می کنند. اگر از آن برای شبکه خاصی استفاده می کنید ، مطمئناً اگر از پروتکل آن مطلع باشید ، می توانید از آن استفاده کنید. اگر می خواهید ربات شما در چندین شبکه مستقر شود ، سعی کنید آن را به آنچه در RFC است نگه دارید.

توصیه شده: