При запуске исполняемый файл GSM_SMS.exe считывает номер COM-порта модема из файла option.ini. Этот номер нужно туда записать самостоятельно, посмотрев в списке оборудования COM-порт вашего модема. Затем программа считывает файл sms.txt, в котором хранится номер телефона и текст сообщения. Формат файла: #79121234567;Текст сообщения. Пока не работает с текстом сообщения больше 60 символов, работаю над этой проблемой. После отправки сообщения программа сразу закрывается. Мы увидим только окошко «Отправка сообщения» на доли секунды. Таким образом в 1С нам нужно просто сформировать текстовый файл sms.txt, описанного выше формата (Файл.Записать(«C:sms.txt»,КодировкаТекста.ANSI) необходимо прописать кодировку ANSI, т.к. по умолчанию 1С сохраняет в кодировке UTF-8) и запустить файл GSM_SMS.exe на выполнение (ЗапуститьПриложение(«C:GSM_SMS.exe»)). Файлы option.ini и sms.txt размещайте в одном каталоге с файлом GSM_SMS.exe.
Встречал на этом сайте несколько платных вариантов SMS-рассылки из 1С, решил сделать попроще, но бесплатную:)
Поднимаем сервис на smsd (работает под windows), подключаем модем и расшариваем папку по сети.
Любое ПО пишет в файл в эту папку в формате
телефон
текст…
и смс-ка уходит. Просто и бесплатно)
Служба постоянно висит и мониторит эту папку на наличие нового текстового файла?
(1) Dimasik2007, прямо таки бесплатно? И за модем платить не надо?
(3) DenisCh, стоимость смс в любом случае зависит от выбранного тарифа, как будто бы ты ее с телефона отправил
нужен тарифный план с дешевыми смс
(1) Dimasik2007, вот бы кто подробную статью про этот способ написал… 😉
Чем отличается от других подобных разработок?
Присоединяюсь к предыдущему комментарию. В чем преимущество над любой другой подобной обработкой ?
(7) CagoBHuK, (8) eugen91, какой другой ? не нашел тут другой бесплатной написал
добрый день, попытался воспользоватся вашей обработкой из 1С при отправке пишет что файл не найден и висит окно причем с портом 16 а в ини файле я прописал другой, а если просто запустить этот файлик то смски уходят
(11) dk666dk, по умолчанию стоит Com-порт 16. Если у вашего модема другой Com-порт, то его номер надо прописать в option.ini. Вот код:
assignfile(f1,’option.ini’);
reset(f1);
readln(f1,stroka1);
seCom.Value:=StrToInt(stroka1);
(11) dk666dk, а тут он считывает файл sms.txt должен лежать там же где и GSM_SMS.exe
assignfile(f,’sms.txt’);
reset(f);
while not eof(f) do
begin
readln(f,stroka);
nomer:=Pos(‘#’,stroka);
stroka:=Copy(stroka,nomer+1,length(stroka));
nomer:=Pos(‘;’,stroka);
str_nomer:=Copy(stroka,1,nomer-1);
str_message:=Copy(stroka,nomer+1,length(stroka));
// ShowMessage(str_message);
end;
LabeledEdit2.Enabled := False;
LabeledEdit2.Text := »;
LabeledEdit1.Text := str_nomer;
Memo1.Text := str_message;
//ShowModal;
Result.Number := LabeledEdit1.Text;
Result.Text := Memo1.Text;
ну я закинул все файлы в одном месте и порт прописал, а проблема именно когда из 1С вызываешь этот GSM_SMS.exe а если просто его запускаешь он все нормально отправляет.
(14) dk666dk, может у тебя семерка, контроль учетных записей какой нить стоит
(14) dk666dk, а лучше назначь своему модему 16 com порт
(14) dk666dk, просто там из 1с-ки все прямо на диск С записывается и все файлы должны быть прямо в корне диска С. Может прав нету туда записывать из 1с.
права есть т.к. файл с смсками сздается без проблем, вот такая ерунда выходит при запуске (в файле)
ну это ж не моя обработка. у меня на управляемых формах. Может ты сначала запускаешь программу а потом уже файл записываешь? т.к пишет что файл не найден
взял вашу да чуть переделал в обычную форму и код подправил:
Файл=Новый ТекстовыйДокумент;
Если Рез.Количество()<>0 Тогда
Для каждого стр из рез Цикл
Если СтрДлина(СокрЛП(стр.Представление))<>11 Тогда
Сообщить(«У клиента «+Строка(стр.клиент)+» неверный номер телефон»);
Иначе
Файл.ВставитьСтроку(1,»#»+Строка(стр.Представление)+»;»+текстсообщения);
Файл.Записать(«C: empsms.txt»,КодировкаТекста.ANSI);
Файл = неопределено;
КонецЕсли;
КонецЦикла;
КонецЕсли;
ЗапуститьПриложение(«C: empGSM_SMS.exe»);
пробовал на прямую на диск С писать и в каталоге, права на каталог раздал всеравно тоже самое
(19) пробовал чисто вашу из управляемой формы тоже самое
option.ini еще закинь в C: emp
могу еще исходники этой программы на delphi выложить если надо.
(23) скиньте если не сложно на почту dk666dk@gmail.com
(24) dk666dk, отправил
(25) что то нет письма
еще раз отправил если не дойдет другой адрес напиши не gmail.
This is the mail system at host yandex.ru.
I’m sorry to have to inform you that your message could not
be delivered to one or more recipients. It’s attached below.
Please, do not reply to this message.
<dk666dk@gmail.com>: host gmail-smtp-in.l.google.com[2a00:1450:4010:c04::1a]
http://support.google.com/mail/bin/answer.py?answer=6590 to 552 5.7.0
said: 552-5.7.0 Our system detected an illegal attachment on your message.
Please 552-5.7.0 visit
review our attachment guidelines. oq7si7403823lab.72 — gsmtp (in reply to
end of DATA command)
(28) все я получил ..спс погляжу на досуге 🙂
Добрый день, а есть ли возможность управлять голосовым звонком с GSM модема ? например получать из модема и отправлять в сип и наоборот?
насколько я понимаю голос с пк успешно передается из 1с в сип протокол , а можем ли мы получить этот голос из модема ?