Интеграция Персонального SMS Сервера
Общие вопросы
Как создать сценарий VBScript
Установка обработчика SMS на VBScript
Установка источника SMS на VBScript
Соединение с базой данных
Перекодировка текста
Автоматизация работы с использованием Windows Scripting Host
VBScript Language Reference
Примеры скриптов автоматизации
Отправка SMS из командной строки
Рассылка SMS из файла
Примеры обработчиков
Запись сообщения в базу данных
Запись сообщения в текстовый файл
Простой автоответчик
Автоответчик по ключевым словам
Отправка SMS на E-mail
Примеры источников SMS
Отправка SMS из таблицы базы данных
Отправка SMS из текстового файла
Мониторинг процесса
Мониторинг (пинг) хоста
Общие вопросы
Как создать сценарий VBScript
Сценарий VBScript - это обычный текстовый файл. Создайте новый текстовый файл в Вашем файловом менеджере или с помощью проводника Windows ("Мой компьютер"), скопируйте в него код сценария с этой страницы, и замените расширение на .vbs.
Чтобы видеть (и изменять) расширения файлов в проводнике Windows, выберите в проводнике Windows пункт "Сервис", "Свойства папки", вкладка "Вид", и снимите галочку "Скрывать расширения для зарегистрированных типов файлов".
Сценарий VBScript запускается либо прямо из файлового менеджера, либо из командной строки, командой cscript.exe (имя скрипта).
Установка обработчика SMS на VBScript
- Откройте контрольную панель Персонального SMS Сервера двойным щелчком мыши на иконке в правом нижнем углу экрана;
- Откройте вкладку "Обработчики";
- Нажмите кнопку "Добавить";
- Выберите тип "Команда", событие, которое необходимо обработать ("Получение" для обработки полученных сообщений), наберите команду, исполняемую при обработке, а также, в случае необходимости, директорию, в которой будет выполняться команда. Для обработчика VBScript команда должна начинаться именем интерпретатора cscript.exe;
- Для отладки обработчика установите галочку "Выводить результат в журнал";
- Нажмите "ОК". Обработчик должен появиться в списке.
Установка источника SMS на VBScript
- Откройте контрольную панель Персонального SMS Сервера двойным щелчком мыши на иконке в правом нижнем углу экрана;
- Откройте вкладку "Источники";
- Нажмите кнопку "Добавить";
- Выберите тип "Команда" и нажмите "ОК";
- Наберите команду, выполняемую для получения сообщений на отправку и период вызова источника в секундах. Для источника VBScript команда должна начинаться именем интерпретатора cscript.exe;
- Для отладки источника SMS установите галочку "Выводить результат в журнал";
- Нажмите "ОК". Источник SMS должен появиться в списке.
Соединение с базой данных
Для соединения с базой данных необходимо использовать объект ADODB.Connection.
Инструкция по использованию ADODB.Connection в VBScript
Для некоторых типов баз данных (например, для MySQL) необходимо дополнительно установить драйвер (коннектор) базы данных.
Рекомендуемая версия MySQL-коннектора для Windows XP / 2003 Server - 3.51.
Скачать коннектор MySQL 3.51 (32-bit)
Рекомендуемая версия MySQL-коннектора для Windows Vista / 7 / 2008 Server - 5.1. Необходимо установить 32-битную версию коннектора, в противном случае скрипты будут возвращать ошибку "Источник данных не найден и не указан драйвер, используемый по умолчанию".
Скачать коннектор MySQL 5.1 (32-bit)
В строке соединения необходимо указывать DRIVER={MySQL ODBC 5.1 Driver}.
Если после установки MySQL-коннектора скрипт, тем не менее, будет возвращать "Источник данных не найден и не указан драйвер, используемый по умолчанию", необходимо зайти в Панель управления - Администрирование - Источники данных (ODBC) и добавить источник данных (пользователя или системы), нажав Добавить и выбрав MySQL ODBC 5.1 Driver.
Пример 1: запись в базу MS Access
Пример 2: запись в базу MySQL
Пример 3: запись в базу MS SQL
Перекодировка текста
Перекодировка текста может быть необходима при использовании базы данных в несовместимой кодировке.
Примеры скриптов автоматизации
Отправка SMS из командной строки
Скрипт запускается командой: cscript.exe script.vbs "(получатель)" "(сообщение)"
Рассылка SMS из файла
Пример 1: одно сообщение, несколько получателей
Содержимое файла имеет вид:
(сообщение)
(получатель 1)
(получатель 2)
...
Скрипт запускается командой: cscript.exe script.vbs "(файл)"
Пример 2: несколько получателей, несколько сообщений
Содержимое файла имеет вид:
(получатель 1) (сообщение 1)
(получатель 2) (сообщение 2)
...
Скрипт запускается командой: cscript.exe script.vbs "(файл)"
Примеры обработчиков
Запись сообщения в базу данных
Этот скрипт записывает сообщение в базу MySQL. Таблица создается следующим SQL-оператором: CREATE TABLE inbox(date DATETIME, msisdn VARCHAR(255), sms VARCHAR(255)). Команда обработчика: cscript.exe script.vbs "_FROM_" "_BODY_".
Запись сообщения в текстовый файл
Команда обработчика: cscript handler_to_file.vbs _FROM_ "_BODY_" "C:\path\to\file.txt".
Простой автоответчик
Команда обработчика: cscript.exe script.vbs "_FROM_" "_BODY_"
Автоответчик по ключевым словам
Этот скрипт ищет соответствие сообщения ключевым словам из таблицы MySQL. Таблица создается следующим SQL-оператором: CREATE TABLE keywords(keyword VARCHAR(255), reply VARCHAR(255)). Команда обработчика: cscript.exe script.vbs "_FROM_" "_BODY_"
Отправка SMS на E-mail
Для функционирования этого скрипта необходимо наличие Microsoft Outlook, а также установленных компонентов Microsoft Outlook Collaboration Data Objects (CDO). Команда обработчика: cscript.exe script.vbs "_FROM_" "_BODY_"
Примеры источников SMS
Отправка SMS из таблицы базы данных
Таблица, в которую помещаются сообщения для отправки, называется outbox и имеет два поля, addr и body (получатель сообщения и само сообщение).
Команда источника SMS: cscript.exe //Nologo script.vbs
Отправка SMS из текстового файла
Содержимое файла имеет вид:
(получатель 1) (сообщение 1)
(получатель 2) (сообщение 2)
...
Команда источника SMS: cscript.exe //Nologo script.vbs "(файл)"
Мониторинг процесса
Скрипт проверяет наличие процесса в памяти, и отправляет SMS-сообщение администратору, если процесс отсутствует. Источник SMS запускается Персональным SMS Сервером с заданной периодичностью. Команда источника SMS: cscript.exe //Nologo script.vbs "(телефон)" "(процесс.exe)".
Мониторинг (пинг) хоста
Скрипт производит пинг хоста, и отправляет SMS-сообщение администратору, если хост не отвечает. Источник SMS запускается Персональным SMS Сервером с заданной периодичностью. Команда источника SMS: cscript.exe //Nologo script.vbs "(телефон)" "(хост)" (например, cscript.exe //Nologo script.vbs "79000000001" "www.yandex.ru").