ОТПРАВКА СМС.
Первоначальную настройку Вы произвели, теперь пора заняться делом. А именно отправкой СМС сообщений, для чего программа и предназначена.
Напомню, что программа умеет отправлять текстовые сообщения с компьютера, через подключенный
к компьютеру сотовый телефон. Сами сообщения и адресаты содержатся в обычном текстовом файле.
Файл можно либо подготовить вручную, либо (и так обычно и делается) файл подготавливается другой программой,
которая и выдает необходимый нам файл.
Текст сообщений может быть как на русском, так и на английском (т.е. латинскими буквами). Программа умеет отправлять "длинные" или иначе говоря, склеенные СМС - по стандарту сотовой связи, максимальная длина одной СМС русскими буквами 70 символов, латинскими буквами - 160 символов. Если длина Вашего текста СМС превышает максимальную длину одной СМС, то программа автоматически разбивает текст на составляющие СМС - получатель в таком случае увидит на своем сотовом одну длинную СМС, т.е. единым текстом.
Также Вы можете задать параметр, при котором будет происходить автоматическая транслитерация (перевод) русского текста в латиницу.
Программа умеет отправлять СМС на короткие (сервисные) номера.
В процессе отправки СМС программа формирует лог-файл (не путать с техническим лог-файлом!). Имя этого файла задается в INI-файле (см. Настройка).
|
Подробнее разберем каждую строчку. Но сначала запомните такие важные моменты:
1. каждая новая строка - это новое сообщение
2. в каждой строке четыре параметра, разделенных ";"
3. формат телефонного номера обозначается кодами:
"М" - международный ;
"S" - различные "короткие" номера (СМС-голосования, сервисные номера и т.п.) ;
"A" - внутренний номер ;
"B" - национальный номер ;
"C" - номер пользователя ;
"D" - сокращенный номер.
* основной код это "М", остальные коды используются как правило в специфических случаях - обычно при работе с необычными номерами (не мобильных телефонов).
4. кодировка сообщения обозначается: "R" - отправлять на русском; "L" - отправлять латиницей (т.е. даже если Вы написали текст на русском, то программа автоматически перекодирует его и напишет latinskimi bukvami)
Теперь смотрим первую строчку - сперва идет номер телефона адресата, в международном формате (без всяких "+" !!!).
В нашем примере это 79135341955,
7-код России,
913-код сети оператора, 534-подсеть
оператора. Далее, через разделитель ';' (точка с запятой) идет КОД формата телефонного номера адресата (М - значит международный формат, S - это либо "короткий" номер платных услуг, либо просто сервисный номер). Потом идет символ
обозначения какой кодировкой отправлять текст (R
- обозначает отправку русскими буквами; L - обозначает
отправку русских букв ЛАТИНИЦЕЙ), затем снова разделитель ';'
и текст сообщения. Размер сообщения не ограничен, но надо иметь ввиду, что стандартная СМС-ка имеет четкие размеры. Это 70 символов на русском или 160 символов латинскими буквами. Если Ваше сообщение "не помещается" в одну СМС-ку, то программа разбивает его на несколько составных СМС (так называемая длинная СМС), и у практически всех операторов сотовой связи каждая часть такой СМС оплачивается отдельно (впрочем тоже самое происходит и при отправке длинных СМС прямо с телефона).
Вторая строчка, точно такая же, за исключением того, что сообщение будет отправлено латиницей.
А вот третья строчка интереснее. Здесь записана отправка платного сообщения на короткий номер одного известного сайта. Сообщение стоит 1у.е. без НДС, но ради теста, я сделал несколько отправок. Все работает :) Обратите внимание, что формат телефонного номера стоит "S".
Мы практически готовы к запуску программы, но есть такое понятие как ПАРАМЕТРЫ КОМАНДНОЙ СТРОКИ.
Есть следующие параметры (они все необязательные, но должен быть задан хотя бы один) :
1. INI=ИМЯ_ФАЙЛА_НАСТРОЕК - если Вы используете другое имя файла настроек программы, отличный от имени файла, принятого по умолчанию. Например,INI=test1.ini ;
2. MSG=ИМЯ_ФАЙЛА_СООБЩЕНИЙ - если Вы используете имя файла сообщений, отличное от указанного в INI-файле. Например, MSG=primer1.txt
3. ERR=КОЛИЧЕСТВО_ПОПЫТОК_ОТПРАВКИ_СМС - иногда бывает, что СМС не отправляется с первого раза (бывают различные причины, я думаю Вы сталкивались с этим и при простой отправке СМС с сотового). И тогда требуется "работа над ошибками" :) Т.е. программа будет столько раз пытаться отправить СМС, сколько попыток Вы поставите. И либо очередная попытка будет удачной и программа перейдет к следуюшей СМС, либо исчерпав количество повторов, программа выдаст сообщение, что данную СМС отправить не удается, перейдет к отправке следующей СМС. Если этот параметр не указать , то отправка всех СМС прекратится при первой ошибке отправки. Пример: ERR=3 ;
4. MAXNULL=N, где N - количество "пустых" ответов оборудования. Это редко используемый параметр. Потребность в нем возникает обычно на блютуз-соединениях (хотя у меня лично, этот параметр еще не требовался). Его суть такая - эпизодически исчезает соединение с COM-портом при отправке СМС, то можно задать этот параметр и тогда программа попытается переинициализировать соединение. Если параметр не задан, то N=99999;
5. MAXRECO=N, где N - максимальное количество попыток подключения к COM-порту. Этот параметр был добавлен в "довесок" к предыдущему (MAXNULL), чтобы дать возможность задать количество попыток подключения - хотя может использоваться и самостоятельно. Требуется в тех случаях, когда за один раз не удается подключиться к оборудованию. Если параметр не задан, то N=0;
СТАРТ!
Надеюсь, сам файл программы, файл настроек, файл сообщений находятся в одной папке. Остается написать командную строчку для запуска программы. В моем примере это выглядело так (строка для запуска программы подчеркнута красным): |