Project

General

Profile

Импорт из текстового файла

fileimport_ru.png

Данная функция используется для импорта расписания из текстового файла, который создан некоторой программой генерации расписаний, например, системой ротации музыки PowerGold или программой «1С: Реклама + Трафик». Модуль Импорт Расписания имеет очень гибкую настройку, позволяющую выбрать типы импортируемых полей, блоков и многое другое. Модуль может быть настроен на импорт практически любого файла известного формата, где находится что-либо, напоминающее расписание. Главное условие состоит в том, что в этом файле должны использоваться 1 строчка текста на 1 элемент расписания и его структура должна повторяться от строчки к строчке.

В особых случаях для использования импорта расписания необходимо написание специального препроцессора, выполняющего дополнительную обработку исходного файла для согласования форматов. Эта процедура должна обсуждаться на начальном этапе работы и может потребовать дополнительной оплаты со стороны заказчика.

Для работы модуля Импорт Расписания на определенном рабочем месте необходим модуль Расписание (DSM-005-15).

Импорт по имени файла из файловой системы в уже созданное расписание

Пример текста из файла импорта (должен быть в формате .txt):

"07:21:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3"
"07:21:00","Реклама Номер 2","D:\Реклама\Агентство\comm_2.mp3"
"07:21:00","Реклама Номер 3","D:\Реклама\Агентство\comm_3.mp3"
"08:21:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3"
"08:21:00","Реклама Номер 6","D:\Реклама\Наша реклама\comm_6.mp3"
"08:21:00","Реклама Номер 7","D:\Реклама\Наша реклама\comm_7.mp3"
"08:36:00","Реклама Номер 4","D:\Реклама\Агентство\comm_4.mp3"
"08:36:00","Реклама Номер 2","D:\Реклама\Агентство\comm_2.mp3"
"08:36:00","Реклама Номер 5","D:\Реклама\Наша реклама\comm_5.mp3"
"08:36:00","Реклама Номер 8","D:\Реклама\Наша реклама\comm_8.mp3"
"09:00:00","Новости в Начале Часа","D:\Реклама\Новости\news_09.mp3"
"09:21:00","Реклама Номер 9","D:\Реклама\Наша реклама\comm_9.mp3"
"09:21:00","Реклама Номер 6","D:\Реклама\Наша реклама\comm_6.mp3"
"09:21:00","Реклама Номер 3","D:\Реклама\Агентство\comm_3.mp3"
"09:36:00","Реклама Номер 4","D:\Реклама\Агентство\comm_4.mp3"
"09:36:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3"
"09:36:00","Реклама Номер 2","D:\Реклама\Агентство\comm_2.mp3"
"10:21:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3"
"10:21:00","Реклама Номер 6","D:\Реклама\Наша реклама\comm_6.mp3"
"10:21:00","Реклама Номер 2","D:\Реклама\Агентство\comm_2.mp3"

Разберем структуру: "07:21:00","Реклама Номер 1","D:\Реклама\Агентство\comm_1.mp3"

"07:21:00" - это время блока, куда встанет элемент
"," - это разделитель
"Реклама Номер 1" - это название элемента
"D:\Реклама\Агентство\comm_1.mp3"путь до физического файла

Импорт в готовое расписание можно разделить на следующие шаги:

1. Перед процессом импортирования нам требуется создать «Формат импорта», для этого:

  • Выбираем пункт «Сервис» – далее «Форматы импорта», видим окно – нажимаем «добавить»

Форматы импорта.bmp

  • Видим окно «Настройки импорта»

Настройки импорта.bmp

  • Во вкладке «Разбор файла» вбиваем «Название формата»(любое название), и добавляем в окно «Поля:» кнопкой «Добавить» поля импорта.

В нашем примере нам требуются следующие поля:

- Время
- Название
- Имя файла

Разделитель оставляем по умолчанию т.к. в нашем примере он именно такой «,». (В случае использования другого разделителя, укажите требуемый)

Начиная с 2.17.2.180 допускается использовать escape-символы (такие как \t, \a, \b, \v, \f ) в качестве разделителя при импорте текстовых файлов. Например, \t - для использования табуляции в качестве разделителя.

Остальные настройки следует оставить по умолчанию.

Нажимаем «ОК» тем самым сохранив наш формат.

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

В примере есть 7 временных промежутков, соответственно мы создаем 7 блоков тех типов, которые нам требуются:

  • Рекламный блок на 07:21:00
  • Рекламный блок на 08:21:00
  • Рекламный блок на 08:36:00
  • Новостной блок на 09:00:00
  • Рекламный блок на 09:21:00
  • Рекламный блок на 09:36:00
  • Рекламный блок на 10:21:00

Это идеальная ситуация, время блоков может отличаться но логика импорта довольна прямолинейна и элементы будут вставлены в наиболее близкие относительно времени в файле блоки. (Если блок создан на 10:30:00 туда попадут элементы с временем 10:21:00 из нашего файла)

Обратите внимание, что элементы не будут попадать в блоки с нулевой длительностью, даже при совпадении времени блока.

  • Далее выбираем меню расписания «…»

меню расписания.bmp

  • Выбираем пункт «Импорт из текстового файла»

Выбираем из списка «Формат импорта», выбираем файл, который мы импортируем.

Далее мы можем сохранить пресет настроек, для этого просто вводим название в поле «пресет» и нажимаем кнопку «сохранить».

Нажимаем кнопку «ОК»

Импорт из файловой системы по имени файла в пустое расписание с использованием команд управления

Пример текста из файла импорта (должен быть в формате .txt):

"BTA","07:21:00",""
"F","","comm_1.mp3"
"F","","comm_2.mp3"
"F","","comm_3.mp3"
"E","",""
"BTA","08:21:00",""
"F","","comm_1.mp3"
"F","","comm_6.mp3"
"F","","comm_7.mp3"
"E","",""
"BTA","08:36:00",""
"F","","comm_4.mp3"
"F","","comm_2.mp3"
"F","","comm_5.mp3"
"F","","comm_8.mp3"
"E","",""
"BTA","09:00:00",""
"F","","news.mp3"
"E","",""
"BTA","09:21:00",""
"F","","comm_9.mp3"
"F","","comm_6.mp3"
"F","","comm_3.mp3"
"E","",""
"BTA","09:36:00",""
"F","","comm_4.mp3"
"F","","comm_1.mp3"
"F","","comm_2.mp3"
"E","",""
"BTA","10:21:00",""
"F","","comm_1.mp3"
"F","","comm_6.mp3"
"F","","comm_2.mp3"
"E","","" 

Разберем структуру:

"BTA","07:21:00",""  - строка параметров добавляемого блока

"BTA" – ключи управления
"," – разделитель
"07:21:00" – время начала блока
"" – имя блока (в данном случае нет названия)

"F","","comm_1.mp3" - строка параметров добавляемого элемента

"F" – ключ, обозначающий аудио элемент
"" – время выхода, в данном случае ставим пустые т.к. элементы будут в рамках блока
"comm_1.mp3" – имя файла

"E","","" - строка параметров окончания блока

"E" – ключ, означает окончание блока
Далее идут "","" пустые строки (требуются для того, чтобы распознавание производилось корректно)

Процесс импорта:

1.Создаем формат импорта под наш файл

  • Выбираем пункт «Сервис» – далее «Форматы импорта», видим окно – нажимаем «добавить»

Форматы импорта.bmp

  • Видим окно «Настройки импорта»

Настройки импорта.bmp

  • Во вкладке «Разбор файла» вбиваем «Название формата» (любое название), и добавляем в окно «Поля:» кнопкой «Добавить» поля импорта.

В нашем примере нам требуются следующие поля:

- Управление
- Время
- Имя файла

Разделитель оставляем по умолчанию т.к. в нашем примере он именно такой «,». (В случае использования другого разделителя, укажите требуемый).

Начиная с 2.17.2.180 допускается использовать escape-символы (такие как \t, \a, \b, \v, \f ) в качестве разделителя при импорте текстовых файлов. Например, \t - для использования табуляции в качестве разделителя.

  • Переходим на вкладку элемент

Выбираем «Каталог хранения фонограмм по умолчанию» или «Каталоги, в которых следует искать фонограммы» (при указанном каталоге мы можем не указывать полный путь до элемента в текстовом файле)

Важно, что одновременно данные поля не следует использовать:

«Каталог хранения фонограмм по умолчанию» используется в случае уверенности, что требуемая фонограмма находится именно в данном разделе. Произойдет следующее: ПО подставит к пути, который указан по умолчанию имя из файла и так его вставит в расписание, в случае отсутствия фонограммы элемент будет отмечен красным и не проиграется. (Такой способ можно использовать например когда фонограмм еще нет и вставить их позднее в элемент)

«Каталоги, в которых следует искать фонограммы» используется для поиска музыкального файла в папках из списка иерархически т.е. если ПО найдет файл с подходящим названием в первом каталоге, то в остальных поиск произведен не будет.

  • Переходим на вкладку «Обозначения»

На данной вкладке указаны ключи на различные действия, в нашем примере мы используем:

B – Начало блока
T – Фиксировать время начала
A – В свойствах блока в параметрах привязки ко времени устанавливается галочка на пункте «Не позднее»
F – элемент Аудио
E – окончание блока

Эти обозначения можно менять и настраивать.

  • Нажимаем «ОК», сохраняя шаблон

2. Приступаем к импорту

  • Выбираем меню расписания «…»

меню расписания.bmp

  • Выбираем пункт «Импорт из текстового файла»
  • Выбираем из списка «Формат импорта», выбираем файл, который мы импортируем.
  • Далее мы можем сохранить пресет настроек, для этого просто вводим название в поле «пресет» и нажимаем кнопку «сохранить».
  • Нажимаем кнопку «ОК»

Создаются блоки без типа, наполненные указанными в файле импорта элементами. Чтобы блоки создавались с определенным типом требуется в параметрах блока в текстовом файле добавить соответствующую букву, которая указана в формате импорта на вкладке «Обозначения» (Например  "BTAN","07:21:00",""  – будет создан блок типа Новости)

Установка усиления и нормализация при импорте в расписание

Импорт из текстового файла позволяет установить коэффициент усиления или выполнить нормализацию звука импортируемого элемента. Нормализация может быть выполнена либо по пиковому уровню, либо по громкости в зависимости от полей, присутствующих в импортируемом файле. Эти параметры устанавливаются в особом порядке, после завершения импорта и синхронизации с МБД, таким образом они применяются уже поверх данных, скопированных из БД в расписание.
Этим параметрам соответствуют поля формата импорта "Усиление (дБ)", "Уровень пиковой нормализации (dBFS)", "Уровень нормализации по громкости (LUFS)".

Это взаимоисключающие параметры, и необходимо использовать только один из них, в противном случае будет применено значение усиления (оно имеет приоритет), а в окно ошибок выдано предупреждение о конфликте.

Примечание: разделителем целой и дробной части в значениях параметров всегда является точка, но не запятая.

Следует отметить, что нормализация элемента - продолжительный процесс, нормализация большого количества элементов может занять существенное время, в течении которого работа с приложением будет невозможна.

Усиление и нормализация применяются только когда элемент связан с реальным файлом. Если при импорте файл не был найден, то эти значения не применяются, но сохраняются в расписании (поля NormalLvl и NormalLufs). Если подходящий файл будет найден спустя некоторое время, потребуется ручной вызов команды Тестировать блоки для того, чтобы применить усиление или нормализацию к импортированным элементам.

После однократного применения эти значения стираются из расписания и при последующих тестах блоков применяться не будут.

Лог редактирования расписания

В логах редактирования применения уровня нормализации отмечается следующим образом:

Operation=Check block items
Reason=Manual
Block content:
    Gain = 0.336235 ««« 0.000000
    NormalLvl = •NO• ««« 0.000000

ВАЖНО! Для добавления элементов в БД с последующей подстановкой в расписание, каждому элементу должен быть присвоен свой ID_Number в текстовом файле. 

Add picture from clipboard (Maximum size: 742 MB)