using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using TradeIdeas.TIQData; namespace TradeIdeas.TIQ.GUI { public partial class FakeTraditionalAlerts : Form { private readonly ConnectionMaster _connectionMaster; public FakeTraditionalAlerts() { _connectionMaster = GUI.Environment.DefaultConnectionMaster; InitializeComponent(); timer1.Stop(); } private void sendButton_Click(object sender, EventArgs e) { timer1.Start(); } private void FakeTraditionalAlerts_FormClosing(object sender, FormClosingEventArgs e) { Hide(); e.Cancel = true; } private void timer1_Tick(object sender, EventArgs e) { string symbol = GetRandomString(4); double tens = GetRandomNumber(95); double fraction = GetRandomNumber(99); string price = (tens + fraction / 100).ToString(); string date = DateTime.Now.ToString("HH:mm:sszzz yyyy-MM-dd"); string finalString = "time=" + date + "&symbol=" + symbol + "&price=" + price; _connectionMaster.TraditionalAlertsManager.SendMessage(categoryTextBox.Text, finalString); } public string GetRandomString(int length) { //code from http://blog.codeeffects.com/Article/Generate-Random-Numbers-And-Strings-C-Sharp string[] array = new string[26] { "A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z" }; System.Text.StringBuilder sb = new System.Text.StringBuilder(); for (int i = 0; i < length; i++) sb.Append(array[GetRandomNumber(25)]); return sb.ToString(); } public int GetRandomNumber(int maxNumber) { //code from http://blog.codeeffects.com/Article/Generate-Random-Numbers-And-Strings-C-Sharp if (maxNumber < 1) throw new System.Exception("The maxNumber value should be greater than 1"); byte[] b = new byte[4]; new System.Security.Cryptography.RNGCryptoServiceProvider().GetBytes(b); int seed = (b[0] & 0x7f) << 24 | b[1] << 16 | b[2] << 8 | b[3]; System.Random r = new System.Random(seed); return r.Next(1, maxNumber); } private void btnStop_Click(object sender, EventArgs e) { timer1.Stop(); } } }