/*
dIRC - Dummy IRC Bot
Copyright (c) 2007 - 2013, Blizzardo1 and Blizzeta S&W
*/
using System;
using System.Collections.Generic;
using System.IO;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
namespace dIRC
{
class Program
{
public static StreamWriter writer = null;
public static StreamReader reader = null;
public static TcpClient client = null;
public static void Connect(string host, int port)
{
client = new TcpClient();
client.Connect(host, port);
writer = new StreamWriter(client.GetStream());
reader = new StreamReader(client.GetStream());
Nick("PowerSharp");
Sleep(25);
User("Blizzy", "Blizzy");
Sleep(100);
Join("#Blizzeta");
Sleep(50);
SendMessage("#Blizzeta", "Hi! Blizzy here from a Powershell script with C#! Allow me to idle!");
Listen();
}
public static void Listen()
{
(new Thread(new ThreadStart(delegate
{
while (client.Connected)
{
string m = string.Empty;
while ((m = reader.ReadLine()) != null)
{
Console.WriteLine(m);
Sleep(10);
}
}
}))).Start();
}
public static void Join(string Channel, string Pass = "")
{
if (string.IsNullOrEmpty(Pass))
writer.WriteLine("JOIN {0}", Channel);
else
writer.WriteLine("JOIN {0} {1}", Channel, Pass);
writer.Flush();
}
public static void SendMessage(string channel, string message)
{
writer.WriteLine("PRIVMSG {0} :{1}", channel, message);
writer.Flush();
}
public static void User(string username, string realname, int usermode = 8)
{
writer.WriteLine("USER {0} {1} * :{2}", usermode, usermode, realname);
writer.Flush();
}
public static void Sleep(int mil)
{
Thread.Sleep(mil);
}
public static void Nick(string NewNick)
{
writer.WriteLine("NICK {0}", NewNick);
writer.Flush();
}
public static void Main(string[] args)
{
Connect("irc.geekshed.net", 6667);
}
}
}
Comments
0 B
|👍
/👎