2008-08-23 11 views
10

मैंने एक छोटी उम्र में आईआरसी का उपयोग शुरू किया, और मैं हमेशा इसके साथ मोहक रहा हूं। एक भाषा अभ्यास के रूप में, मैं एक ग्राफिकल फ्रंट एंड के रूप में Shoes के साथ रूबी में एक साधारण आईआरसी क्लाइंट प्रोग्रामिंग के बारे में सोच रहा था। मेरे लिए आपका सवाल, दयालु, मुझे इस महान साहस (जूते और रूबी के अलावा) शुरू करने के लिए परिचित होने की क्या ज़रूरत है? मुझे लगता है कि आईआरसी प्रोटोकॉल पर कुछ प्रकार का विनिर्देश है। कोई संकेतक?प्रोग्रामिंग एक साधारण आईआरसी (इंटरनेट-रिले-चैट) क्लाइंट

उत्तर

24

पहले की पोस्ट में आरएफसी 145 9 का उल्लेख किया गया था। हालांकि यह आईआरसी के लिए बहुत अच्छा परिचय है, लेकिन वास्तव में इसे आरएफसी 2810-2813 द्वारा हटा दिया गया है। से संबंधित आईआरसी यहाँ दस्तावेज़ीकरण का एक और पूरी सूची आप कार्यक्रम के लिए कुछ भी आवश्यकता है:

  • RFC1459 (मूल आरएफसी; अधिक्रमण, लेकिन अभी भी उपयोगी)
  • RFC2810 (आईआरसी आर्किटेक्चर)
  • RFC2811 (आईआरसी चैनल प्रबंधन)
  • RFC2812 (आईआरसी ग्राहक प्रोटोकॉल)
  • RFC2813 (आईआरसी सर्वर प्रोटोकॉल)
  • CTCP specification
  • DCC specification
  • Updated CTCP specification (सभी ग्राहकों के लिए इस का समर्थन नहीं)
  • ISupport (response code 005) draft (लगभग सभी सर्वर इसका समर्थन आजकल)
  • Client capabilities (CAP command) draft (कुछ सर्वर/ग्राहकों द्वारा समर्थित)
  • IRCv3 standards and proposals (आईआरसी के भविष्य सुविधाओं, जिनमें से कुछ पहले ही व्यापक रूप से समर्थित हैं)
+0

ध्यान दें कि आरएफसी 2810-आरएफसी 2813 अकेले मेरा आईआरसीनेट लिखा है (महान विभाजन के बाद)। आईआरसीनेट मूल रूप से एकमात्र प्रमुख नेटवर्क है जो '!' चैनलों का समर्थन करता है। 005 प्रत्येक टोकन को पार्सिंग और समझना मुश्किल है .. विभिन्न नेटवर्क अन्य चैनल मोड का समर्थन करते हैं (जैसे 'q',' a' और 'h' जैसे मालिक, व्यवस्थापक और आधा) –

+0

' 005' पार्सिंग वास्तव में जटिल नहीं है। नए टोकन अक्सर नहीं जोड़े जाते हैं (भविष्य में अब भी कम है कि आईआरसीवी 3 अपनाया जा रहा है), और मौजूदा लोगों को पार्स करना सरल है: https://github.com/cinchrb/cinch/blob/master/lib/cinch/isupport । आरबी – Hinrik

+0

आप सभी टोकन का विश्लेषण नहीं करते हैं। आप बस एक मुट्ठी भर टोकन पार्स, लेकिन सभी नहीं। –

7

मैं विकिपीडिया पर इस मणि पाया में खर्च की गई थी। भयभीत लगता है।

यह वास्तव में नहीं है।

टेलनेट एक आईआरसी सर्वर पर और पहले प्रोटोकॉल की सादगी को देखते हैं। सबसे कठिन हिस्सा हैडशेक है, उसके बाद यह बहुत आसान है।

+1

+1 टेलनेट और इसे मैन्युअल रूप से पहले आज़माएं! –

+1

+1 - मैंने टेलनेट (केवल गीक पॉइंट्स के लिए) के माध्यम से आईआरसी पर बात की है – Blorgbeard

2

मैंने एक बार क्लाइंट और एक सर्वर को 2 और लोगों (एक कोर्स के हिस्से के रूप में) के साथ लागू किया।
मैं आपको बता सकता हूं कि आरएफसी जो आप पहले ही जुड़े थे, वह बहुत अच्छा है।
मैं अपने आप को देखने के लिए कि कैसे सामान काम करता है, मौजूदा क्लाइंट के साथ कनेक्शन को आसानी से स्नीफ करने का प्रयास करता हूं।

0

आपके प्रश्न का बिल्कुल जवाब नहीं है, लेकिन यह सहायक हो सकता है। आप रूबी का उपयोग कर रहे हैं, तो मैं पतझड़ की पत्तियां परियोजना एक शानदार तरीका रूबी का उपयोग कर एक आईआरसी बॉट निर्माण करने के लिए होने के लिए मिल गया है:

http://github.com/RISCfuture/autumn/tree/master

यह बहुत ज्यादा रूबी दुनिया के Jibble है।

संबंधित मुद्दे