Контакты  
 
 
Главная
 
 
 
   
Привет :)
 
 
Разделы





 
Пост  
 
 
И так, что это? а хз) Дело было вечером, делать было нечего =)
 Вот и решил написать, что нибудь полезное на Delphi для себя, но то, что получилось захотелось выложить в свет, может кому то ещё данная программа будет полезна)
Сори, если гдето встретятся опечатки, пишу быстро :)

Что я учёл при написании:
1. У всех было такое что срочно нужен баланс, а возможности пополнить - нет)
2. Компьютер работает 24/7, нужен смс контроль над состоянием
3. Возможность Пополнять баланс Любому абоненту с системы QIWI имея любой телефон под рукой
4. Ну и ещё всякие мелочи :))
 
 
 
Что нужно для работы программы?
1. Любой GSM Модем марки "Huawei"
2. SIM карта Beeline с балансом :)) (Можно любого, но не будет работать запрос экстренного баланса)
3. Компьютер

Программа работает только с модемами марки Huawei. Почему?
-Потому, что адекватнее модема я не встречал (Моё мнение ZTE УГ)

Что может программа?:
1. Отправлять, принимать sms, а также Flash сообщения которые не сохраняются у абонента
2. Пополнять баланс при 0-м балансе, методом запроса баланса у вашего модема *143*...# и *144*...#
3. Пополнять баланс любого оператора, если ваша SIM зарегистрирована в системе QIWI.
4. Возможность звонить или отправлять смс администратору, при загрузке компьютера или при других условиях.
5. Всякие шалости: выключение/перезагрузка компьютера по средствам SMS команды.

С какими операторами будет работать программа?
-Со всеми, но ориентировалась под билайн

Хочу отправлять смс со своего сайта, или программы.
-Без проблем, ниже будет API

Программа имеет WEB интерфейс?
-Да

На каких ОС работает?
-Писал на XP, на других не тестировал, пробуйте.

Сколько оперативной памяти занимает?
-В режиме спокойствия 1,5мб, в режиме обработки 2мб-5мб, выгружается автоматически.
 
НАСТРОЙКА:
 
При первом запуске, программа попросит ввести номер администратора и пароль, придумайте любой пароль (6 символов).
 
 
1. Данный пункт, для того чтобы программа могла сама проверять баланс на вашей SIM карте,
и переводить баланс (у билайна минимальный перевод 100 тг)

2. Нам нужно соединится с модем для начала работы, нажимаем логотип USB модема:
Выбираем: "Huawei Mobile Connect - 3G PC UI Interface" жмём коннект.

3. SMS-Server даёт возможность отправлять смс с вашего сайта или программы, а также включает Web-интерфейс программы (http://IP:Port). Позже приведу пример отправки SMS через API.

4. Собственно пункт для работы с интернетом модема и не только.
 
5. Работа с DynDNS.org

Нажимаем "Сохранить текущие настройки".

Как это работает?
-Пополняете баланс на SIM карте модема, далее при необходимости он вам понадобится.

Теперь пример, ситуации когда можно воспользоваться:
У вас кончился баланс:0
набираем команду *143*7705xxxxxxx# или *144*7705xxxxxxx#
7705xxxxxxx - номер вашей сим карты в модеме.
Модема автоматически присылает вам баланс, cумму которую вы указали в пункте настроек "1"

Если у вас есть QIWI :)
-Если ваша SIM карта зарегистрирована в системе QIWI то можно переводить баланс любому абоненту таким методом:
Мой пароль: "!mypass", буду использовать его в примерах.
Собственно отправляем на модем SMS, с таким содержанием:

!mypass balanse beelinekz 770512345678 20
И чтобы 20 это сумма в рублях QIWI )))
И чтобы было понятнее пару примеров:

!mypass balanse beelinekz 770512345678 20
!mypass balanse kcell 770112345678 20
!mypass balanse activ 777512345678 20
!mypass balanse neo 770712345678 20
!mypass balanse tele2 770712345678 20
!mypass balanse dalacom 770012345678 20
!mypass balanse pathword 770012345678 20


Если же вам надо пополнить счёт, человеку оператору другой страны то так:
!mypass balanse auto 91912345678 20

Как сделать так, чтобы и мои друзья могли пользоваться экстреным запросом баланса:
-Добавльте их сюда:
 
 
На друзей ограничения 1 запрос в сутки, на администратора ограничений нет)

Я Спамер, постоянно шлю много смс всем друзьям
-Это для вас:
 
 
Что нужно сделать, чтобы программа звонила мне при запуске компьютера или когда я захочу:
-Создайте ярлык к программе с параметром: "-sendstartring" - звонок, или "-sendstartsms" - SMS
Пример: "C:\GSMcontrol.exe -sendstartring" и добавьте его в автозагрузку.

Какие SMS команды можно отправлять модему?
Отправляете текстовое сообщение на номер SIM карты в модеме:

!mypass status -Получите ответное смс со статусом модема
!mypass internet-on -Включит интернет соединение указанное в настройка пункта "4"
!mypass internet-off -Выключит интернет соединение указанное в настройка пункта "4"
!mypass internet-status -Получите ответное смс со статусом интернет соединения
!mypass comp-off -Выключит компьютер
!mypass comp-reboot -Перезагрузит компьютер

Как выглядит WEB-интерфейс?
 
 
Уведомления: 
 
 
Как отправлять SMS со стороннего интерфейса/сайта/прогаммы?
- Достаточно послать TCP пакет на IP:PORT в кодировке base64, указанные в настройках пункт "3"

Обычное сообщение:
!mypass#SENDSMS#[TYPE]0[NUMBER]77771234567[TEXT]Привет :)

Флэш сообщение:
!mypass#SENDSMS#[TYPE]1[NUMBER]77771234567[TEXT]Привет :)

Также, можно послать USSD команды:
!mypass#CMD#[USSD]*145#

Ниже пример, как на PHP отправить SMS:
sendsms.php
  1. <?
  2.  
  3. $address = gethostbyname ('127.0.0.1'); //IP Адрес вашего компьютера
  4. $service_port=8000; //Порт
  5. $pass_server='!mypass'; //Пароль
  6.  
  7. $socket = socket_create (AF_INET, SOCK_STREAM, 0);
  8. if ($socket < 0) {
  9. echo "socket create failed reason: " . socket_strerror ($socket) . "\n";
  10. }
  11.  
  12. $result = socket_connect ($socket, $address, $service_port);
  13. if ($result < 0) {
  14. echo "socket connect failed.\nReason: ($result) " . socket_strerror($result) . "\n";
  15. }
  16.  
  17. $in = base64_encode($pass_server."#SENDSMS#[TYPE]0[NUMBER]77771324578[TEXT]Тест............."); //Пример отправки смс
  18.  
  19. //$in = base64_encode($pass_server."#CMD#[USSD]*102#"); //Пример запроса USSD команды
  20.  
  21. $out = '';
  22.  
  23. socket_write ($socket, $in, strlen ($in));
  24.  
  25. echo "Response:\n\n";
  26.  
  27. while ($out = socket_read ($socket, 2048)) {
  28. echo $out;
  29. }
  30.  
  31. socket_close ($socket);
  32. ?>
 
 
Если у вас есть идеи, по поводу улучшения программы, то пиши на email, через обратную связь или оставляйте комментарии.
Добавить в:
 
Serj   11 ноября 2011, 06:22
 
 



 
 
 
 
© SERJ.WS 2011-2017