Romanian Начинающий телефонист Откуда: Russia, Volgograd С нами с: 25.09.2003 Плодовитость: 47
Рейтинг
Подано 2 (2/0) голосов
|
DoS-атаки на мобилу : )
|
KonstanT пишет:цитата: ...Вышли помылу, посмотрю...
Лучше приведу здесь тот материал, который я использовал (для МТС, если не устарело, можно использовать в готовом виде, для других, кроме БиЛайна, несложно переделать запрос к CGI-скрипту). Повторяю, что этот код предназначен для отправки ЛЮБЫХ (в основном полезных) смс-ок, что позволяет автоматизировать их отправку на свой вкус и, при пользовании ЖПРС, сэкономить 6 центов на каждой смс-ке. (Возможно, это отдельная тема). Аналогично можно использовать email-шлюзы.
цитата:
Delphi и SMS!
Источник: http://www.realcoding.net
Для начала необходимо разобраться как происходит отправка sms через инернет. Вы вводите номер телефона и текст сообщения, а затем отправляете. Через некоторое время сообщение будет доставлено адресату. Разные GSM операторы по-разному обрабатывают сообщения, у всех разные системы отправки, скрипты. Но целом, все одинаково. так, мы решили написать программу для отправки sms черезprocedure SendToMTS;
Интернет. Визуальную часть проектирования касаться не будем, а посмотрим как сформировать пакет для отправки оператору. Для примера возьмем МТС. Вся информация (номер телефона, текст сообщения, крайние время отправки) отсылается следующему скрипту:
http://www.mts.ru/cgi-bin/cgi.exe?function=sms_send
Информация хранится в следующих полях:
To= // номер телефона, вида 7xxxxxxxxxx
Msg= // текст сообщения
Hour=,Min=,Day=,Mon=,Year= // крайние время отправки сообщения
Теперь несложно написать процедуру отправки сообщения:
var
strPostData: string;
Data: Pointer;
URL, Flags, TargetFrameName, PostData, Headers: OleVariant;
begin
strPostData := 'To='+PhoneNumField.text+'&Msg='
+ TextField.Text +
'&Hour=20&Min=23&Day=22&Mon=02&Year=2002';
PostData := VarArrayCreate([0,Length(strPostData) -1], varByte);
Data := VarArrayLock(PostData);
try
Move(strPostData[1], Data^, Length(strPostData));
finally
VarArrayUnlock(PostData);
end;
URL:='http://www.mts.ru/cgi-bin/cgi.exe?function=sms_send';
Flags := EmptyParam;
TargetFrameName := EmptyParam;
Headers := EmptyParam; // TWebBrowser автоматически заполнит
// эти заголовки соответствующими
// значениями
form1.WebBrowser1.Navigate2(URL, Flags,
TargetFrameName, PostData, Headers);
end;
Все, что нам нужно это поместить на форму компоненту TWebbrowser. Через него и будет происходить отправка. Давайте теперь разберемся в том, что мы написали. Переменная strPostData хранит наименование полей и их содержимое в виду обычной строки. Но для корректной работы, мы должны преобразовать строку в нормальный вид. Всю информация мы преобразовали в переменную PostData. Переменной URL указываем путь к исполняемому скрипту; Flags оставим пустым, т.к. мы не будем открывать ни сайта, ни каких-то страниц; TargetFrameName также пуст; заголовки для пакета оставляем пустым, т.к компонента сама их заполнит и МТС не требует никакой верификации (как билайн, например). Конечным действием вызываем процедуру Navigate2 и отправляем сообщение. Описывать как заполнять поля время/дата не буду, т.к это очень просто.
P.S: Также стоит заметить, что разные операторы используют разные методы отправки (GET или POST). В нашем примере мы использовали метод POST. Если необходимо использовать GET, то просто оставьте значение переменной PostData пустым.
Итак, находим нужного опсоса, анализируем, как у него отправить смс через www или мыло, пишем процедуру отправки по образу, интерфейс и пр. фичи по вкусу, и наслаждаемся
А вот ссылка на одну из многочисленных статей об СМС-вирусах, кто сталкивался - поделитесь впечатлениями: http://www.pravda.ru/society/2002/10/03/47931.html
|
____________________________
С уважением - Yours faithfully
М50 / BeeLine GPRS |
|