Files
scrypted/plugins/core/src/builtins/javascript.ts
2022-06-25 14:17:24 -07:00

25 lines
798 B
TypeScript

import { Logger, EventDetails, ScryptedDevice } from "@scrypted/sdk";
import { Automation } from "../automation";
import { scryptedEval } from "../scrypted-eval";
export class AutomationJavascript {
eventSource: ScryptedDevice;
eventDetails: EventDetails;
eventData: any;
log: Logger;
constructor(public automation: Automation, eventSource: ScryptedDevice, eventDetails: EventDetails, eventData: any) {
this.eventSource = eventSource;
this.eventDetails = eventDetails;
this.eventData = eventData;
}
async run(script: string) {
return (await scryptedEval(this.automation, script, {
eventDetails: this.eventDetails,
eventData: this.eventData,
eventSource: this.eventSource,
})).value;
}
}