Revision: 39582
Updated Code
at January 18, 2011 19:47 by Affix
Updated Code
/* Basic IRC Client This sketch connects to an IRC Server and Idles in a specified Channel Circuit: * Ethernet shield attached to pins 10, 11, 12, 13 Credits : * Arduino Web Client by David A. Mellis created 18 Jan 2011 by Keiran "Affix" Smith <[email protected]> */ #include <SPI.h> #include <Ethernet.h> // Enter a MAC address and IP address for your controller below. // The IP address will be dependent on your local network: byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; byte ip[] = { 192,168,1,28 }; byte server[] = { 38,229,70,20 }; // Freenode int port = 6667; String chan = "#arduino"; String nick = "arduBot"; String join = "JOIN "; String nickcmd = "NICK "; String user = "USER "; String pong = "PONG "; Client client(server, port); void setup() { Ethernet.begin(mac, ip); Serial.begin(9600); delay(1000); Serial.println("connecting to IRC Server..."); if (client.connect()) { Serial.println("connected"); client.println(nickcmd.concat(nick)); client.println(user.concat(nick)); client.println(); } else { Serial.println("connection failed"); } } void loop() { if (client.available()) { client.println(join.concat(chan)); while(true) { String data; data = client.read(); if(data.startsWith("PING")) { client.println(pong.concat(data.substring(5))); } } } if (!client.connected()) { Serial.println(); Serial.println("disconnecting."); client.stop(); for(;;) ; } }
Revision: 39581
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at January 18, 2011 19:41 by Affix
Initial Code
/* Basic IRC Client This sketch connects to an IRC Server and Idles in a specified Channel Circuit: * Ethernet shield attached to pins 10, 11, 12, 13 created 18 Jan 2011 by Keiran "Affix" Smith <[email protected]> */ #include <SPI.h> #include <Ethernet.h> // Enter a MAC address and IP address for your controller below. // The IP address will be dependent on your local network: byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; byte ip[] = { 192,168,1,28 }; byte server[] = { 38,229,70,20 }; // Freenode int port = 6667; String chan = "#arduino"; String nick = "arduBot"; String join = "JOIN "; String nickcmd = "NICK "; String user = "USER "; String pong = "PONG "; Client client(server, port); void setup() { Ethernet.begin(mac, ip); Serial.begin(9600); delay(1000); Serial.println("connecting to IRC Server..."); if (client.connect()) { Serial.println("connected"); client.println(nickcmd.concat(nick)); client.println(user.concat(nick)); client.println(); } else { Serial.println("connection failed"); } } void loop() { if (client.available()) { client.println(join.concat(chan)); while(true) { String data; data = client.read(); if(data.startsWith("PING")) { client.println(pong.concat(data.substring(5))); } } } if (!client.connected()) { Serial.println(); Serial.println("disconnecting."); client.stop(); for(;;) ; } }
Initial URL
http://affix.me
Initial Description
Initial Title
Arduino IRC Idler
Initial Tags
Initial Language
C++