===== Внешний источник данных =====
==== Описание ====
Внешний источник данных (ВИ) - хранилище настроек для заданий в виде файла, который имеет определенную структуру в формате [[http://ru.wikipedia.org/wiki/JSON|JSON]] и использование которого позволяет расширить возможности настройки заданий.
==== Структура ====
^Свойство ^Тип ^Назначение ^
|Items |Массив объектов типа [[ru:help:externalsource:esitem]] |Представляет собой набор параметров выполнения задания. Необходим для вариативности параметров. |
|Domains |Массив объектов типа [[ru:help:externalsource:esdomain]] |Определяет, в пределах какого домена будет выполняться задание. |
|Pages |Массив объектов типа [[ru:help:externalsource:espage]] |Определяет, какая страница домена будет загружена первой при выполнении задания |
|Referers |Массив объектов типа [[ru:help:externalsource:esreferer]] |Определяет, какой источник будет использован, при загрузке первой страницы |
|EntryPoints |Массив объектов типа [[ru:help:externalsource:esentrypoint]] |Определяет, какой источник и какая стартовая страница будут использованы при выполнении задания |
|Paths |Массив объектов типа [[ru:help:externalsource:espath]] |Определяет, какой путь будет пройден при выполнении задания до клика |
|AfterPaths |Массив объектов типа [[ru:help:externalsource:esafterpath]] |Определяет, какой путь будет пройден при выполнении задания после клика |
|UserAgents |Массив объектов типа [[ru:help:externalsource:esuseragent]] |Определяет параметры браузера и ОС, которые будут использоваться при выполнении задания |
|CheckPages |Массив объектов типа [[ru:help:externalsource:escheckpage]] |Указывает страницы, доступность которых необходимо проверить, прежде чем начать выполнение задания |
|ExMasks |Массив String |Указывает, ссылки каких масок необходимо игнорировать при выполнении задания |
|Extensions |Массив String |Указывает, какие фильтры расширений необходимо применить при выполнении задания |
|ExExtensions |Массив String |Указывает, какие фильтры расширений необходимо снять при выполнении задания |
|MimeTypes |Массив String |Указывает, какие MIME фильтры необходимо применить при выполнении задания |
|ExMimeTypes |Массив String |Указывает, какие MIME фильтры необходимо снять при выполнении задания |
|URLFilters |Массив String |Указывает, какие URL фильтры необходимо применить при выполнении задания |
|ExURLFilters |Массив String |Указывает, какие URL фильтры необходимо снять при выполнении задания |
==== Дополнительно ====
* Файл ВИ должен быть доступен по прямой ссылке
* Файл должен быть в кодировке [[http://ru.wikipedia.org/wiki/UTF-8|UTF-8]] без BOM
* Файл ВИ можно упаковать в архив .zip, но без пароля.
* ВИ можно создать с помощью [[http://esg.waspace.net|генератора]], однако там доступны не все функции
==== Примеры ====
{"Items":
[
{
"Domains":[
{
"Domain":"",
"Priority":1
},
{
"Domain":"",
"Priority":1
},
...,
{
"Domain":"",
"Priority":1
}
],
"Pages":[
{
"Page":"",
"Priority":1
},
{
"Page":"",
"Priority":1
},
...,
{
"Page":"",
"Priority":1
}
],
"Paths":[
{
"Path":[
"",
"",
"<...>",
""
],
"Priority":1
},
{
"Path":[
"",
"",
"<...>",
""
],
"Priority":1
},
...,
{
"Path":[
"",
"",
"<...>",
""
],
"Priority":1
}
],
"AfterPaths":[
{
"AfterPath":[
"",
"",
"<...>",
""
],
"Priority":1
},
{
"AfterPath":[
"",
"",
"<...>",
""
],
"Priority":1
},
...,
{
"AfterPath":[
"",
"",
"<...>",
""
],
"Priority":1
}
],
"UserAgents":[
{
"UserAgent":"",
"Priority":1
},
{
"UserAgent":"",
"Priority":1
},
...,
{
"UserAgent":"",
"Priority":1
}
],
"Referers":[
{
"Referer":"",
"Priority":1
},
{
"Referer":"",
"Priority":1
},
...,
{
"Referer":"",
"Priority":1
}
],
"CheckPages":[
{
"Page":"",
"ExpectedIP":"",
"IncludedText":"",
"UserAgent":"",
"Priority":1
},
{
"Page":"",
"ExpectedIP":"",
"IncludedText":"",
"UserAgent":"",
"Priority":1
},
...,
{
"Page":"",
"ExpectedIP":"",
"IncludedText":"",
"UserAgent":"",
"Priority":1
},
],
"ExMasks":[
"",
"",
...,
""
],
"Extensions":[
"",
"",
...,
""
],
"ExExtensions":[
"",
"",
...,
""
],
"MimeTypes":[
"",
"",
...,
""
],
"ExMimeTypes":[
"",
"",
...,
""
],
"URLFilters":[
"",
"",
...,
""
],
"ExURLFilters":[
"",
"",
...,
""
]
}
]
}
{"Items":
[
{
"Pages":[
{
"External":"http://files.waspace.net/pages.txt"
}
],
"Paths":[
{
"Path":["link","page","go/?","page"],
"Priority":50
},
{
"Path":["link","page"],
"Priority":30
}
],
"AfterPaths":[
{
"AfterPath":["/","/","/"]
}
],
"UserAgents":[
{
"External":"http://files.waspace.net/useragents.txt"
}
],
"Referers":[
{
"External":"http://files.waspace.net/referers.txt"
}
],
"CheckPages":[
{
"Page":"waspace.net",
"ExpectedIP":"178.248.233.33"
}
],
"ExMasks":["vk.com"],
"Extensions":[".swf",".css"],
"ExExtensions":[".png"],
"MimeTypes":["application"],
"ExMimeTypes":["image/png"],
"URLFilters":["docs"],
"ExURLFilters":["waspace.net/"],
}
]
}