Подмена адресов в исходящей почте

Иногда происходит так, что в почте локальной сети все пользуются адресами, наподобие mail@myfirm.local, а при отправке на внешние адреса надо, чтобы этот ящик выглядел, как mail@myfirm.ru.

Тут на помощь приходит скрипт автозамены адреса в исходящей почте.

Для начала надо включить в меню поддержку скриптов VBScript и нажать кнопку "Сохранить":

Затем открыть в текстовом редакторе файл EventHandlers.vbs из папки Events (обычно это C:\Program Files\hMailServer\Events\ либо можно нажать кнопку "Показать"), и добавить строки:

Sub OnAcceptMessage(oClient, oMessage)

dim oApp

Set oApp = CreateObject("hMailServer.Application")

Call oApp.Authenticate("Administrator", "тут надо ввести пароль администратора на вход в hMailserver")

if oClient.Username = "mail@myfirm.local" then ' тут пишем строку поиска

oMessage.FromAddress = "mail@myfirm.ru" ' тут пишем строку замены

oMessage.From = "JSC Roga i Kopyta <mail@myfirm.ru>" ' тут пишем строку замены и текстовое описание

oMessage.save

Result.value =0

end if

End Sub

Пример готового скрипта можно найти в аттаче.

Затем идем в меню "Скрипты", и нажимаем кнопку "Перезагрузить" и "Проверка". Это даст команду программе загрузить в память измененные скрипты и программа проверит скрипты на правильность. Если ошибок не будет, то появится надпись "The syntax is correct". После этого можно пробовать отправлять письма на внешний ящик - у них адрес отправителя будет изменен согласно настроенному скрипту.