Имя: Пароль:
1C
1С v8
Отправка SMS из 1С используя 3G модем
0 phaz
 
19.02.19
09:13
Добрый день!

Пытаюсь настроить рассылку смс через usb 3g модем, но не ничего не получается.

Собственно установил ПО с модема, после чего он определился в диспетчере устройств как Mobile Connect - Application Interface (COM6) и Mobile Connect - PC UI Interface (COM5)

Написал обработку следующего содержания:

Процедура ОтправитьСообщение()    
    //Открываем порт
    Попытка
        ЗаписьВКом  = Новый ЗаписьТекста("\\.\COM"+Строка(Объект.Порт),КодировкаТекста.ANSI);
        
        ЗаписьВКом.ЗаписатьСтроку("AT+CMGF=1"+Символы.ПС);
        ЗаписьВКом.ЗаписатьСтроку(Объект.Телефон+Символы.ПС);
        ЗаписьВКом.ЗаписатьСтроку(Объект.Текст+Символы.ПС);
        ЗаписьВКом.Закрыть();
    Исключение
        Отказ = Истина;
    КонецПопытки
    
КонецПроцедуры

Но отправка SMS не происходит, хотя запись в порт происходит без ошибок?

Может я что-то упустил?

Если кто-то делал помогите пожалуйста.

В качестве иточника использовал сл. статью: https://habr.com/ru/post/133085/
1 Йохохо
 
19.02.19
09:16
а через терминал это отрабатывает? старый бородатый терминал работы с ком портом
2 Йохохо
 
19.02.19
09:19
и где команда отправки смс
3 HawkEye
 
19.02.19
09:20
(0) в чем смысл сего действа?
4 phaz
 
19.02.19
09:21
(1) Через командную строку windows вы имете ввиду?
5 phaz
 
19.02.19
09:21
(2) Хм.. А как эта команда выглядит?
6 Йохохо
 
19.02.19
09:22
(4) нет, раньше в винде была программа терминал, погуглите, в новых ее нет но скачать и работает
(5) ат+цмгс
7 Галахад
 
гуру
19.02.19
09:24
(3) + 1. Оператор симку забанит.
8 HawkEye
 
19.02.19
09:25
(7) даже без бана, это в принципе долго и дорого....
9 phaz
 
19.02.19
09:25
(6)AT+CMGS эта? Ее нужно перед закрытием порта ставить т.е.


ЗаписьВКом  = Новый ЗаписьТекста("\\.\COM"+Строка(Объект.Порт),КодировкаТекста.ANSI);
        
ЗаписьВКом.ЗаписатьСтроку("AT+CMGF=1"+Символы.ПС);
ЗаписьВКом.ЗаписатьСтроку(Объект.Телефон+Символы.ПС);
ЗаписьВКом.ЗаписатьСтроку(Объект.Текст+Символы.ПС);
ЗаписьВКом.ЗаписатьСтроку("AT+CMGS"+Символы.ПС);
ЗаписьВКом.Закрыть();


И нужны ли символы ПС?
10 phaz
 
19.02.19
09:26
(7) Я не собираюсь спам рассылки отправлять, будет не больше 50-60 смс в день
11 Йохохо
 
19.02.19
09:27
(9) ну в статье же есть пример, не надо спешить, цмгф это текстовый режим
AT+CMGS=+79261234567 [Enter]
hello habr, this is test message [Ctrl+Z]
12 Йохохо
 
19.02.19
09:31
гипертерминал, не терминал, позволяет с модемом через АТ работать
ссылку на свалке нашел, смотрите сами откуда качать http://pc-knowledge.ru/content/hyperterminal-dlya-windows-7
13 phaz
 
19.02.19
09:37
(11) Да действительно пропустил эту строку, надо бы к акулисту записаться :(
Добавление AT+CMGS= перед номером телефона не помогло...

(12) Спасибо, скачаю и попробую по вашему совету сначала через терминал поотпровлять...
14 phaz
 
19.02.19
09:38
И кстати как в 1с [Ctrl+Z] изобразить?
15 oleg_km
 
19.02.19
09:50
(14) Символ(26) + Символы.ВК
16 Йохохо
 
19.02.19
09:50
на дельфи там WriteStr(AMsg + #$D#$A#$1A), т.е. пс + символ 26
17 Йохохо
 
19.02.19
09:51
и перед ат+цмгф влепите ATZ
18 Garykom
 
гуру
19.02.19
09:52
(0) Модем какой?
Если Huawei с прошивкой HiLink то там все проще
http://catalog.mista.ru/public/940236/
19 Garykom
 
гуру
19.02.19
09:54
(18) Причем модем может быть воткнут в правильно настроенный подходящий роутер и использоваться штатно для инета (у меня для резервного инета)
20 NorthWind
 
19.02.19
10:00
(6) можно скачать вполне себе свежий и жизнеспособный бесплатный putty.
21 NorthWind
 
19.02.19
10:01
+ помимо того что он умеет в терминал, там еще есть ssh-клиент, telnet-клиент и масса других вещей, полезных доброму ИТ-шнику и отсутствующих в базовых виндах...
22 repin_mike
 
19.02.19
10:04
COMПорт = "\\.\Com3";
ЗаписьТекста = Новый ЗаписьТекста(COMПорт, КодировкаТекста.ANSI);
ЗаписьТекста.ЗаписатьСтроку("AT+CMGF=1");
ЗаписьТекста.ЗаписатьСтроку("AT+CMGS=""+7"+ПолеВвода1+"""");
ЗаписьТекста.ЗаписатьСтроку("" + ПолеВвода2 + Символ(26));
ЗаписьТекста.Закрыть();


У меня так работает.
Текст, естественно, только латиница.
23 phaz
 
19.02.19
10:33
(22) Спасибо огромное, попробую.

(17)А что такое ATZ?

(20) Спасибо попробую...
24 Йохохо
 
19.02.19
10:44
(23) софт ресет типа
25 phaz
 
19.02.19
10:52
(24) Ясно спасибо
26 LienXo
 
19.02.19
11:40
(0) не проще использовать сервис от МТС/Пчелайн по отправке смс-ок? Там и рассылки разрешены и API расписано?
27 trdm
 
19.02.19
12:15
(26) зачем тратить больше?
28 trdm
 
19.02.19
12:20
использую: https://sms.ru смс-сю скриптом.
мониторю состояние ИБ: сколько памяти сервак закушал, есть ли юзеры в БД, размер лога журнала регистрации.
29 phaz
 
19.02.19
16:56
(28) Спасибо ознакомлюсь!
30 phaz
 
20.02.19
11:21
Сегодня попробовал разные варианты в итоге через Hyper Terminal при вводе команды AT+CMGS=+79261234567 [Enter] получаю ошибку +CMS ERROR: 302 - Operation not allowed я так понимаю, что это модем запрещает? Может его надо в какой-то режим перевести?
31 Garykom
 
гуру
20.02.19
11:53
(30) В последние прошивки модемов встраивают некую "защиту" от вирусов/троянов которые СМС на платные номера рассылают.

И назови уже марку/модель модема то
32 phaz
 
20.02.19
12:23
(31) Huawei E171 оператора МТС, но он древний где-то 15-16 годов
33 phaz
 
20.02.19
12:24
(31) Может ли оператор запретить отправку SMS с помощью команд AT для определенных номеров?
34 Garykom
 
гуру
20.02.19
12:26
(32) Прошивку попробуй сменить https://4pda.ru/forum/index.php?showtopic=290866 в т.ч. "Как переделать Huawei E171 в Huawei E173"
35 Garykom
 
гуру
20.02.19
12:27
(33) В прошивке может быть что угодно запрещено и на симке тоже.
36 phaz
 
20.02.19
12:32
(35) На сколько мне известно этот модем ранее уже использовался для отправки сообщений таким образом, значит вероятней всего дело в симке, а не в прошивке

(34) Этот топик я смотрел, не уверен что требуется смена прошивки, оставлю этот вариант на крайний случай.
37 Йохохо
 
20.02.19
12:59
(36) ввод пина отключил?
38 phaz
 
20.02.19
13:03
(37) В коннекте галка запрашивать пин-код при подключении модема снята
39 phaz
 
20.02.19
13:04
(37) Телефон при включении пин тоже не требует
40 Йохохо
 
20.02.19
13:07
(39) на всякий случай подключи в телефон и отруби запрос пин кода надежно еще раз, проверь баланс тариф, всю фигню. и ответы терминала укажи
atz
ok
at+cmgf=1
ok
AT+CMGS=+79261234567 (тут можно с восьмеркой побаловаться)
...
41 Йохохо
 
20.02.19
13:10
вот это все можно потыкать https://doc.qt.io/archives/qtextended4.4/atcommands.html, просто позвонить и т.д. сервисную проверить. будет смешно и обидно если тупо заблокированы смс или по префиксу зарезаны
42 phaz
 
20.02.19
14:07
(41) Насчет блокировки отправки SMS сейчас выясняю
43 repin_mike
 
20.02.19
14:32
(3) Кавычки забыл, дядя
AT+CMGS="+79261234567" [Enter]

Я для кого писал в (22)?
44 phaz
 
20.02.19
15:10
(43) ТОЧНО!!!!!!!!!!!!!!!! СПАСИБО!!!!!! УСПЕХ дело действительно в кавычках, теперь осталось в 1с перенести
45 Nyoko
 
20.02.19
15:11
Если есть веб интерфейс, попробуй через http запрос
46 Nyoko
 
20.02.19
15:12
(44) прикольно, не знал что можно так в ком писать текст..
47 phaz
 
20.02.19
15:38
И еще один момент. Во всех гайдах по этому вопросу пишут, что номер порта нужно смотреть в диспетчере устройств в разделе Порты COM и LPT напротив строки Mobile Connect - PC UI Interface, но в моем случае это было не так, понять какой номер порта я смог случайно используя программу HyperTerminal в строке Connect using: там среди тех портов что были в диспетчере задач был еще один он и оказался рабочим...