private void ConsoleForm_Load(object sender, EventArgs e) { Server = new SmartHomeServer(IPAddress.Any, 3000); Server.Start((command) => { Invoke(new Action(() => { tbConsole.AppendText(command); })); }); }
static void Main(string[] args) { SmartHomeServer server = new SmartHomeServer(IPAddress.Any, 3000); server.Start((command) => { Console.WriteLine(command); Console.WriteLine(); }); }
public MainForm() { InitializeComponent(); Server = new SmartHomeServer(IPAddress.Any, 3000); Server.Start((command) => { MessageBox.Show(command); }); }
public MainForm() { InitializeComponent(); Server = new SmartHomeServer(IPAddress.Any, 3000); Server.Start((connected, disconnected) => { using (SQLiteConnection conn = new SQLiteConnection("data source=SmartHomeDB.db3")) { conn.Open(); foreach (Host host in connected) { SQLiteCommand cmd = new SQLiteCommand(conn); cmd.CommandText = "SELECT Modules.Path as Path, Modules.Args as Args FROM Devices INNER JOIN Actions ON Devices.DeviceName = Actions.DeviceName INNER JOIN Modules ON Actions.Command = Modules.Command WHERE Devices.MacAddress = @mac AND Action = @action"; cmd.Parameters.AddWithValue("@mac", host.MAC); cmd.Parameters.AddWithValue("@action", "Enter"); var reader = cmd.ExecuteReader(); if (reader.HasRows) { reader.Read(); process(reader.GetString(reader.GetOrdinal("Path")), reader.GetString(reader.GetOrdinal("Args"))); } } foreach (Host host in disconnected) { SQLiteCommand cmd = new SQLiteCommand(conn); cmd.CommandText = "SELECT Modules.Path as Path, Modules.Args as Args FROM Devices INNER JOIN Actions ON Devices.DeviceName = Actions.DeviceName INNER JOIN Modules ON Actions.Command = Modules.Command WHERE Devices.MacAddress = @mac AND Action = @action"; cmd.Parameters.AddWithValue("@mac", host.MAC); cmd.Parameters.AddWithValue("@action", "Exit"); var reader = cmd.ExecuteReader(); if (reader.HasRows) { reader.Read(); process(reader.GetString(reader.GetOrdinal("Path")), reader.GetString(reader.GetOrdinal("Args"))); } } } }); }