[Начало] [Предыдущая] [Следующая] [Содержание] 


Описание команд CRON скрипта

Данное приложение описывает синтаксис команд CRON скрипта.

Для получения более подробной информации об использовании CRON скриптов для AXIS 240 обратитесь к Разделу "Использование AXIS 240".

Формат скрипта

CRON скрипт для AXIS 240 может состоять из одной или нескольких процедур. Процедура CRON скрипта имеет следующий формат:

# <comments>

 <triggering condition> :

 <commands>;

 %

где:


Команды

alert

Команда alert посылает сообщение на удаленный хост.

Синтаксис
alert [-host HOST] [-port PORTNUMBER] [-message STRING];

 Опции
-host
Задает имя хоста или Internet адрес удаленного хоста.

-port
Задает номер порта TCP из диапазона [0..65534].

-message

Задает сообщение, которое необходимо послать на удаленный хост. Сообщение должно быть заключено в кавычки. Шестнадцатеричные сообщения должны начинаться с \0x, т.е. "\0x04" для непечатаемого символа EOT. При использовании символа двойных кавычек
в тексте сообщения ему должен предшествовать символ косой черты \ , т.е. \".

Пример

# Эта команда посылает сообщение "Alarm 
# "0013" от AXIS 240" на удаленный хост когда 
# порт Input 1 становится "1". 
* * * * * /I1: 
alert -host 172.16.253.80 -port 2703 -message "Alarm \"0013\" from AXIS 240"; 

buffer_init

Команда buffer_init command инициализирует или очищает буфер изображений. Это необходимо для сохранения изображений, используя команды buffer_start и buffer_stop.

Синтаксис
buffer_init [[CAMERANUMBER],[IMAGE],[SIZE][:[CAMERANUMBER],[IMAGE],[SIZE]]];

Опции

CAMERANUMBER
задает номер камеры, т.е. 1-5.

IMAGE
Задает тип изображений 1-3, где:

1 = halfsize.jpg
2 = fullsize.jpg
3 = hugesize.jpg

SIZE
Задает максимальной количество изображений, которые можно сохранить в буфере. Допустимы значения 0-255.
 

 Замечания:

Пример 1

# При запуске данная команда н\инициирует один 
# буфер для камеры 1 с 25 fullsize.jpg изображениями 
# и один буфер для камеры 2 с 5 hugesize.jpg 
# изображениями. 
* * * * * BOOT: 
buffer_init 1,2,25:2,3,5; 

Пример 2

# Данная команда очищает буфер каждое восресенье. 
0 0 * * 0 * : 
buffer_init; 

buffer_start

Команда buffer_start запоминает кадры в заданный буфер изображений. Перед использованием команды соответствующий буфер необходимо инициализировать командой buffer_init.

После запуска команды buffer_start она выполняется в фоновом режиме. Любая следующая за ней команда начнет выполняться сразу же.

Для получения сохраненных изображений необходимо задать источник в соответствии с синтаксисом:

http://<camera>/images/buffer.jpg?imagetype=<value>

Пример

http://mycam/images/buffer.jpg?imagetype=fullsize.jpg

Можно также получить изображения, используя команды mail или ftp.

Синтаксис
buffer_start [-src SOURCEFILE] [-cam CAMERANUMBER]
[-interval TIME] [-duration TIME] [-store SIZE];

Опции

-src
Задает тип исходного файла, т.е. halfsize.jpg, fullsize.jpg или hugesize.jpg.

-cam
Задает номер исходной камеры, т.е. 1-5. Если пропущен, то используется базовая камера.

-interval
Задает временной интервал между последовательными кадрами. Если пропущен, то новый кадр будет создаваться без дополнительной задержки. Формат: h<hours(часы)>m<minutes(минуты)>s<seconds(секунды)>.

-duration
Определеяет общее время выполнения команды. Если пропущен, то команда buffer_start будет выполнена один раз. Формат h<hours(часы)>m<minutes(минуты)>s< seconds(секунды)>. Если задан
-duration inf, то команда будет продолжать свое выполнение, пока не будет прервана любой из команд buffer_init, buffer_start или buffer_stop.

-store
Задает количество сохраняемых изображений в буфере. Эта установка имеет более высокий приоритет чем duration. Максимальное количество изображений задается в команде buffer_init command.

Пример 1

# Эта команда задает сохранение изображений fullsize.jpg. 
* * * * * * : 
buffer_start -src fullsize.jpg -cam 3 -interval s30 
-duration inf; 

Пример 2

# После нажатия кем-либо кнопки Control 
# данная команда сохраняет 10 изображений hugesize.jpg. 
* * * * * /B : 
buffer_start -src hugesize.jpg -store 10; 

Пример 3

# При запуске буфур инициализируется для сохранения 15
# изображений fullsize.jpg. Каждое новое изображение сохраняется
# каждую секунду пока не выполнится другая команда buffer_start или
# buffer_stop. 
* * * * * BOOT : 
buffer_init 1,2,15; 
buffer_start -src fullsize.jpg -interval s1 -duration inf; 

# Когда приходит сигнал по порту 1 сохраняются дополнительные
# 5 изображений пока буфер не будет закрыт. Все
# изображения в буфере посылаются по e-mail в адрес
# someuser@somehost.com. Затем производится сброс буфера

* * * * * /I1: 
buffer_stop -src fullsize.jpg -store 5; 
mail -s "Buffered images" -a images/buffer.jpg -t someuser@somehost.com -b fullsize.jpg -n 15; 
buffer_start -src fullsize.jpg -interval s1 -duration inf; 


buffer_stop

Команда buffer_stop заканчивает сохранение изображений в буфере. Еще до окончания выполнения, команда buffer_stop блокирует выполнение связанных с ней команд в каждой процедуре. Обратите внимание на то, что команда buffer_start ведет себя совсем по другому.

Обычно используется вместе с командой buffer_start.

Синтаксис
buffer_stop [-src SOURCEFILE] [-cam CAMERANUMBER]
[-interval TIME] [-duration TIME] [-store SIZE];

Options

-src
Задает исходный тип файла, т.е. halfsize.jpg, fullsize.jpg или hugesize.jpg.

-cam
Задает исходную камеру, т.е 1-5. Если пропущен, то используется базовая камера.

-interval
Задает временной интервал между последовательными кадрами. Если пропущен, то новый кадр будет создаваться без дополнительной задержки. Формат: h<hours(часы)>m<minutes(минуты)>s<seconds(секунды)>.

-duration
Определеяет общее время выполнения команды. Если пропущен, то команда buffer_start будет выполнена один раз. Формат h<hours(часы)>m<minutes(минуты)>s< seconds(секунды)>. Если задан
-duration inf, то команда будет продолжать свое выполнение, пока не будет прервана командой buffer_init.

-store
Задает количество сохраняемых изображений в буфере. Эта установка имеет более высокий приоритет, чем duration. Максимальное количество изображений задается в команде buffer_init command.

Пример

# Данная команда инициализирует буфер для 60
# изображений halfsize.jpg и 5 hugesize.jpg. Новые изображения
# сохраняются, пока команда buffer_start не будет прервана. 
* * * * * BOOT : 
buffer_init 1,1,60:1,3,5; 
buffer_start -src halfsize.jpg -interval s1 -duration inf; 
buffer_start -src hugesize.jpg -interval m1 -duration inf; 

# Когда порт 1 изменяет состояние, посылается сигнал тревоги
# на хост 1.2.3.4. Сохраняются следующие 10 изображений 
# halfsize.jpg и все они посылаются по ftp
# на сервер с именами от "Halfsize_1" до
# "Halfsize_60". После этого буфер обновляется. 
* * * * * /I1: 
alert -host 1.2.3.4 -port 4000 -message "Alert! Input on port 1."; 
buffer_stop -src halfsize.jpg -store 10; 
ftp -host somehost -user USER -pass PASS -src images/buffer.jpg -dest Halfsize_$r1-60 -time 
h1 -buffer halfsize.jpg; 
alert -host 1.2.3.4 -port 4000 -message "Alert! Images sent to ftp server"; 

# После срабатывания порта 2 последние 5
# изображений hugesize.jpg посылаются на ftp сервер 
# под именами от "Picture_1" до "Picture_5". Обратите внимание на то,
# что пополнение буфера при этом не прекращается. 
* * * * * /I2: 
ftp -host somehost -user USER -pass PASS -src images/buffer.jpg -dest Picture_$r1-5 -time h1 
-buffer hugesize.jpg; 

ftp

Команда ftp использует стандартный File Transfer Protocol (FTP) для передачи изображений с AXIS 240 на удаленный хост.

Синтаксис
ftp [-host HOST] [-user USERNAME] [-pass PASSWORD]
[-src SOURCEFILE] [-dest DESTINATIONFILE]
[-temp TEMPORARY_DESTINATION_NAME] [-loop LOOPTIME]
[-time TOTALTIME] [-cam CAMERANUMBER]
[-buffer BUFFERTYPE];

 Опции

-host
Задает имя хоста или Internet-адрес удаленного хоста. address of the remote host. При задании имени хоста скорость отработки будет несколько ниже, так как необходимо будет обращение DNS. Компилятор даст сообщение об ошибке, если хост не будет определен.

-user
Имя пользователя используется при логгировании на удаленный хост. Если имя пользователя не указано, то компилятор дает сообщение об ошибке.

-pass
Задает пароль при логгировании на удаленный хост.

-src
Определяет имя файла-источника. Если параметр опущен, то файл будет посылаться fullsize.jpg. Для указания имени буфера изображений задайте images/buffer.jpg.

-dest
Задает имя и полный путь к конечному файлу. Если этот параметр остутствует, имя конечного файла будет таким же, как и файла-источника. Максимальная длина имени конечного файла не может превышать 255 символов. Можно добавлять столько конечных файлов, сколь нужно, разделяя их пробелами.

Можно добавлять временные штампы в виде времени, даты и индексов файлов в имя конечного файла. К примеру, это очень удобно при передачи множества файлов.

Следующая таблица содержит список допустимых переменных штампов времени. Каждому штампу предшествует знак доллара "$".

$s
Текущая секунда в диапазоне 00-59.

 $m
Текущая минута в диапазоне 00-59.

 $h
Текущай час в диапазоне 00-23.

 $d
Текущий день месяца в диапазоне 01-31.

 $n
Текущий месяц в диапазоне 01-12.

 $y
Текущий год без века в диапазоне 00-99.

 $Y
Текущий год, включая век.

 $rS-E
Добавление индексного номера, начинающегося с числа S и далее все числа, включая E. Если число E будет отсутствовать, то это означает очень большое число. Замечание: Вставка rS-E может быть использована только в первом конечном файле.

-temp
Задает временный файл в качестве конечного. Это предотвращает от чтения его кем-либо в процессе его загрузки.

-loop
Определение временного интервала, в течение которого команда должна выполняться. Используется вместе с атрибутом времени. Если пропущен, то задержки между двумя последовательными передачами не будет. Формат: h<hours(часы)>m<minutes(минуты)>s<seconds(секунды)>. Является опцией.

-time
Определяет полное время, в течение которого команда выполняется (циклится). Используется совместно с атрибутами loop. Если пропущен, то команда ftp выполнится один раз. Формат: h<hours(часы)>m<minutes(минуты)>s<seconds(секунды)>. Является опцией.

-cam
Задает номер камеры-источника, т.е. 1 - 5. Если пропущен, то используется базовая камера.

-buffer
Задает тип буфера, т.е. fullsize.jpg, halfsize.jpg или hugesize.jpg. Верно только в случае, если -src установлено значение images/buffer.jpg.

Замечание:

Пример 1

# Эта команда логгирует как "elvis" с 
# паролем "presley" на хаете с Internet 
# адресом 123.123.123.123, загружает изображение hugesize 
# с именем "king.jpg" и размещает его 
# в директории "/home/elvis" на удаленном 
# хосте. В процессе загрузки используется имя файла 
# "tmp.jpg". 
* * * * * : 
ftp -host 123.123.123.123 -user elvis -pass presley 
-src hugesize.jpg -dest /home/elvis/king.jpg -temp 
tmp.jpg; 

Пример 2

# Эта команда каждый час в течение двадцати минут 
# через каждые пять секунд загружает изображение fullsize 
# с камеры 3 и сохраняет их со штампом времени 
# в файлах tmp/full******.jpg. 
0 * * * * : 
ftp -src fullsize.jpg -host an.interesting.site 
-dest tmp/full$h$m$s.jpg -user billy -pass startrek 
-loop s5 -time m20 -cam 3; 

Пример 3

# Эта команда посылает 1001 последовательное fullsize- 
# изображение в "funny, host, name". Первое и последнее 
# изображения будут иметь имя "fullsize1OOO.jpg" и 
# "fullsize2000.jpg" соответственно. 
* * * * * : 
ftp -host funny.host.name -user camera1 -pass secret 
-src fullsize.jpg -dest 
/home/camera1/tmp/fullsize$r1000-2000.jpg; 

mail

Эта команда использует Simple Mail Transfer Protocol (SMTP) для передачи изображений и файлов от AXIS 240 по адресам e-mail.

Замечание:

Синтаксис
mail [-s SUBJECT] [-a ATTACHMENTS] [-t RECIPIENTS]
[-cam CAMERANUMBER] [-b BUFFERTYPE] [-n NUMBER];

 Опции

 -s
Если ТЕМА (subject) содержит одно простое слово, то кавычки не требуются. Если ТЕМА содержит много слов, то они должны быть заключены в кавычки.

-a
Задает присоединенные файлы которые могут быть как изображениями, так и обычными файлами. Для использования буфера изображений задайте images/buffer.jpg.

-t
Адрес е-mail получателя/ей.

-cam
Задание номера камеры-источника, т.е. Если отсутствует, то используется базовая камера.

-b
Задает тип буфера, т.е. fullsize.jpg, halfsize.jpg или hugesize.jpg. Верно, только если -a установлен в images/buffer.jpg.

-n
Задает номер изображения из буфера, который будет включен в e-mail. Верно, только если -src установлен в images/buffer.jpg.

Пример 1

# Эта команда посылает someone@company.com 
# e-mail с темой "Hello" и присоединенным 
# файлом fullsize.jpg 
* * * * * : 
mail -s Hello -a fullsize.jpg -t someone@company.com; 

Пример 2

# Эта команда посылает двум адресатам e-mail 
# с темой "This "fullsize.jpg" was sent from my 
# AXIS 240". 
* * * * * : 
mail -s "This \"fullsize.jpg\" was sent from my AXIS 240" -a fullsize.jpg -t someone@axis.com anotherone@axis.com; 

Пример 3

# Эта команда посылает e-mail с пятью 
# присоединенными файлами. 
* * * * * : 
mail -a fullsize.jpg halfsize.jpg hugesize.ppm cronscript config -t me@at.home; 

offline

Эта команда заказчивает текущее РРР-подключение. Используется совместно с командой online.

Синтаксис
offline;


online

 Эта команда набора номера модемом и РРР-подключения. Используется совместно с командой offline.

Синтаксис
online [-dial NUMBER] [-user USERNAME -pass PASSWORD]
[-timeout TIME] [-script "send expect send expect ..."];

Опции
-dial
Номер телефона, который будет послан на модем по команде ATDT<phone number>. Номер не должен содержать пробелов.

-user
Имя пользователя, используемое для идентификации. Пробелы в имени пользователя не допускаются. Не является обязательной.

-pass
Пароль. Требуется, если указано имя пользователя.

-timeout
Прерывает online-сессию, через заданное время перезагружая NetEye. Формат: h<hours>m<minutes>s<seconds>. Не является обязательной.

-script
Опциональная строка скрипта, которая должна прийти по линии связи. Это должно быть последней опцией в команде.

Если посылаемое слово пусто, т.е. если они задано как две кавычки (``), то ничего не будет посылаться, пока ожидаемое слово не будет получено.

При определении процесса логгирования можно использовать слова $(USER) и $(PASS). Они будут замещены аргументами, заданными в соответствующих опциях -user и -pass.

Если строка не включает ESC-последовательность, символ перевода каретки добавляется автоматически в конце строки. Верные ESC-последовательности: \r (перевод каретки), \n (новая строка) и \t(табуляция).

В конце скрипта NetEye переходит в состяние готовности к работе.

Пример

# Эта команда задает набор модемом номера 
# aNumber, логгирование с именем пользователя aUser и 
# паролем aPass. Первоначально NetEye ожидает получения 
# строки "ogin:" и посылает имя пользователя. Затем он 
# ожидает строки "ass:" и посылает 
# пароль. 
* * * * * : 
online -dial aNumber -user aUser -pass aPass 
-script " `' 'ogin:' '$(USER)' 'ass:' '$(PASS)' "; 

reset

Эта команда сбрасывает управляющую программу или аппартаные средства AXIS 240 к первоначальному состоянию.

Синтаксис
reset [-soft | -hard];

 Опции

 -soft
Реинициализация протоколов у AXIS 240.

 -hard
Осуществляется полная перезагрузка AXIS 240.

 Пример

# Это программа перезагружает AXIS 240 
# один раз в день. 
0 0 * * * : 
reset -hard; 

sleep

Эта команда добавляет паузу в выполнение CRON-скрипта.  Это команда обычно используется, когда необходимо убедиться, что предыдущая команда закончит свое выполнение до продолжение исполнения скрипта.

Синтаксис
sleep <seconds>;

 Опции:

 <seconds>
Задает количество секунд ожидания перед началом выполнения следующей команды в данной процедуре.

Пример

# Эта команда приводит к 30 секундной паузе 
# в выполнении CRON скрипта. 
* * * * * : 
sleep 30; 

snapshot

Эта команда обновляет изображение lastshot.jpg.

 Синтаксис
snapshot [-l LOOPTIME] [-t TOTALTIME] [-cam CAMERANUMBER] [IMAGE];

 Опции:

 -l
Задает время между двумя последовательными обновлениями изображений.

 -t
Задает длительность команды. Формат: h<hours(часы)>m<minutes(минуты)> s<seconds(секунды)>.

 -cam
Задает номер камеры, т.е. 1-5. Если отсутствует, то используется базовая камера.

 IMAGE
Задает тип изображения: fullsize.jpg, halfsize.jpg, hugesize.jpg или zoom.jpg.

Пример 1

# Это каманда обновляет изображение lastshot.jpg 
# на изображение fullsize с камеры 2. 
* * * * * : 
snapshot fullsize.jpg -cam 2; 

Пример 2

# В течение обной минуты с интервалом в дву секунды 
# изображение lastshot заменяется на halfsize.jpg 
* * * * * : 
snapshot -l s2 -t m1 halfsize.jpg; 

[Начало] [Предыдущая] [Следующая] [Содержание] [Серверы Камер]


Все технические вопросы посылайте в адрес:

AXIS Internatinal Tech-Support или Техническая поддержка AXIS в Компании TerraNet

Возврат на первую страницу
© TerraNet
webmaster@terranet.ru
Tel: +7 499 1909986, +7 495 7691306 Fax: +7 499 1909986
125367, Москва, Полесский проезд дом 16 офис 309