Как создать batch файл?
@echo This batch file
@pauseНажмите любую клавишу для продолжения…
Обратите внимание, что символ собаки перед каждой командой в bat-файле указывает на то, что саму команду выводить на экран не надо, а нужно вывести только результат ее работы. Чтобы поэкспериментировать удалите символ собаки из начала каждой строки, сохраните и запустите полученный bat файл.
Если bat файл исполняется под управлением Windows (не в чистом DOS-е), то из него можно запускать любые приложения или открывать файлы. Например, нужно автоматически открыть лог-файл работы bat файла по завершении его работы. Для этого достаточно включить в bat файл последней строкой следующую команду:
этой команды станет открытие файла имя_файла.txt, а сам bat файл завершит свою работу. Такой способ хорош, если лог-файл небольшого размера, иначе Блокнот откажется его открывать, предложив использовать WordPad. Но эта проблема так же решаема, что и будет показано в дальнейших примерах.
>
Т.е. чтобы создать файл нужно перенаправить поток с экрана в файл. Сделать это можно при помощи следующей команды:
@echo Start file>C:1.txtПри создании файла в его имени можно использовать системные переменные или их части. Например, можно создать файл-отчет о работе bat файла с именем, равным дате запуска bat файла. Для этого можно использовать следующие строки в bat файле.
set datetemp=%date:~-10%
@echo .>%SYSTEMDRIVE%%DATETEMP%.txt@echo .>C:FolderName%COMPUTERNAME%.txtДля создания файла с определенным именем можно использовать любые системные переменные, либо создать свои, на основе системных переменных и/или других данных.
MD FolderNameMD D:FolderNameMD D:%USERNAME%MD %SYSTEMDRIVE%%USERNAME%set datetemp=%date:~-10%
MD %SYSTEMDRIVE%%datetemp%Первая команда создает в памяти переменную datetemp, которая будет уничтожена по окончании работы bat файла. То тех пор, пока bat файл не закончил свою работу есть возможность оперировать со значением этой переменной. Переменной datetemp присваивается 10 символов справа налево от системной переменной DATE, т.е. от текущей даты. Переменная DATE имеет формат Дн ДД.ММ.ГГГГ. Первые символы слева — имя дня недели и поэтому мы их отбрасываем и присваиваем временной переменной datetemp только текущую дату.
Этим не ограничивается список возможностей при создании папок. Вы можете опрерировать переменными так, как удобно Вам, создавая папки с уникальными, легко читаемыми
Как отправить почту на SMTP сервер Gmail (Google) через программу Blat
Напоминаю, что программа Blat (http://www.blat.net) — это небольшая утилита, которая может посылать почту из «Командной строки». То есть, без полноценного почтового клиента. Может пригодиться для автоматизации оправки почты без участия пользователя.
Программа отлично работает с обычными SMTP серверами и описание наладки этого процесса достаточно хорошо документировано. И все было бы замечательно, но программа не умеет работать с SMTP серверами, которые при отправке почты требуют организации «Безопасного соединения» — SSL.
Хочется нам того, или не хочется, но это «Безопасное соединение» нам придется организовывать самим. И возьмем мы для этого программу «STunnel» (http://www.stunnel.org). Я лично качал программу по этой ссылке:
http://www.stunnel.org/download/stunnel/win32/stunnel-4.26-installer.exe
Инсталлируем программу, залезаем в корень этой проги и находим файл stunnel.conf Редактируем его и приводим этот вид:
; Some debugging stuff useful for troubleshooting
;debug = 7
;output = stunnel.log
; Use it for client mode
;client = yes
; Service-level configuration
[pop3s]
accept = 995
connect = 110
;[imaps]
;accept = 993
;connect = 143
[ssmtp]
accept = 465
connect = 25
к этому виду:
; Some debugging stuff useful for troubleshooting
debug = 7
;output = stunnel.log
; Use it for client mode
client = yes
; Service-level configuration
[pop3s]
accept = 127.0.0.1:1109
connect = pop.gmail.com:995
;[imaps]
;accept = 993
;connect = 143
[smtps]
accept = 127.0.0.1:1099
connect = smtp.gmail.com:465
После чего, воспользовавшись уже созданными во время инсталляции программы ярлыками в меню «Пуск» винды, «Инсталлируем службу» (Service install) и «Стартуем службу» (Service start).
Далее распаковываем (обычной инсталляции она не требует) программу Blat в каталог, (пусть это будет каталог C:Blat), и запускаем C:Blatblat.exe /? Программа выдаст все параметры, с которыми она может работать.
Теперь делаем один важный момент. Запускаем из «Командной строки» такую команду:
C:Blatblat.exe -install -serverSMTP 127.0.0.1 -portSMTP 1099 -try 1 -u vasya@gmail.com -pw 12345 -f vasya@gmail.com
C:Blatblat.exe — это, разумеется, путь, где сидит наш запускаемый екзешник
-install — это ключ, заставляющий Blat записать в реестр винды настройки, которые следуют далее в нашей командной строке
-serverSMTP 127.0.0.1 — это сервер SMTP (который прописан нами в настройках в «Stunnel».
-portSMTP 1099 — порт SMTP сервера (который прописан нами в настройках «Stunnel».
-try 1 — это число попыток, если отправка почты не удалась (необязательный параметр).
-u vasya@gmail.com — имя пользователя
-pw 12345 — пароль
-f vasya@gmail.com — от имени кого будет приходить почта
После выполнения строки, в реестре, по этому пути:
HKEY_LOCAL_MACHINESOFTWAREPublic DomainBlat
сохранятся настройки, которые потом уже не нужно будет указывать при отправке почты через Блат. Это удобно. К тому же, это еще и безопасно тем, что в дальнейшем вам не понадобиться в параметрах blat.exe, указывать свой пароль в открытом виде (в реестре он хранится в зашифрованном виде). Хочется отметить, что команду «-install » можно и не выполнять вовсе. Это не строго обязательно. Просто потом, в дальнейшем, в параметрах программы Blat, вам придется всегда указывать абсолютно все параметры, в том числе и пароль (в открытом виде). Полная строка в этом случае будет выгляде
Отправка электронной почтты из командной строки.
Для отправки электронной почты из командной строки в операционных системах семейства Windows стандартных средств не предусмотрено, однако можно воспользоваться программным обеспечением сторонних производителей, как, например, бесплатной утилитой Blat Утилита не требует установки, просто скачайте архив и распакуйте его в какой-нибудь каталог. Если вы планируете использовать blat.exe в командных файлах, то имеет смысл поместить ее в каталог, используемый в путях поиска исполняемых файлов по умолчанию (задаваемых переменной окружения PATH), например, windowssystem32 .
При выполнении, blat.exe может использовать некоторые параметры — профиль , который хранится в реестре Windows. Профилей может быть несколько и один из них может использоваться в качестве профиля по умолчанию. Для создания профиля используется ключ -install при запуске blat.exe.
blat.exe -install smtp.mail.ru test@mail.ru 3 25 profile1 test@mail.ru пароль
параметры, следующие за «-install» должны располагаться именно в таком порядке:
smtp.mail.ru — имя почтового сервера, через который будет выполняться отправка электронных писем
test@mail.ru — имя отправителя, которое будет отображаться в поле From:
3 — число попыток повторный отправки письма при сбое соединения с сервером.
25 — номер порта SMTP-сервера
profile1 — имя профиля утилиты
test@mail.ru — имя пользователя, которое будет использоваться при подключении к SMTP-серверу
пароль — пароль, используемый при подключении к SMTP-серверу
После выполнения этой команды, в реестре будут созданы ключи, которые могут использоваться программой в качестве входных параметров.

blat.exe -install smtp.mail.ru test@mail.ru 3 25 — test@mail.ru
Параметры Blat.exe хранятся в ветке реестра
[HKEY_LOCAL_MACHINESOFTWAREPublic Domain]
Профиль по умолчанию хранится в ветке
[HKEY_LOCAL_MACHINESOFTWAREPublic DomainBlat]
Настройки для конкретного профиля
[HKEY_LOCAL_MACHINESOFTWAREPublic DomainBlatимя профиля]
Для получения встроенной справки программы используется ключ -h
blat -h — выдача справки на экран
blat -h > C:blathelp.txt — выдача справки в файл C:blathelp.txt
Даже беглый просмотр ключей, используемых программой, говорит о ее обширных возможностях, в том числе, отправку писем в любой кодировке, использование многоцелевого формата почтовых сообщений MIME, отправку с вложением файлов и т.п. Для описания всех возможностей понадобилась бы отдельная книга средних размеров, поэтому ограничусь примерами наиболее частого использования.
Отправка письма с использованием профиля по умолчанию получателю test@ab57.ru:
blat.exe -body «Hello World» -to test@ab57.ru
Параметр -body используется для формирования текста в теле письма. Если текст содержит пробелы, то заключается в двойные кавычки. Параметр -to задает адрес получателя. Остальные данные, необходимые для отправки берутся из профиля по умолчанию (адрес SMTP- сервера, имя пользователя, пароль и т.п.). В качестве текста тела письма можно использовать содержимое файла, указав его имя вместо параметра -body
blat.exe C:mytext.txt -to test@ab57.ru
Для отправки электронного письма без текста используется имя пустого файла (а не ключ -body без параметров, когда будет ожидаться ввод текста письма с клавиатуры)
Если используется текст на русском языке, то нужно указать кодировку, поддерживающую символы кириллицы, для чего используется ключ —charset :
blat.exe -body «Текст на русском» -to test@ab57.ru -charset utf-8
Для отправки писем с вложением файлов используется ключ -attach
blat.exe -body «Текст на русском» -to test@ab57.ru -charset utf-8 -attach c:boot.ini
Если тема письма не задана, то blat.exe использует в поле темы строку Contents of file: stdin.txt. Для подавления стандартной темы можно использовать ключ -ss. Поле темы, в этом случае будет пустым. Для указания нужного текста в поле темы используется ключ -subect
blat -body «TEST на русском» -subject Важно! -to test@ab57.ru -charset utf-8 -attach c:boot.ini
Для отправки письма с настройками из конкретного профиля используется ключ -p имя профиля
blat.exe -body «this is text» -p profile1 -to test@domain.ru
Для получения списка профилей, хранящихся в реестре на данный момент используется ключ -profile
blat -profile
В ответ будет выдано
Blat v2.6.2 w/GSS encryption (build : Feb 25 2007 12:06:19)
Profile(s) for all users of this computer —
SMTP: smtp.mail.ru «test@mail.ru» 1 25 ***** *****
SMTP: smtp.mail.ru «test321@mail.ru» 3 25 profile1 ***** *****
Первая строка, начинающаяся с SMTP: относится к профилю по умолчанию, вторая — к профилю с именем profile1
Для отправки электронного письма без использования какого-либо профиля, в командной строке blat.exe нужно задать все те данные, которые хранятся в профиле.
blat -body «TEST» -to test@yandex.ru -server smtp.mail.ru -f test@mail.ru -u test@mail.ru -pw пароль
Если какой-либо из параметров не задан, он будет взят из профиля по умолчанию.
-server — имя сервера SMTP
-f — почтовый адрес отправителя
-u — имя пользователя, используемое для подключения к SMTP-серверу (AUTH LOGIN)
-pw — пароль пользователя.
Автор: Guest Rooms «Varnaflats.eu»
Дата публикации: 2017-07-28T21:46:00.000-07:00
Отправка сообщений электронной почты из командной строки, с помощью утилиты Blat.exe
Сегодня я расскажу о том, как отправлять сообщения на электронную почту из командной строки. Можно привести массу ситуаций, когда необходимо выполнять данное действие. Например, для контроля выполнения различных регламентных заданий, резервного копирования баз данных и пр. А поможет нам в этом маленькая, удобная и абсолютно бесплатная утилита Blat.exe.1. Утилита Blat.exe
2. bat-файлы для отправки сообщений
rem *** Путь к программе blat.exe ***
set file_blat=D:blatblat.exe
rem *** Путь к файлу с текстом сообщения ***
set file_text=D:blatreport.txt
rem *** Путь к файлу для сохранения лога ***
set file_log=D:blatlog_blat.txt
rem *** Данные отправителя ***
set from_server=smtp.mydomen.com
set from_port=25
set from_mail=report@mydomen.com
set from_name=report
set from_pass=password
rem *** Данные получателя ***
set to_mail=user@mydomen.com
set to_subject="Report"
rem *** Отправка сообщения ***
%file_blat% %file_text% -server %from_server%:%from_port% -f %from_mail% -u %from_name% -pw %from_pass% -to %to_mail% -s %to_subject% -log %file_log% rem *** Путь к программе blat.exe ***
set file_blat=D:blatblat.exe
rem *** Путь к файлу с текстом сообщения ***
set file_text=D:blatreport.txt
rem *** Путь к файлу для сохранения лога ***
set file_log=D:blatlog_blat.txt
rem *** Данные отправителя ***
set from_server=smtp.mydomen.com
set from_port=25
set from_mail=report@mydomen.com
set from_name=report
set from_pass=password
rem *** Отправка сообщения ***
%file_blat% %file_text% -server %from_server%:%from_port% -f %from_mail% -u %from_name% -pw %from_pass% -to %1 -s %2 -log %file_log%rem *** Путь к программе blat.exe ***
set file_blat=D:blatblat.exe
rem *** Путь к файлу с текстом сообщения ***
set file_text=D:blatreport.txt
rem *** Путь к файлу для сохранения лога ***
set file_log=D:blatlog_blat.txt
rem *** Путь к файлу с адресами получателей ***
set file_to=D:blatmail_list.txt
rem *** Тема сообщения ***
set to_subject="Report"
rem *** Данные отправителя ***
set from_server=smtp.mydomen.com
set from_port=25
set from_mail=report@mydomen.com
set from_name=report
set from_pass=password
rem *** Отправка сообщения ***
%file_blat% %file_text% -server %from_server%:%from_port% -f %from_mail% -u %from_name% -pw %from_pass% -tf %file_to% -s %to_subject% -log %file_log%rem Резервное копирование завершилось успешно
call D:blatsend_email.bat "Backup - OK"
rem Резервное копирование завершилось c ошибкой
call D:blatsend_email.bat "Backup - ERROR"rem *** Основная директория файла ***
set dir=%~dp0
rem *** Путь к программе blat.exe ***
set file_blat=%dir%blat.exe
rem *** Путь к файлу с текстом сообщения ***
set file_text=%dir%report.txt
rem *** Путь к файлу для сохранения лога ***
set file_log=%dir%log_blat.txt
rem *** Путь к файлу с адресами получателей ***
set file_to=%dir%mail_list.txt
rem *** Данные отправителя ***
set from_server=smtp.mydomen.com
set from_port=25
set from_mail=report@mydomen.com
set from_name=report
set from_pass=password
rem *** Отправка сообщения ***
%file_blat% %file_text% -server %from_server%:%from_port% -f %from_mail% -u %from_name% -pw %from_pass% -tf %file_to% -s %1 -log %file_log%3. Заключение
Автор: Guest Rooms «Varnaflats.eu»
Дата публикации: 2017-07-28T21:41:00.001-07:00
Обмен данными в распределенной базе через e-mail.
Если у вас нет финансов для покупки отдельного сервера под 1С или вы просто не хотите пока вкладывать денежные средства для развития этого программного продукта, но у вас есть острая необходимость в обмене данными между двумя удаленно расположенными пользователями, то в данной статье я расскажу как настроить обмен данными без финансовых вложений по средствам e-mail.
Автор: Guest Rooms «Varnaflats.eu»
Дата публикации: 2017-07-28T20:38:00.000-07:00
Входящие звонки по времени в FreePBX
Работу системы FreePBX можно организовать таким образом, чтобы телефония работала по разной логике в различное время суток. Например, можно сделать разделение на дневной и ночной режимы работы. В данной статье будет рассмотрен заворот входящей маршрутизации в правила по времени.
Постановка задачи
Рассмотрим следующую ситуацию (разделени на дневной и ночной режимы): необходимо чтобы днем все входящие звонки заворачивались на IVR с приветствием и возможностью выбора подменю и донабора внутренних номеров сотрудников, а в нерабочее время уже озвучивалось другое IVR в котром будет отключена возможность прямого донабора и по таймауту будет переход, например, на голосовую почту, чтобы звонивший мог оставить сообщение.
Изначально необходимо создать два разных IVR и назвать их, например, IVR-day и IVR-night. (Более подробно о составлении IVR можно посмотреть здесь)
Создание временной группы
Далее создаются необходимые временные группы. Настройки производятся на вкладке Applications>Time Groups: в поле Description вводится описание временной группы — целесообразно в описании указывать временной диапазон, который будет использоваться. Затем настраиваются параметры времени: Time to start/Time to finish — время начала/окончания работы группы (время можно выставлять с точностью до минуты), Week Day start/Week Day finish — день недели началы/окончания работы. Для примера возьмем с понедельника по пятницу с 9:00 до 18:00.
После сохранения настроек созданные временные группы отображаются в правом верхнем углу окна. Здесь же находится кнопка Add Time Group при нажатии на которую открывается страница добавления новой временной группы.
Создание правил по времени
Теперь можно перейти на страницу создания Временных правил: Applications>Time Conditions. В поле Time Condition name задается имя правила, например, worktime. В поле Time Group выбирается созданная на предыдущем шаге временная группа. Поле Destination if time matches (Назначение если время совпадает) — соответственно выставляет назначение куда будет направлен входящий звонок при совпадении времени — в данном случае будет завернут в IVR-day. Поле Destination if time does not match (Назначение если время не совпадает) — соответственно выставляет назначение куда будет направлен входящий звонок при не совпадении времени — в данном случае будет завернут в IVR-night.
Заворот входящих звонков в правило по времени
Теперь необходимо завернуть входящие маршруты на только что созданное правило по времени. Вкладка Connectivity>Inbound Route. Создается маршрут для AnyDID/AnyCID и заворачивается на созданное правило по времен: в поле Set Destination указывается Time Conditions, затем выбирается необходимое правило.
На этом настройка перенаправление входящей маршрутизации на правила по времени закончена.
















































