private void MainForm_Load(object sender, EventArgs e) { this.LoadFormState(); Logger.AddTab(); var tb = this.tbConsole; Logger.WriterSupportTabs = new Action <string, string>((String ln, String tab) => { MainForm.ThreadSafeTextBoxWrite(tb, ln, tab); }); Logger.WriteLine("Loading access token from: " + Path.Combine(TextSettings.Folder, fileName)); this.tbPushBullet.Text = TextSettings.Read(fileName) ?? ""; this.ActiveControl = this.label1; // Prevents textbox text from starting highlighted this.bStartPushbullet_Click(sender, e); #if !DEBUG this.bTest.RemoveFromParent(); this.bTest = null; #endif }
public void HandleResponseMainThread(WebSocketResponse response) { switch (response.Type) { // Heartbeat case "nop": Logger.WriteLine("PushBullet Heartbeat"); if (!this.hasHiddenOnStartup) { this.hasHiddenOnStartup = true; this.Hide(); Logger.WriteLine("Saving access token to: " + Path.Combine(TextSettings.Folder, fileName)); TextSettings.Save(fileName, this.Client.AccessToken); } break; case "tickle": PushResponseFilter filter = new PushResponseFilter() { Active = true, ModifiedDate = lastChecked }; var pushes = Client.GetPushes(filter); foreach (var push in pushes.Pushes) { if ((push.Created - lastChecked).TotalDays > 0) { lastChecked = push.Created; using (Logger.Time("Processing Request")) { for (int i = 0; i < 3; i++) // 3 attempts. { using (Logger.Time("Attempt " + i)) { try { this._RequestHandler.NewNotification(push.Title, push.Body); break; } catch (Exception exc) { Logger.WriteException(this, "FindBestMatchAndPlay", exc); System.Threading.Thread.Sleep(500); // Give itunes a breath. } } } } } else { Logger.WriteLine("Ignoring Old PushBullet: " + push.Title); } } break; case "push": Logger.WriteLine(string.Format("New push recieved on {0}.", DateTime.Now)); Logger.WriteLine("Push Type: " + response.Push.Type); Logger.WriteLine("Response SubType: " + response.Subtype); break; default: Logger.WriteLine("PushBullet type not supported!"); break; } }