irfanansari Ответов: 2

Как отправить SMS с помощью android-смартфона с кабелем передачи данных ?


Дорогие все я уже использую код с At командой с телефоном Nokia для отправки SMS с помощью кабеля передачи данных так как теперь в день смартфон есть у всех людей то пожалуйста кто нибудь помогите мне или направьте меня как отправить SMS с помощью телефона Android

Что я уже пробовал:

public class CommSetting
{
    public static int Comm_Port=0;
    public static Int64 Comm_BaudRate=0;
    public static Int64 Comm_TimeOut=0;
    public static GsmCommMain comm;

    public CommSetting()
    {
        //
        // TODO: Add constructor logic here
        //
    }
}

GsmCommMain comm = new GsmCommMain(port, baudRate, timeout);
try
{
        comm.Open();
        while (!comm.IsConnected())
        {
            Cursor.Current = Cursors.Default;
            if (MessageBox.Show(this, "No phone connected.",
               "Connection setup", MessageBoxButtons.RetryCancel,
                 MessageBoxIcon.Exclamation) == DialogResult.Cancel)
            {
                comm.Close();
                return;
            }
            Cursor.Current = Cursors.WaitCursor;
        }

        // Close Comm port connection (Since it's just for testing
        // connection)
        comm.Close();
}
catch(Exception ex)
{
    MessageBox.Show(this, "Connection error: " + ex.Message,
    "Connection setup", MessageBoxButtons.OK, MessageBoxIcon.Warning);
    return;
}

// display message if connection is a success.
MessageBox.Show(this, "Successfully connected to the phone.",
"Connection setup", MessageBoxButtons.OK, MessageBoxIcon.Information);

private void MessageReceived()
{
    Cursor.Current = Cursors.WaitCursor;
    string storage = GetMessageStorage();
    DecodedShortMessage[] messages = CommSetting.comm.ReadMessages
                   (PhoneMessageStatus.ReceivedUnread, storage);
    foreach(DecodedShortMessage message in messages)
    {
         Output(string.Format("Message status = {0},
     Location =  {1}/{2}",
         StatusToString(message.Status),
         message.Storage, message.Index));
         ShowMessage(message.Data);
         Output("");
    }

    Output(string.Format("{0,9} messages read.",
                messages.Length.ToString()));
    Output("");
}   

2 Ответов

Рейтинг:
7

Baloch Khan

Напишите этот код в верхней части страницы


Система Импорта.ИО.Порты
Система Импорта.ИО

Во-вторых:


Напишите этот код в общедоступном классе формы:

Дим Последовательный Порт, Так Как Новая Система.ИО.Портах.Последовательный порт()
Тусклый CR как струна
В-третьих:

Создайте текстовое поле(TextmsgTextBox) для записи текстового сообщения, TextBox2(MobileNumberTextBox) для ввода номера мобильного телефона и кнопку(SendBUT) для отправки сообщения.

И запишите этот код в событие нажатия кнопки.

Если Последовательный Порт.Программа Тогда
Последовательный порт.Рядом()
Конец, Если
Последовательный порт.Название порта = Порт com4
Последовательный порт.Скорость передачи = 9600
Последовательный порт.Паритет = Равенство.Нет
Последовательный порт.StopBits = StopBits.Один
SerialPort.DataBits = 8
SerialPort.Handshake = Рукопожатие.RequestToSend
Сериальный порт.DtrEnable = True
Последовательный порт.RtsEnable = True В
SerialPort.NewLine = vbCrLf

Тусклое сообщение в виде строки
сообщение = MsgRichTextBox.Текст

Попробуй
Последовательный порт.Открыть()
Поймать ex как исключение
С помощью MsgBox("модем с портом '" &амп; последовательный порт.Имя_порта &ампер; "не подключен!!" &ампер; vbcrlf &ампер; "пожалуйста, подключите модем и попробуйте снова.")
Конец Попытки

Если Последовательный Порт.Программа() Затем
SerialPort.Write("AT" & vbCrLf)
SerialPort.Write("AT+CMGF=1" & vbCrLf)
SerialPort.Write("AT+CMGS=" & Chr(34) & phoneNumBox.Текст & Chr(34) & vbCrLf)
SerialPort.Write(message & Chr(26))
SentPicture.Видимое = Истинное
SentLabel.Видимое = Истинное
Сенттимер.Начать()
Еще
С помощью MsgBox (порт" '" &амп; последовательный порт.Имя_порта &ампер; " недоступна!")
Конец, Если


Рейтинг:
12

Rajesh Anuhya

Привет..

Как я понимаю, вы открываете компорт вашего телефонного модема. и пытается общаться. Я действительно вижу, что конфигурации Компорта неверны, потому что порт 0 buadrate 0 недействителен.

Я думаю, что вам нужно получить некоторую информацию о том, как общаться с аппаратным обеспечением comport.
Гугл[^]

Во-вторых, когда вы подключаетесь непосредственно через модем (а не телефонное программное обеспечение). вам нужно использовать модемные команды под названием AT команды[^]

Я работал над этим почти 7 лет назад, я не помнил правильно команду для отправки SMS, но я даю ниже пример, который вы можете попробовать.

AT+CMGS="919XXXXXXXXXXXX"
<SMS MEssage> 
Crtl+Z



Совет: прежде чем сделать это в окне C# code use and Terminal ,я использовал hyperterminal ( недоступный после xp, Но вы можете скачать exe из интернета). вы можете протестировать эти команды, и все будет в порядке. Затем начните кодирование на C#.

удачи
--РА


irfanansari

сэр большое спасибо за ваш ответ здесь много людей но никто не готов мне помочь
сэр на самом деле мой вопрос заключается в том, что у меня есть смартфон amazon fire или Samsung любой модели, я уже подключил его, и я могу получить доступ к своему смартфону по кабелю передачи данных, как я могу отправить sms с помощью vb.net или программное обеспечение c# я сделал очень хорошую практику на мобильных телефонах nokia keypad это показывает comport тогда я легко получаю доступ к нему, как Nokia 6680 и т. д