عميل IRC بسيط (Internet Relay Chat) مكتوب بلغة Python 2
شكر خاص لـ Ilie Cebanu (https://github.com/NotQuiteMelvin) على إصدار Python 3.
للانضمام إلى أي قناة (على Freenode) باسم مستخدم محدد، ما عليك سوى تشغيل irc_client.py ووضع اسم المستخدم المطلوب كوسيطة أولى، متبوعًا باسم القناة (مع # التالي أو بدونه):
./irc_client.py myusername channeltojoin
أو
./irc_client.py myusername #channeltojoin // actually not working :)
يبدو أن تمرير اسم القناة يتبع البرنامج النصي #break، حيث تتعامل بايثون مع # كبداية للتعليق؟
هذه هي الطريقة التي تبدو بها الآن (وحدة التحكم اليسرى: irc_client.py، وحدة التحكم اليمنى: irssi):
لقد أضفت نسخة مجمعة إلى ملف Python bytecode (بامتداد .pyc). يتم التجميع عن طريق الأمر:
$ python -m compileall irc_client.py
قد يكون من المفيد الحصول على الإصدار الثنائي بدلاً من رمز الدرس.
الرسائل متعددة الأسطر لا تعمل (تتعلق بعدم الرد من الخادم عند عدم نشر أي رسالة من مستخدم آخر)
أحيانًا يتم العبث بالإخراج بواسطة رسائل الخادم (مثل PING)
عدم وجود تجربة مستخدم - يمكن إرسال رسائل بسيطة من سطر واحد فقط :)
irc.freenode.net (الخادم) والمنفذ 6667 مشفران - ولكن يمكن إضافتهما بسهولة كوسيطات
يجب تمرير اسم القناة بدون بادئة #
الإخراج الملون (يحدد لاحقًا)
https://en.wikipedia.org/wiki/Internet_Relay_Chat
RFC 1459 (بروتوكول الدردشة عبر الإنترنت)
https://tools.ietf.org/html/rfc1459
مرجع رموز استجابة خادم IRC
https://www.alien.net.au/irc/irc2numerics.html
RFC 2812 (الدردشة عبر الإنترنت: بروتوكول العميل):
https://tools.ietf.org/html/rfc2812
موارد أخرى:
http://chi.cs.uchicago.edu/chirc/irc_examples.html
http://books.msspace.net/mirrorbooks/irchacks/059600687X/irchks-CHP-13-SECT-2.html