Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Отправка и получение смс сообщений через com порт. / 25 сообщений из 25, страница 1 из 1
21.03.2012, 11:25
    #37715205
bubek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Добрый день, ребята.

Сделал программку отправки sms сообщений через com порт. Использовал GSM модем SIEMENS MC35i. Не получается отправить русские смс-ки. С латиницей все ок. Можете скинуть кусок кода для возможности отправки кириллицы или объяснить что да где добавить? Заранее спасибо всем!
P.S. Ничего не смог найти сам, честно!
...
Рейтинг: 0 / 0
21.03.2012, 19:04
    #37716526
bubek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Видно тема редкая оказалась
...
Рейтинг: 0 / 0
22.03.2012, 01:32
    #37717047
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Ну, вот около меня лежит MC35i. Ну вот у меня есть симка.
Но вот нету вашей "программки для отправки СМС"... И что ответить вам?

Кстати, вы не интересовались исходниками интерфейсов платежных терминалов CyberPlat - как раз по поводу отправки ими сообщений?
...
Рейтинг: 0 / 0
22.03.2012, 08:25
    #37717152
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
bubek,

Кодировка национальных символов в SMS совсем не Win1251, даже не юникод и не ДОС. Вы используете перекодировку в нужный формат или так Win1251 и пытаетесь отправить?
...
Рейтинг: 0 / 0
22.03.2012, 11:57
    #37717535
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
гуглите UCS-2
...
Рейтинг: 0 / 0
23.03.2012, 02:02
    #37719108
bubek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
AndreTMНу, вот около меня лежит MC35i. Ну вот у меня есть симка.
Но вот нету вашей "программки для отправки СМС"... И что ответить вам?

Кстати, вы не интересовались исходниками интерфейсов платежных терминалов CyberPlat - как раз по поводу отправки ими сообщений?

Нет, не интересовался.

А вот и код (в Sub под названием Send).

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
Private Sub cmdSend_Click()
On Error Resume Next
Dim PortN As Integer
Dim sms_text As String
Dim var1, var2 As Variant
Dim cnt, per1, per2 As Integer
Dim notbuf As Boolean

    PortN = Int(cmbPort.Text)
    MSComm1.CommPort = PortN
    MSComm1.Settings = "115200,N,8,1"
    MSComm1.PortOpen = True
If MSComm1.PortOpen = True Then
    var1 = "AT+cmgf=1" & Chr(13) & Chr(10)
    MSComm1.Output = var1
    

While Not notbuf
    per1 = MSComm1.InBufferCount
    per2 = MSComm1.InBufferCount
If per1 = per2 And per1 <> 0 Then notbuf = True
Wend

var2 = MSComm1.Input
Sleep 100
notbuf = False
                       
var1 = "AT+cmgs=" & Chr(34) & Trim(txtNum) & Chr(34) & Chr(13) & Chr(10)
MSComm1.Output = var1
Sleep 100

While Not notbuf
    per1 = MSComm1.InBufferCount
    per2 = MSComm1.InBufferCount
If per1 = per2 And per1 <> 0 Then notbuf = True
Wend

var2 = MSComm1.Input
Sleep 100
notbuf = False

var1 = txtSMStext & Chr(13) & Chr(10) & Chr(26) & Chr(13) & Chr(10)
MSComm1.Output = var1
Sleep 100

While Not notbuf
    per1 = MSComm1.InBufferCount
    per2 = MSComm1.InBufferCount
If per1 = per2 And per1 <> 0 Then notbuf = True
Wend

var2 = MSComm1.Input
MSComm1.PortOpen = False
Sleep 100
   
    MsgBox "Your message has been sent!"
    Else
    MsgBox "Port opening error!", vbInformation, "Port opening"
    End If
End Sub

Спасибо!!!
...
Рейтинг: 0 / 0
23.03.2012, 02:06
    #37719113
bubek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Shocker.Probubek,

Кодировка национальных символов в SMS совсем не Win1251, даже не юникод и не ДОС. Вы используете перекодировку в нужный формат или так Win1251 и пытаетесь отправить?

Я пока "чайник" в темах по GSM и поэтому не совсем уверен, что делал. Могу сказать точно, что перевожу модем в текстовый режим перед отправкой смс. У меня 2 проблемы на данном этапе.

1. Не отправляется кириллица.
2. Не отправляется длинная смс, даже в латинице.

Пока гуглю и чешу репу ))) За любое содействие, благодарен!
...
Рейтинг: 0 / 0
23.03.2012, 10:29
    #37719499
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
1) проблема с кодировкой
2) длина одной СМС ограничена (телефон длинные СМС-ки разбивает сам на несколько, а телефон на другой стороне их склеивает).

Курите документацию
...
Рейтинг: 0 / 0
23.03.2012, 20:17
    #37720757
bubek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Может кто помочь с пунктом №1?
...
Рейтинг: 0 / 0
24.03.2012, 16:27
    #37721386
bubek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
А как заставить модем понять, что ты ему отдаешь русские символы, а не латынь?
...
Рейтинг: 0 / 0
24.03.2012, 22:22
    #37721574
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
bubekА как заставить модем понять, что ты ему отдаешь русские символы, а не латынь?Блин, ну почитай по теме 12293850
...
Рейтинг: 0 / 0
25.03.2012, 15:12
    #37721916
bubek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Konst_Oneгуглите UCS-2

Привет. По UCS-2 нашел все что нужно. Можете дать псевдокод моих действий? С чего начать и на чем закончить?
Я представляю Вашу подсказку так, но не уверен:

1. Перевести модем в какой то режим Х
2. Программно получить номер получателя СМС и текст СМС.
3. Перекодировать номер и текст в формат UCS-2
4. Итд. итп....

Спасибо.
...
Рейтинг: 0 / 0
26.03.2012, 11:49
    #37722848
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
номер переводировать не надо
...
Рейтинг: 0 / 0
26.03.2012, 11:51
    #37722856
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
...
Рейтинг: 0 / 0
29.03.2012, 21:59
    #37730442
Дмитрий77
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
bubekНе получается отправить русские смс-ки.
На тебе мой древний проект от 2002г. целиком, для S25 все работало, включая русские SMS.
Если SIEMENS MC35i, то оно мож и запустится с ходу, я пытался переделать под другой сименс, но потом мне это надоело.
Теорию, которую использовал тоже приложил.
Чего то явно лишнее из папки выкинул, там было на 5МБ мусора.

прога для S25
...
Рейтинг: 0 / 0
28.04.2012, 18:51
    #37776335
bubek
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Вопрос решен, правда собрал куски кодов в Delphi, так что если кому надо будет, пишите. Всем участникам спасибо!
...
Рейтинг: 0 / 0
09.11.2012, 17:30
    #38032206
Леонов Юрий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
bubek,

у меня такой вопрос, а не было ли случая что СМС ты отправил, а абоненту она не пришла или пришла, но нечитабельная?
...
Рейтинг: 0 / 0
12.11.2012, 08:48
    #38034064
kiv-1980
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Нашел исходники на дельфи, переписал под себя, месяц отправлял смс-ки, через интернет-флешку, в общем в итоге, я на это дело плюнул... 1. Программа достаточно капризна. 2. Часто пропадал коннект. 3. Без конца требовалось проверять баланс. 4. Все это отнимало невероятно много времени.
Нашел интернет-шлюз для смс, там прилагались апи, переписал для себя, вытаскиваю данные из бд и мгновенно отправляю по десяткам мобилам, работает уже полгода, нареканий ноль. И Вам того же советую.
...
Рейтинг: 0 / 0
12.11.2012, 10:57
    #38034199
скукотища
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
> kiv-1980,
> Нашел интернет-шлюз для смс...

Адресочком с сообществом поделитесь ?
...
Рейтинг: 0 / 0
12.11.2012, 12:08
    #38034323
Андрей159
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Три года назад в ту сторону смотреть не мог. Поначалу что-то не получилось и забросил. А теперь ничего там сложного не вижу. Есть документация по PDU. Проделал модуль для конвертации туда и обратно, были поначалу ошибки. Два дня и готово. Модем работает как отдельное устройство. Ваша ошибка в том что вы делаете паузы методом "pause 2000", а там нужно только проверять статусы модема и снимать информацию с ком порта. В одном таймере делаете алгоритм с пошаговыми инструкциями. Все работает абсолютно надежно. Я так смс-билдинг сделал (прием смс и оповещение абонентов которые сделали передоплату). Два раза что-то зависло по непонятной причине на протяжении месяца, выправил баг методом автоперезапуска ком порта (невидимая форма делает unload и через секунду load). Единственное что у меня пока не получилось - принимать и передавать VOICE сигнал с модема в модем (не поддерживает, нужен нормальный телефон). Я б тогда эксперементировал с тональными сигналами для интерактивного голосового меню.
...
Рейтинг: 0 / 0
12.11.2012, 14:02
    #38034616
Дмитрий77
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Немного в теме, поэтому пару слов скажу:
скукотища> kiv-1980,
> Нашел интернет-шлюз для смс...
Адресочком с сообществом поделитесь ?
Шлюзов таких в IP-телефонии много, сомневаюсь что есть единый стандарт.
Можно например смотреть в сторону Betamax/Dellmont, например:
http://www.voipbuster.com/sms/instructions
Using HTML SMSlink
You can also send text messages (SMS) without using our software or accessing the website. Use the following link and fill in the desired data:

https://www.voipbuster.com/myaccount/sendsms.php?username=xxxxxxxxxx&password=xxxxxxxxxx&from=xxxxxxxxxx&to=xxxxxxxxxx&text=xxxxxxxxxx

Explanation of the variables:

username: your Voipbuster username
password: your Voipbuster password
from: your username or your verified phone number. Always use international format for the number starting with +, for instance +491701234567
to: the number you wish to send the sms to. Always use international format starting with +, for instance +491701234567
text: the message you want to send


After creating the link in a text editor you can copy it into your internet browser's address bar:
Это все работает, я проверял.
Но, мой вопрос (если кто сталкивался):
text=xxxxxxxxxx
Как в html-ссылку засунуть русский текст?

У меня ничего не вышло.

Хотя...есть программа:
http://www.jellysms.com/
И она умеет отправлять русский текст (unicode-?) через эти самые бетамаксовские шлюзы.
В подробности ее кодов не лез (кажется она OpenSorce и есть на sourceforge).

Повторю вопрос (если кто знает): как отправить русский через HTML SMSlink ? Конкретно для Betamax это нигде не документировано.
...
Рейтинг: 0 / 0
15.11.2012, 11:52
    #38039412
kiv-1980
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
Дмитрий77,

Как я уже говорил, перепробовал массу шлюзов и остановился на этом , устраивает все, отправляю все на русском, удобная статистика и хорошая тех.поддержка, цены ничем не отличаются от других.
Простая конструкция отправки через api, выдернута с сайта smspilot'a:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
s: string;
source: string;
text: string;
begin

s := 'http://www.smspilot.ru/api.php?';
s := s + 'send='    + IdHTTP1.URL.ParamsEncode(ed_send.Lines.Text);
s := s + '&to='     + IdHTTP1.URL.ParamsEncode(ed_to.Text);
s := s + '&from='   + IdHTTP1.URL.ParamsEncode(ed_from.Text);
s := s + '&apikey=' + IdHTTP1.URL.ParamsEncode(ed_apikey.Text);
s := s + '&charset=windows-1251';

ed_request.Text := s;
s := IdHTTP1.Get( s );
ed_response.Lines.Text := StringReplace(s,#13,#13#10, [rfReplaceAll]);
source := StringReplace(s,#13,#13#10, [rfReplaceAll]);


Исходники владелец прилагает. Этот вариант для делфи, думаю особого труда переписать для себя, даже вбшникам не составит.
Есть и куча другого кода, как и спец.софтина.
...
Рейтинг: 0 / 0
15.11.2012, 19:40
    #38040425
Дмитрий77
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
kiv-1980,

Да я понял. Но шлюз что вы используете суть очень частный шлюз.
Как я видимо справедливо упомянул,
Шлюзов таких в IP-телефонии много, сомневаюсь что есть единый стандарт
Т.е. если я к примеру пишу софтфон SIP, то универсальную "отправку СМС" (через произвольного провайдера) туда не добавишь.

Но: Betamax , что я упомянул, конечно не "произвольный", но их 30 клонов-"провайдеров" кот. работают абс. одинаково. Шарашкина контора, но до фига народу по всему миру этой "конторой" пользуются. Поэтому к примеру "отправка SMS через Betamax" -это интересное дополнение к софтфону, а "отправка SMS через ваш шлюз" -это все равно что ничего (не с т.зр. вашей частной задачи, а с точки зрения как сделать прогу интересней со всеми вытекающими).

Вот поэтому интересен именно Betamax. По идее все что надо, это раскурочить коды http://www.jellysms.com/
Ну, задача не первой очереди, руки пока не дошли.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
06.02.2014, 09:21
    #38551428
K0LbAzzeR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
bubekВопрос решен, правда собрал куски кодов в Delphi, так что если кому надо будет, пишите. Всем участникам спасибо!
Мне надо на Delphi, как раз пишу прогу для USB модема , пока нужны некоторые функции, но думаю это только начало.
...
Рейтинг: 0 / 0
06.02.2014, 09:22
    #38551431
K0LbAzzeR
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправка и получение смс сообщений через com порт.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Отправка и получение смс сообщений через com порт. / 25 сообщений из 25, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]