public void Log(string message, Tik4Net.Objects.LogLevel level) { Dictionary <string, string> parameters = new Dictionary <string, string>() { { "=message", message } }; string command = "/log/" + ApiConnectorHelper.LogLevelToCommandSufix(level); ExecuteNonQuery(command, parameters); }
private void WriteCommand(string command) { LogDebug(command); string[] lines = command.Split('\n'); foreach (string line in lines) { byte[] bytes = Encoding.ASCII.GetBytes(line.ToCharArray()); byte[] length = ApiConnectorHelper.EncodeLength(bytes.Length); connectionStream.Write(length, 0, length.Length); connectionStream.Write(bytes, 0, bytes.Length); } connectionStream.WriteByte(0); //final byte }
public void Open(string host, int port, string user, string password) { if (loggedOn) { throw new TikConnectorException("Already logged in"); } //open connection connection = new TcpClient(); connection.Connect(host, port); connectionStream = connection.GetStream(); //logon string responseHash = ExecuteScalar("/login", null); //ExecuteAndReadResponse("/login", null, logonResponseRegex); string hashedPass = ApiConnectorHelper.EncodePassword(password, responseHash); ExecuteNonQuery("/login", new Dictionary <string, string> { { "=name", user }, { "=response", "00" + hashedPass } }); loggedOn = true; }