UNPKG

@joergmittaglawo/dmvconfig

Version:

DMV Configuration scripts for Lawo V__matrix Distributed Multiviewers.

110 lines 6.67 kB
"use strict"; /** * Runs the Monitoring Objects Configuration * @packageDocumentation * * @version 0.0.0-alpha.0 * @date 2020-04-18 * @author Mittag, Jörg (Lawo) <joerg.mittag@lawo.com> * @license SPDX-License-Identifier: MIT */ Object.defineProperty(exports, "__esModule", { value: true }); exports.runMosConfig = void 0; /** * Runs the Monitoring Objects Configuration * * @param config The DMV Configuration * @param master An open VMatrix connection to the cluster master */ async function runMosConfig({ monitoringObjects: mos }, master) { console.log('Configuring Monitoring Objects'); for (let idx = 0; idx < mos.length; idx++) { await master.cluster.global.configuration.monitoring_objects.create_row({ name: `MO ${idx}`, index: idx, }); } /* await Promise.all( mos.map( (_, idx) => master.cluster.global.configuration.monitoring_objects.create_row( { "name": `MO ${idx}`, "index": idx, } ) ) ); */ let i = 0; for (const { audio, video: { alarms: { notAssignedSource = true, lostSource = true, unexpectedSourceStandard = { enable: true, videoStandard: 'HD1080i50' }, tallySource = false, frozenSource = { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, }, blackSource = { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, }, }, } = { alarms: { notAssignedSource: true, lostSource: true, unexpectedSourceStandard: { enable: true, videoStandard: 'HD1080i50', }, tallySource: false, frozenSource: { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, }, blackSource: { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, }, }, }, } of mos) { await master.cluster.global.configuration.monitoring_objects.row(i).video.row(0).alarms.not_assigned_source.write({ enable: notAssignedSource }); await master.cluster.global.configuration.monitoring_objects.row(i).video.row(0).alarms.lost_source.write({ enable: lostSource }); await master.cluster.global.configuration.monitoring_objects.row(i).video.row(0).alarms.unexpected_source_standard.write({ enable: unexpectedSourceStandard.enable ?? true, video_standard: unexpectedSourceStandard.videoStandard ?? 'HD1080i50' }); await master.cluster.global.configuration.monitoring_objects.row(i).video.row(0).alarms.tally_source.write({ enable: tallySource ?? false }); await master.cluster.global.configuration.monitoring_objects.row(i).video.row(0).alarms.frozen_source.write({ enable: frozenSource.enable ?? true, activate_duration: frozenSource.activateDuration ?? 2000000000, deactivate_duration: frozenSource.deactivateDuration ?? 1000000000 }); await master.cluster.global.configuration.monitoring_objects.row(i).video.row(0).alarms.black_source.write({ enable: blackSource.enable ?? true, activate_duration: blackSource.activateDuration ?? 2000000000, deactivate_duration: blackSource.deactivateDuration ?? 1000000000 }); await audio.flatMap(({ channels: { start = 0, num = 8 }, alarms: { notAssignedSource = true, lostSource = true, unexpectedSourceStandard = true, tallySource = false, silentSource = { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, level: -60, }, overRangeSource = { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, level: -3, }, underRangeSource = { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, level: -40, }, } = { notAssignedSource: true, lostSource: true, unexpectedSourceStandard: true, tallySource: false, silentSource: { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, level: -60, }, overRangeSource: { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, level: -3, }, underRangeSource: { enable: true, activateDuration: 2000000000, deactivateDuration: 1000000000, level: -40, }, }, }, j) => [ master.cluster.global.configuration.monitoring_objects.row(i).audio.row(j).channel_id_start.write(start), master.cluster.global.configuration.monitoring_objects.row(i).audio.row(j).channels_num.write(num), master.cluster.global.configuration.monitoring_objects.row(i).audio.row(j).alarms.not_assigned_source.write({ enable: notAssignedSource }), master.cluster.global.configuration.monitoring_objects.row(i).audio.row(j).alarms.lost_source.write({ enable: lostSource }), master.cluster.global.configuration.monitoring_objects.row(i).audio.row(j).alarms.unexpected_source_standard.write({ enable: unexpectedSourceStandard }), master.cluster.global.configuration.monitoring_objects.row(i).audio.row(j).alarms.tally_source.write({ enable: tallySource }), master.cluster.global.configuration.monitoring_objects.row(i).audio.row(j).alarms.silent_source.write({ enable: silentSource.enable ?? true, activate_duration: silentSource.activateDuration ?? 2000000000, deactivate_duration: silentSource.deactivateDuration ?? 1000000000, level: silentSource.level ?? -60, }), master.cluster.global.configuration.monitoring_objects.row(i).audio.row(j).alarms.over_range_source.write({ enable: overRangeSource.enable ?? true, activate_duration: overRangeSource.activateDuration ?? 2000000000, deactivate_duration: overRangeSource.deactivateDuration ?? 1000000000, level: overRangeSource.level ?? -3, }), master.cluster.global.configuration.monitoring_objects.row(i).audio.row(j).alarms.under_range_source.write({ enable: underRangeSource.enable ?? true, activate_duration: underRangeSource.activateDuration ?? 2000000000, deactivate_duration: underRangeSource.deactivateDuration ?? 1000000000, level: underRangeSource.level ?? -40, }), ]); i++; } } exports.runMosConfig = runMosConfig; exports.default = runMosConfig; //# sourceMappingURL=mos.js.map