| כותב |  | 
      
        | אוריה משתמש חבר
 
  
  
 הצטרף / הצטרפה: 29 January 2010
 מדינה: Israel
 משתמש: מנותק/ת
 הודעות: 230
 | 
          תקנו אותי אם אני טועה, זה הולך ככה:
           | | נשלח בתאריך: 11 June 2010 בשעה 09:10 | | IP רשוּם | 
 |   |  
           | 
 |  NICK NickName
 USER NickName RealName :NickName
 מחכים ל-PING ואז שולחים PONG, שבו יש את מה שבא אחרי PING שהגיע
 MODE NickName (אין הרשאה מיוחדת)
 JOIN
 פינג פונג במשך כל הזמן הזה.
 יש לי קוד, שנעצר בקטע שמחכים לפינג בגלל שההתקשרות בוטלה.
 יכול להיות שזה תלוי בשרת?
 זה הקוד:
 
 
| קוד: 
 
    
    | 
      
       | TcpClient irc = new TcpClient();
 irc.Connect("server", 6667);
 NetworkStream stream = irc.GetStream();
 StreamReader sr  = new StreamReader(stream);
 StreamWriter sw = new StreamWriter(stream);
 //NICK
 sw.WriteLine("NICK bot");
 //USER
 sw.WriteLine("USER bot bot :bot");
 //WaitForPing
 while(true)
 {
 string s = sr.ReadLine();
 string[] ar = s.Split(' ');
 if(ar[0] == "PING")
 sw.WriteLine("PONG " + ar[1]);
 }
 
 |  |  |  יש שגיאה בקטע של ה-while (ההתקשרות בוטלה ע"י השרת)
 
 
 __________________
 SmartProgramming
 נא לא להגיב בשבת על מה שאני כותב
 
 עדיף להשקיע עוד שעה בתיעוד, מלאבד עוד 100 שעות ויותר על שיחזר של כל הפרוייקט מההתחלה..
 | 
       
        | חזרה לתחילת העמוד |       | 
       
       
        |  | 
        | inHaze משתמש פעיל
 
  
  
 הצטרף / הצטרפה: 23 November 2006
 מדינה: Israel
 משתמש: מנותק/ת
 הודעות: 119
 | 
          תנסה אולי להוסיף בקשה להתחברות לערוץ מסוים:
           | | נשלח בתאריך: 11 June 2010 בשעה 12:13 | | IP רשוּם | 
 |   |  
           | 
 |  
 
 
| קוד: 
 
    
    | 
      
       | sw.WriteLine ("JOIN " + Channel); 
 |  |  |  
 
 __________________
 הבלוג שלי
 | 
       
        | חזרה לתחילת העמוד |     | 
       
       
        |  | 
        | אוריה משתמש חבר
 
  
  
 הצטרף / הצטרפה: 29 January 2010
 מדינה: Israel
 משתמש: מנותק/ת
 הודעות: 230
 | 
          וואי אין לי מושג מה לעשות..
           | | נשלח בתאריך: 13 June 2010 בשעה 09:48 | | IP רשוּם | 
 |   |  
           | 
 |  זה הקוד:
 
 
| קוד: 
 
    
    | 
      
       | public class MainClass
 {
 public static bool connected;
 public static void Main()
 {
 TcpClient irc = new TcpClient();
 irc.Connect("irc server", 6667);
 string nk = "nick"; //לא כל כך משנה כרגע
 NetworkStream stream = irc.GetStream();
 StreamReader sr = new StreamReader(stream);
 StreamWriter sw = new StreamWriter(stream);
 string s;
 string[] ar;
 bool nick = false, user=false, join=false, mode=false;
 while(irc.Connected)
 {
 s = sr.ReadLine();
 if(s!=null)
 {
 ar = s.Split(' ');
 if(ar[0] == "PING")
 {
 sw.WriteLine("PONG " + ar[1]);
 sw.Flush();
 }
 else if(ar[1] == "MODE")
 mode = true;
 
 if(nick == false)
 {
 sw.WriteLine("NICK Doby");
 }
 else if(user == false && nick ==true)
 {
 sw.WriteLine("USER Doby chnbt chnbt :Doby");
 sw.Flush();
 user = true;
 }
 else if(join == false && nick ==true && user == true && mode == true)
 {
 sw.WriteLine("JOIN #security");
 sw.Flush();
 join = true;
 }
 else if(join == true)
 {
 sw.WriteLine("NOTICE " +nick + ":Hi " +nick +" I'm your bot");
 sw.Flush();
 Thread.Sleep(3000);
 break;
 }
 }
 irc.Close();
 sr.Close();
 sw.Close();
 }
 }
 }
 
 |  |  |  הטקסט הראשון שהוא מקבל זה Ping Timeout
  : [code]
 ERROR :Closing Link: [000.00.00.000] (Ping timeout)
 
 
 __________________
 SmartProgramming
 נא לא להגיב בשבת על מה שאני כותב
 
 עדיף להשקיע עוד שעה בתיעוד, מלאבד עוד 100 שעות ויותר על שיחזר של כל הפרוייקט מההתחלה..
 | 
       
        | חזרה לתחילת העמוד |       | 
       
       
        |  | 
        | אוריה משתמש חבר
 
  
  
 הצטרף / הצטרפה: 29 January 2010
 מדינה: Israel
 משתמש: מנותק/ת
 הודעות: 230
 | 
          נפתרה הבעיה.
           | | נשלח בתאריך: 17 June 2010 בשעה 14:55 | | IP רשוּם | 
 |   |  
           | 
 |  הקוד בבלוג שלי עם עוד תוספות בהמשך, או כאן:
 
 
| קוד: 
 
    
    | 
      
       | TcpClient irc = new TcpClient();
 irc.Connect("server", 6667);
 NetworkStream stream = irc.GetStream();
 StreamReader sr = new StreamReader(stream);
 StreamWriter sw = new StreamWriter(stream);
 sw.WriteLine("USER bot 0 *:real_name");
 sw.Flush();
 sw.WriteLine("NICK bot");
 sw.Flush();
 bool mode = false, join = false;
 while (irc.Connected)
 {
 string s = sr.ReadLine();
 string[] ar = s.Split(" :")
 if (ar[0] == "PING")
 {
 sw.WriteLine("PONG :" ar[1]);
 sw.Flush();
 }
 else if (s.Contains("MODE"))
 mode = true;
 else if (mode)
 {
 sw.WriteLine("JOIN #chanel");
 sw.Flush();
 join = true;
 }
 else if(join)
 {
 //Do Something...
 }
 }
 
 |  |  |  
 
 __________________
 SmartProgramming
 נא לא להגיב בשבת על מה שאני כותב
 
 עדיף להשקיע עוד שעה בתיעוד, מלאבד עוד 100 שעות ויותר על שיחזר של כל הפרוייקט מההתחלה..
 | 
       
        | חזרה לתחילת העמוד |       | 
       
       
        |  | 
        | ניר אורח
 
  
 
 הצטרף / הצטרפה: 01 October 2003
 משתמש: אונליין
 הודעות: 12647
 | 
          מה היתה הבעיה?
           | | נשלח בתאריך: 17 June 2010 בשעה 16:17 | | IP רשוּם | 
 |   |  
           | 
 |  | 
       
        | חזרה לתחילת העמוד |       | 
       
       
        |  | 
        | אוריה משתמש חבר
 
  
  
 הצטרף / הצטרפה: 29 January 2010
 מדינה: Israel
 משתמש: מנותק/ת
 הודעות: 230
 | 
          הבעיה הייתה שזה לא עבד...
           | | נשלח בתאריך: 17 June 2010 בשעה 16:34 | | IP רשוּם | 
 |   |  
           | 
 |  בגלל שלא חיכיתי ל-mode (זה שונה בכל מיני שרתי IRC, לא מחבבים כל כך בוטים שכונתיים כמו Doby).
 אממ, עוד רעיונות:
 -פקודת היוזר שלי לא הייתה טובה
 -מחשבים נוטים להרוס כל רעיון מצליח (בתיאוריה)
 
 
 __________________
 SmartProgramming
 נא לא להגיב בשבת על מה שאני כותב
 
 עדיף להשקיע עוד שעה בתיעוד, מלאבד עוד 100 שעות ויותר על שיחזר של כל הפרוייקט מההתחלה..
 | 
       
        | חזרה לתחילת העמוד |       | 
       
       
        |  |