private void Gsm_Button_SendTestSms_Click(object sender, RoutedEventArgs e) { ulong phone = HelperClass.ConvertStringToPhonenumber(Gsm_TextBox_TestSmsNumber_Reciever.Text); string content = Gsm_TextBox_TestSmsText.Text; const string ctrlz = "\u001a"; if (phone == 0) { MessageBox.Show("Die Telefonnummer >" + Gsm_TextBox_TestSmsNumber_Reciever.Text + "< ist ungültig!", "MelBox2", MessageBoxButton.OK, MessageBoxImage.Exclamation); return; } if (content.Length < 5) { MessageBox.Show("SMS-Nachrichten müssen mindestens 5 Zeichen enthalten!", "MelBox2", MessageBoxButton.OK, MessageBoxImage.Exclamation); return; } //PortComandExe("AT+CMGF=1"); //System.Threading.Thread.Sleep(500); ////FUNKTIONIERT! //PortComandExe("AT+CMGS=\"+" + phone + "\"\r"); //System.Threading.Thread.Sleep(1000); //PortComandExe(content + ctrlz); GsmCommandQueue.Add("AT+CMGF=1"); GsmCommandQueue.Add("AT+CMGS=\"+" + phone + "\"\r"); GsmCommandQueue.Add(content + ctrlz); }
private void Gas_Button_RedirectVoiceCallsOn_Click(object sender, RoutedEventArgs e) { ulong phone = HelperClass.ConvertStringToPhonenumber(Gsm_TextBox_TestSmsNumber_Reciever.Text); int[] secondsToForward = { 5, 10, 15, 20, 25, 30 }; if (phone == 0) { MessageBox.Show("Die Telefonnummer >" + Gsm_TextBox_TestSmsNumber_Reciever.Text + "< ist ungültig!", "MelBox2", MessageBoxButton.OK, MessageBoxImage.Exclamation); return; } else { MessageBoxResult r = MessageBox.Show("Sprachanrufe umleiten an Telefonnummer +" + phone + "?", "MelBox2", MessageBoxButton.YesNo, MessageBoxImage.Question); if (r == MessageBoxResult.Yes) { GsmCommandQueue.Add("ATD**61*+" + phone + "**" + secondsToForward[1] + "#;"); //PortComandExe("ATD**61*+" + phone + "**" + secondsToForward[1] + "#;"); } } }
private void Gsm_Button_StartVoicCall_Click(object sender, RoutedEventArgs e) { ulong phone = HelperClass.ConvertStringToPhonenumber(Gsm_TextBox_TestSmsNumber_Reciever.Text); if (phone == 0) { MessageBox.Show("Die Telefonnummer >" + Gsm_TextBox_TestSmsNumber_Reciever.Text + "< ist ungültig!", "MelBox2", MessageBoxButton.OK, MessageBoxImage.Exclamation); return; } else { MessageBoxResult r = MessageBox.Show("Telefonnummer +" + phone + " anrufen?", "MelBox2", MessageBoxButton.YesNo, MessageBoxImage.Question); if (r == MessageBoxResult.Yes) { PortComandExe("ATD+" + phone + ";"); } System.Threading.Thread.Sleep(10000); //Auflegen PortComandExe("AT+CHUP"); } }
/// <summary> /// Liest einen Kontakt aus der DB anhand von einzelnen Identifaktoren. Erzeugt einen neuen Kontakt ind er DB wenn kein passender Kontakt gefunden wird. /// </summary> /// <param name="contactId"></param> /// <param name="name"></param> /// <param name="email"></param> /// <param name="phoneStr"></param> /// <param name="keyWord"></param> /// <returns></returns> internal Contact GetContactFromDb(uint contactId = 0, string name = "", string email = "", string phoneStr = "", string keyWord = "", string messageContent = "") { const string query = "SELECT Name, CompanyId, Email, Phone, KeyWord, SendWay " + "FROM Contact " + "WHERE ID = @Id " + "OR ( length(Name) > 3 AND Name = @name ) " + "OR ( Phone > 0 AND Phone = @phone ) " + "OR ( length(KeyWord) > 2 AND KeyWord = @keyWord ) " + "OR ( length(Email) > 5 AND Email = @email )"; ulong phone = HelperClass.ConvertStringToPhonenumber(phoneStr); var args = new Dictionary <string, object> { { "@Id", contactId }, { "@name", name }, { "@phone", phone }, { "@email", email }, { "@keyWord", keyWord } }; DataTable result = ExecuteRead(query, args); if (result.Rows.Count == 0) { if (name.Length < 3) { name = Contacts.UnknownName; } if (!HelperClass.IsValidEmailAddress(email)) { email = null; } if (keyWord.Length < 3 && messageContent.Length > 3) { keyWord = HelperClass.GetKeyWords(messageContent); } contactId = CreateContact(name, email, phone, keyWord); result = ExecuteRead(query, args); } ; if (result.Rows.Count == 0) { MainWindow.Log(MainWindow.Topic.Contacts, MainWindow.Prio.Fehler, 2004061544, "Ein Kontakt konte weder gefunden noch erstellt weerden."); return(null); } Contact contact = new Contact { Id = contactId, Name = result.Rows[0][0].ToString(), CompanyId = uint.Parse(result.Rows[0][1].ToString()), Email = new System.Net.Mail.MailAddress(result.Rows[0][2].ToString(), result.Rows[0][0].ToString()), PhoneString = result.Rows[0][3].ToString(), KeyWord = result.Rows[0][4].ToString(), ContactType = (MessageType)ushort.Parse(result.Rows[0][5].ToString()) }; return(contact); }