Klien IRC (Internet Relay Chat) sederhana yang ditulis dengan Python 2
Terima kasih khusus kepada Ilie Cebanu (https://github.com/NotQuiteMelvin) untuk versi Python 3.
Untuk bergabung dengan saluran mana pun (di Freenode) dengan nama pengguna yang dipilih, cukup jalankan irc_client.py dan masukkan nama pengguna yang diinginkan sebagai argumen pertama, diikuti dengan nama saluran (dengan # berikut atau tanpa):
./irc_client.py myusername channeltojoin
atau
./irc_client.py myusername #channeltojoin // actually not working :)
Tampaknya meneruskan nama saluran dengan # skrip break berikut, karena Python memperlakukan # sebagai awal komentar?
Ini tampilannya sekarang (konsol kiri: irc_client.py, konsol kanan: irssi):
Saya telah menambahkan versi yang dikompilasi ke file bytecode Python (dengan ekstensi .pyc). Kompilasi dilakukan dengan perintah:
$ python -m compileall irc_client.py
Mungkin berguna untuk mendapatkan versi biner daripada kode sumber.
pesan multiline tidak berfungsi (terkait dengan tidak adanya pengiriman ulang dari server ketika tidak ada pengguna lain yang memposting pesan)
keluaran terkadang kacau oleh pesan server (seperti PING)
kurangnya UX - hanya pesan satu baris sederhana yang dapat dikirim :)
irc.freenode.net (server) dan port 6667 di-hardcode - tetapi dapat dengan mudah ditambahkan sebagai argumen
nama saluran harus diisi tanpa awalan #
keluaran berwarna-warni (TBD)
https://en.wikipedia.org/wiki/Internet_Relay_Chat
RFC 1459 (Protokol Obrolan Relai Internet)
https://tools.ietf.org/html/rfc1459
Referensi kode respons server IRC
https://www.alien.net.au/irc/irc2numerics.html
RFC 2812 (Obrolan Relai Internet: Protokol Klien):
https://tools.ietf.org/html/rfc2812
Sumber daya lainnya:
http://chi.cs.uchicago.edu/chirc/irc_examples.html
http://books.msspace.net/mirrorbooks/irchacks/059600687X/irchks-CHP-13-SECT-2.html