UNPKG

camstreamerlib

Version:

Helper library for CamStreamer ACAP applications.

58 lines (57 loc) 2.59 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.AxisCameraStationEvents = void 0; const DefaultAgent_1 = require("../DefaultAgent"); const common_1 = require("../internal/common"); class AxisCameraStationEvents { constructor(sourceKey, opt = {}) { this.sourceKey = sourceKey; if ((0, common_1.isClient)(opt)) { this.client = opt; } else { this.client = new DefaultAgent_1.DefaultAgent(opt); } } sendEvent(data, eventType) { return __awaiter(this, void 0, void 0, function* () { const dateString = this.getDate(); const event = { addExternalDataRequest: { occurrenceTime: dateString, source: this.sourceKey, externalDataType: eventType, data: data, }, }; const eventData = JSON.stringify(event); const res = yield this.client.post('/Acs/Api/ExternalDataFacade/AddExternalData', eventData, undefined, { 'Content-Type': 'application/json', 'Content-Length': eventData.length.toString(), }); if (!res.ok) { throw new Error(`ACS status code: ${res.status}`); } }); } getDate() { const date = new Date(); const year = date.getUTCFullYear(); const month = (0, common_1.pad)(date.getUTCMonth() + 1, 2); const day = (0, common_1.pad)(date.getUTCDate(), 2); const hours = (0, common_1.pad)(date.getUTCHours(), 2); const minutes = (0, common_1.pad)(date.getUTCMinutes(), 2); const seconds = (0, common_1.pad)(date.getUTCSeconds(), 2); return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; } } exports.AxisCameraStationEvents = AxisCameraStationEvents;