Triggers: Difference between revisions

3,031 bytes added ,  9 September 2016
no edit summary
(Created page with "{{Stamp|2016-09-09|4.0.0|1.0.5}} Триггер это скрипт, который запускается при определенных действиях или событ...")
 
No edit summary
Line 1: Line 1:
{{Stamp|2016-09-09|4.0.0|1.0.5}}
{{Stamp|2016-09-09|4.0.0|1.0.5}}
Триггер это скрипт, который запускается при определенных действиях или событиях. В качестве языка для написания скриптов используется '''[https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/1.7 JavaScript 1.7]'''. Результатом выполнения скрипта может быть изменение или создание записи, выполнение http-запроса, валидация данных и другие действия.
Триггер это скрипт, который запускается при определенных действиях или событиях. В качестве языка для написания скриптов используется '''[https://developer.mozilla.org/en-US/docs/Web/JavaScript JavaScript]'''. Результатом выполнения скрипта может быть изменение или создание записи, выполнение http-запроса, создание файла, валидация данных и другие действия.
 
== Создание триггера ==
Каждая библиотека может иметь несколько триггеров, чтобы открыть список триггеров зайдите в библиотеку, откройте меню и выберите пункт '''Триггеры'''.
 
Для создания триггера откройте список триггеров библиотеки и нажмите кнопку '''+'''. После этого необходимо выбрать момент запуска триггера и написать скрипт реализующий ваши потребности.


== Момент запуска триггера ==
== Момент запуска триггера ==
Line 7: Line 12:
; Фаза действия : определяет более точный момент срабатывания триггера. Для каждого типа Действия доступны свои фазы.
; Фаза действия : определяет более точный момент срабатывания триггера. Для каждого типа Действия доступны свои фазы.


== Выполнение скрипта ==
=== Выполнение скрипта ===
Фаза в которую запускается триггер также определяет то, как будет выполняться скрипт - синхронно или асинхронно.  
Фаза в которую запускается триггер также определяет то, как будет выполняться скрипт - синхронно или асинхронно.  
; Синхронное выполнение скрипта : приложение приостановить взаимодействие с пользователем на время выполнения скрипта. Не рекомендуется в таких скриптах выполнять длительные операции.
; Синхронное выполнение скрипта : приложение приостановить взаимодействие с пользователем на время выполнения скрипта. Не рекомендуется в таких скриптах выполнять длительные операции.
; Асинхронное выполнение скрипта :  скрипт запускается в фоновом режиме, приложение не приостанавливает взаимодействие с пользователем. Обычно асинхронно выполняются скрипты в последних фазах действия.
; Асинхронное выполнение скрипта :  скрипт запускается в фоновом режиме, приложение не приостанавливает взаимодействие с пользователем. Обычно асинхронно выполняются скрипты в последних фазах действия.
== Безопасность ==
Некоторые функции доступные из скриптов (операции с файлами, выполнение http-запросов, доступ к другим библиотекам) в целях безопасности требуют соответствующих разрешений.
Эти разрешения пользователь должен установить вручную для каждой библиотеки отдельно.
Чтобы открыть диалог установки разрешений для скриптов - откройте список триггеров библиотеки  и нажмите кнопку '''Щит''' на тулбаре. Установка разрешений должна выполняться на каждом устройстве отдельно. Выбранные разрешения не синхронизируются между устройствами.
=== Разрешения для скриптов ===
; Libraries : Определяет какие библиотеки помимо родной будут доступны скрипту. Вы можете предоставить доступ ко всем библиотекам или выбрать определенные библиотеки. Данное разрешение требуется для функции libByName.
; Read files : Предоставляет скрипту доступ на чтение файлов с запоминающего устройства. Данное разрешение требуется для функции file.
; Write files : Предоставляет скрипту доступ на создание и изменение файлов в запоминающем устройстве. Данное разрешение требуется для функции file.
; Network : Предоставляет скрипту право выполнять http запросы. Данное разрешение требуется для функции http.
Установка разрешений должна выполняться на каждом устройстве отдельно. Выбранные разрешения не синхронизируются между устройствами.