ГлавнаяПоддержкаБлог
Главная arrow Статьи arrow Работа в Outlook arrow Почтовый робот - автоматический ответ на письмо с помощью шаблона
Почтовый робот - автоматический ответ на письмо с помощью шаблона

Шаблоны плагина Potolook можно использовать не только в качестве хранилища текста, который может быть помещен в ответное письмо. Скриптовые вставки позволяют делать из простого шаблона полноценную программу на языке JScript, на этой основе можно строить разного рода автоответчики и роботы. Давайте рассмотрим как использовать встроенный модуль Ответ по шаблону для создания почтового робота для отправки файлов.

Сценарий работы робота будет следующий:

  • Для удобства создается отдельный почтовый ящик и для получения с него писем настраивается новая учетная запись в Microsoft Outlook. В меню Сервис/Параметры/Настройка почты/Отправить и получить устанавливается автоматическое получение и отправка писем.
  • Далее создается шаблон ответа, в котором будет написана маленькая подпрограмма на JScript для прикрепления нужного файла к ответу.
  • Для автоматического выполнения шаблона создается стандартное правило Microsoft Outlook для учетной записи робота и как действие выбирается Выполнить дополнительное действие с использованием модуля Ответ по шаблону.

Создание почтового ящика

Для наших целей вполне подойдет бесплатный почтовый ящик, например на сервере mail.ru. Создайте почтовый ящик, а также учетную запись в Microsoft Outlook и настройте ее, допустим это будет адрес potolook()mail.ru.

Настройте учетную запись для автоматического получения писем каждые 10 минут.

Создание нового шаблона для робота

Для робота нам нужно создать новый шаблон, но чтобы не заниматься копированием кода готовый шаблон почтового робота можно скачать здесь. Сохраните его в отдельную папку, например сюда c:\PotolookRobot\robot.tpl. Откройте шаблон на редактирование, для чего достаточно сделать двойной щелчок, и расположите в секции инициализации следующий скрипт:

// Секция "Инициализация"
// Разбор команд почтового робота

// Тема письма обязательно должна содержать английское слово "robot", в любом регистре

// Команды содержаться в теле письма, для чего переведем его в формат простого текста

om.BodyFormat = olFormatPlain;

BodyFormat = olFormatPlain; // Ответ тоже будет в формате простого текста

/* Команды робота начинаются с новой строки и могут быть следующими:
  GET idFile
      где idFile идентификатор файла, одно из следующих:
          boot         - прислать файл c:\boot.ini
          potolook     - прислать последнюю версию плагина Potolook для Microsoft Outlook
          potolook-beta - --//-- beta версию
  HELP
      прислать помощь по работе с роботом
*/

var Commands = [];

if(CheckMail()<0){
  nm = null; // Не создаем ответ
}

function CheckMail(){
  if(om.Subject.toLowerCase().indexOf('robot')<0) return(-1);

  var SourceBody = om.Body.toLowerCase();
  var re = /[\n\r]*(get|help|set)( *)(\w*)/gi;
  while((arr = re.exec(SourceBody)) != null){
    Commands[Commands.length] = [arr[1], arr[3]]
  }
}

Скрипт проверяет наличие команд в исходном письме и запоминает их в массиве Commands. Предварительно входящее и исходящее письмо переводится в формат простого текста, так что не важно в каком формате посылать команды роботу. Заметьте, что все входящие письма с командами должны содержать подстроку robot в теме письма.

Далее в секции Ответ следует расположить следующий код:
OFROMFNAME!

<%
nm.Subject = 'Re: Ответ робота';
for(var i=0;i'+Commands[i][0]+' '+Commands[i][1]+'\n');
  switch(Commands[i][0]){
  case 'get':
  		switch(Commands[i][1]){
  		case 'boot':
  		  nm.Attachments.add('c:\\boot.ini');
  		  write('\n...');  		  
		  break;
  		case 'potolook':
  		  nm.Attachments.add('c:\\potolook.exe');
  		  write('\n...');			   		
		  break;
  		case 'potolook-beta':
  		  nm.Attachments.add('c:\\potolook-beta.exe');
  		  write('\n...');			   		
		  break;
		//... добавить сюда дополнительные файлы  
  		}
  		break;
  case 'help':
      write(LoadFromFile("C:\\MyPapka\\Templates\\robot-help.txt"));
      write('\n...');      
      //nm.Attachments.Add("C:\\MyPapka\\Templates\\robot-help.txt");
  		break;
  }
}
%>

Здесь происходит выполнение команд, которые определились в секции инициализации. Вы можете добавлять в секции switch свои условия для отправки других файлов или обработки команд. Команда help имеет некоторые отличия - при обработке считывается текстовый файл с диска и текст вставляется в текущую позицию шаблона с помощью функции write. Путь к текстовому файлу может быть произвольным.

Таким образом наш робот поддерживает следующие команды:

  • GET idFile
    где idFile идентификатор файла, значение одно из следующих:
    boot - прислать файл c:\boot.ini
    potolook - прислать последнюю версию плагина Potolook для Microsoft Outlook
    potolook-beta - --//-- beta версию
  • HELP
    отправка файла помощи по работе с почтовым роботом.

Создание правила для работы почтового робота

Выбираем пункт меню Сервис/Правила и оповещения/Новое/Создать новое правило. Далее следует использовать условие отбора содержащие <текст> в поле "Тема". В качестве подстроки для темы используйте слово "robot". Подобный фильтр по теме очень полезен, т.к. позволяет избежать обработки большого количества спама, который может приходить в почтовый ящик робота.

Далее в качестве действия выбираем выполнить дополнительное действие, затем Potolook Actions и нажимаем кнопку Изменить. Здесь можно добавить произвольное количество действий, которые будет выполнять плагин Potolook. В нашем случае нужно добавить Ответить по шаблону в параметрах выбрать созданный нами шаблон. Остальные параметры можно не менять, достаточно подтвердить выбор и сохранить правило.

Почтовый робот готов!

Теперь при получении письма, у которого в теме будет подстрока "robot" будет срабатывать правило и выполняться шаблон робота (секция Ответ). В шаблоне происходит анализ исходного письма, выполнение команд и составление ответа.

В данной статье рассмотрен простой пример отправки файла и вложения текста в ответ. Вы можете произвольно расширить функциональность почтового робота, вплоть до обращения в базам данных. С помощью подобного робота можно легко реализовать службу "Файлы по почте".

Примеры команд почтового робота

Получение помощи и инсталляции плагина Potolook:

Кому:potolook()mail.ru
Тема: robot
Тело:
HELP
GET potolook





Закладки (156) | Ссылка статьи на вашем сайте | Просмотров: 18954

  Коментарии (2)
Комментарии по RSS
1. Андрей, в 2008-05-19
бьюсь уже битый час. не работает. 
присылает в ответ пустое письмо с темой RE: robot
2. casio website, в 2008-09-22
Удобный плагин, если необходимо автоматом отвечать на письма. Еще бы хотелось, чтобы робот мог вносить изменения в БД, например MYsql либо Oracle

Только зарегистрированные пользователи могут оставлять коментарии.
Пожалуйста зарегистрируйтесь или войдите в ваш аккаунт.

 


Загрузить Potolook
 
Плагин Potolook для Microsoft Outlook
Ментальная арифметика для детей
© 2004-2012 Позитик. Все права защищены.

Microsoft®, Outlook® и эмблема Office являются охраняемыми товарными знаками корпорации Майкрософт (Microsoft Corporation) в США и/или других странах.
Копирование и использование материалов разрешается только в случае указания явной гиперссылки на сайт http://www.potolook.ru, как на источник получения информации.

Разработка сайта — "Позитик"

Рейтинг@Mail.ru