Вопрос касательно api

Доброе утро, вопрос касательно запуска задания по api, допустим есть в расписании элемент alarm, нужно что бы софт его запускал по верх эфира но только по запросу из api, как будет выглядеть команда запуска?
Спасибо.
 
Объясню суть есть программа мониторинга тревоги (На скрине) она может запускать команду или веб хук при обнаружении сигнала тревог и запускать файл через веб хук, хотели её совместить с боссом
 

Вложения

  • Точечный рисунок.png
    Точечный рисунок.png
    28,9 КБ · Просмотры: 116
Объясню суть есть программа мониторинга тревоги (На скрине) она может запускать команду или веб хук при обнаружении сигнала тревог и запускать файл через веб хук, хотели её совместить с боссом
Это EasyCaster-Alarm?
 
Доброе утро, вопрос касательно запуска задания по api, допустим есть в расписании элемент alarm, нужно что бы софт его запускал по верх эфира но только по запросу из api, как будет выглядеть команда запуска?
Спасибо.
Настраиваете задание с опцией поверх эфира, и потом его дергаете по апи обычной командой запуска задания..
 
Доброе утро, вопрос касательно запуска задания по api, допустим есть в расписании элемент alarm, нужно что бы софт его запускал по верх эфира но только по запросу из api, как будет выглядеть команда запуска?
Запуск заданий через API будет в соответствии с настройками задания. Если нужно запускать поверх эфира, а задание так не настроено - можете создать еще одно задание (сделать копию), и в нем включить опцию "Поверх эфира". Само задание можно выключить, чтобы запускать его только через API.
 
Напишу здесь, дабы не плодить темы. Поискал. Не нашёл ни здесь ни в англоязычной части. А есть более подробное (и актуальное) описание API, нежели приводится здесь?

К примеру, разбираюсь с командой playbackinfo.

Приходят данные:

<playback pos="1080" len="345425" state="pause" playlistpos="2" streams="2" netstream="n/a" playingtimeleft="4036830">

Вот эти числа это в чём? В каких попугаях (в миллисекундах?) и где точка отсчёта? playback pos относительно всего всего плейлиста или текущего трека? Метод научного втыка конечно прекрасен, но детальное описание сэкономило бы просто вагон времени...
 
Вот эти числа это в чём? В каких попугаях (в миллисекундах?) и где точка отсчёта? playback pos относительно всего всего плейлиста или текущего трека? Метод научного втыка конечно прекрасен, но детальное описание сэкономило бы просто вагон времени...
pos, len в миллисекундах, playlistpos - номер трека в плейлисте.
 
номер трека в плейлисте
Благодарю, с этим вроде разобрался.

Следующий вопрос.

В API предусмотрена возможность создания задания (schedule&type=add)

И это одно из наиболее непонятных мест. Команда list приносит в каждом задании аж 65 ключей. Какие-то из них явно управляющие, какие-то информационные. Какие-то вообще непонятно чего делают (напр. Imm, bRepeat, Enqueue) И я понимаю, что это впрямую ваши внутренние переменные, значения которых вы прекрасно знаете. Так вот собсна вопрос:

Как правильно через API создать задание, передав при этом нужные параметры такого задания? Напр., время запуска, критерии повторения, критерии самоликвидации и пр.? schedule&type=add&????
Можно ли при этом передавать только управляющие ключи? Или нужно передавать обратно все 65 ключей?

При этом хорошо бы понимать значения ключей. Какие-то по названиям (к счастью) самоочевидны, какие-то сильно менее самоочевидны (см. выше)

P.S. Опять же поною на тему "хорошо бы детальное описание". Может есть всё же какая-то полу-секретная док-ция в части описания этих вот переменных и типов и значений, которые они принимают?

Код:
[EnabledEvent] => False
[UseDate] => False
[AdditionalTime] =>
[EveryYear] => False
[Imm] => False
[Above] => True
[FileName] => saytime=C:\Program Files\RadioBOSS\Presets\Time
[MuteLev] => 50
[DelPrev] => False
[DoNotRunIfStopped] => False
[bRepeat] => False
[nRepeatPer] => 10
[DoNotMarkAsScheduled] => False
[nRepeat] => 1
[RepeatLimit] => False
[Shuffle] => False
[PausePlaylist] => False
[UseWeeks] => False
[Enqueue] => True
[DelTaskAction] => 0
[DelTaskUseDate] => False
[DelTaskEveryYear] => False
[TaskName] => Clock
[ClearMainPlaylist] => False
[AddToPlaylistEnd] => False
[UseDaysOfWeek] => True
[Hours] => 111111111111111111111111
[Minutes] => 0
[Seconds] => 0
[IsDurationLimit] => False
[DurationLimit] => 0
[TimeType] => 1
[TaskNameAsTitle] => False
[ItemImageIndex] => 11
[FontColor] => -16777208
[BackColor] => -16777211
[GroupName] => Clock
[OverrideRelay] => False
[StartEarlier] => False
[DoNotRunIfHasScheduled] => False
[DTMFOn] => False
[DTMFString] =>
[DTMFOnly] => False
[DTMFExitOn] => False
[DTMFExitString] =>
[MaxTimeWaitOn] => False
[MaxTimeWaitSec] => 0
[MaxTimeWaitAction] => 0
[TimeToStart] =>
[NextRunStr] =>
[IntTimeToStart] => 2147483647
[WasStartedLast] => False
[ManualStart] => 0
[ItemDuration] => -1
[ItemDurationTS] => 0
[UseFillers] => False
[FillersSource] =>
[FillersRecurse] => True
[FillerMaxAmount] => 120
[FillerAllowMax] => False
[Id] => YSVBCOQEKETEZPXJUYSC
[Days] => 1111111
[Weeks] => 00000
[Time] => 2024-04-06 00:00:00
[DelTaskTime] => 2024-04-06 00:00:00
 
Последнее редактирование:
Можно ли при этом передавать только управляющие ключи? Или нужно передавать обратно все 65 ключей?
В качестве шаблона нового задания можно использовать XML из полученного списка задания. В остальном - обязательных параметров нет, можно передавать только нужную вам часть.

"хорошо бы детальное описание". Может есть всё же какая-то полу-секретная док-ция в части описания этих вот переменных и типов и значений, которые они принимают?
Документации в том виде, чтобы ее разместить в файле справки или здесь, нет. Можете создать разные задания с включенными/выключенными опциями, которые вам нужны, и посмотреть какие значения какие поля принимают.
 
Можете создать разные задания с включенными/выключенными опциями, которые вам нужны, и посмотреть какие значения какие поля принимают
Прекрасный подход. Программу можно выпускать в принципе без любой документации, но зато с универсальным напутствием: "Ну вы потыркайте разные галочки, опции - постепенно разберётесь что к чему". 🤦‍♂️ Даже глубоко опенсорсные проекты документируются в разы лучше из элементарного уважения к времени тех людей, которые надумают воспользоваться вашим кодом... Я так понимаю, что помимо исправления ошибок, документирование вашей программы тоже относится к области права, а не обязанности: "мы не обязаны предоставлять документацию к функционалу нашей программы, можем, но не обязаны." Если это так, то это какая-то новая глубина...
 
PS: Наиболее сложная и важная часть API, с самым большим количеством параметров - практически никак не задокументирована... фантастика, конечно... зато всякие свистелки и перделки прекрасно описаны...
 
Прекрасный подход. Программу можно выпускать в принципе без любой документации, но зато с универсальным напутствием: "Ну вы потыркайте разные галочки, опции - постепенно разберётесь что к чему".
В параметрах задания назначение большинства опций можно понять по названию. Какие конкретно опции вас интересуют, назначение которых непонятно?

Из тех, что были в вашем предыдущем сообщении:
  • Imm - запускать задание точно в указанное время
  • bRepeat - повторять каждые
  • Enqueue - поставить в очередь после других заданий
Еще на всякий случай:
  • Above - поверх эфира
  • MuteLev - приглушение плейлиста при "поверх эфира"
  • PausePlaylist - ставить плейлист на паузу при "поверх эфира"
  • DelPrev - удалять имеющися задания в плейлисте
PS: Наиболее сложная и важная часть API, с самым большим количеством параметров - практически никак не задокументирована... фантастика, конечно... зато всякие свистелки и перделки прекрасно описаны...
Здесь дело в том, что это API создавалось в первую очередь для внутреннего использования, когда мы готовили ядро к работе в RadioBOSS Cloud. Для публикации это вообще не предназначалось, как и команды getencoder/setencoder и еще какие-то - они в публичную версию были добавлены просто потому что на это был запрос со стороны пользователей.
 
Назад
Верх