Soran
c# formda kendi telefon numaram üstünden başkalarına butonla sms atabilr miyim

Soru
-
Tüm Yanıtlar
-
-
Benim bildiğim kadarıyla sunucular yok fakat hattının online işlemler servisine giriş yaptırırsın oradan yollarsın.
bir kaç video izledim ve siteler buldum ancak yapılanların aynısını yaptım bende olmadı şu anda c# da sms uygulaması kullananlar yardım edebilir mi -
O iş öyle olsaydı toplu sms denen bir olay olmazdı, 20 tlye 10.000 sms yap bas gönder :)
Yok reis nette sms servisleri var api veriyorlar en sağlıklı o şekilde yapabilirsin.- Düzenleyen Onur İNCİ 11 Haziran 2018 Pazartesi 06:28
- Yanıt Olarak Öneren Altan Özdemir 11 Haziran 2018 Pazartesi 09:39
-
Eğer telefonunuzu bilgisayarınıza (bluetooth/kablo) bağlayıp COM port numarasını belirleyebiliyorsanız, bu kodları deneyebilirsiniz. Telefonunuzun, AT kod yapısını desteklemesi gerekir. Kodları fikir vermesi açısından paylaştım. Bunun yerine SMS hizmeti veren firmaların birinden destek almanızı öneririm...
public class SMS : SerialPort { private Thread sendThread; private Thread readThread; public static bool _Continue = false; public static bool _ContSMS = false; private bool _Wait = false; public static bool _ReadPort = false; public delegate void SendingEventHandler(bool Done); public event SendingEventHandler Sending; public delegate void DataReceivedEventHandler(string Message); public event DataReceivedEventHandler Received; public SMS(string ComPort) { PortName = ComPort; BaudRate = 9600; Parity = Parity.None; DataBits = 8; StopBits = StopBits.One; Handshake = Handshake.RequestToSend; DtrEnable = true; RtsEnable = true; NewLine = Environment.NewLine; readThread = new Thread(new ThreadStart(Sms_Read)); sendThread = new Thread(new ThreadStart(Sms_Send)); } public void Send(string CellNumber, string SmsMessage) { if (SmsMessage.Length > 160) SmsMessage = SmsMessage.Substring(0, 160); if (!IsOpen) Open(); WriteLine($"AT+CMGS={CellNumber}r"); _ContSMS = false; WriteLine(SmsMessage + Environment.NewLine + (char)(26)); _Continue = false; Sending?.Invoke(false); } private void Sms_Read() { string ReceivedText = null; byte[] RXBuffer = new byte[ReadBufferSize + 1]; while (IsOpen && BytesToRead != 0) { Read(RXBuffer, 0, ReadBufferSize); ReceivedText += System.Text.Encoding.ASCII.GetString(RXBuffer); if (ReceivedText.Contains(">") == true) { _ContSMS = true; } if (ReceivedText.Contains("+CMGS:") == true) { _Continue = true; Sending?.Invoke(true); _Wait = false; ReceivedText = string.Empty; RXBuffer = new byte[ReadBufferSize + 1]; } } Received?.Invoke(ReceivedText); ReceivedText = null; RXBuffer = null; } private void Sms_Send() { } }
Kullanımı,
try { SMS Sms = new SMS("COM3"); // Telefonunuzun bağlı olduğu port numarası... Sms.Open(); Sms.Send(textBox1.Text, textBox2.Text); Sms.Close(); } catch { MessageBox.Show("HATA: COM3 kullanılamıyor.!."); }
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
- Yanıt Olarak Öneren Egoist Developer 12 Haziran 2018 Salı 21:47
-
-