Skip to content

captchronic/ioBroker.javascript

 
 

Repository files navigation

Logo

Javascript Script Engine

Number of Installations Number of Installations NPM version

Test and Release Translation status Downloads This adapter uses Sentry libraries to automatically report exceptions and code errors to the developers. For more details and for information how to disable the error reporting see Sentry-Plugin Documentation! Sentry reporting is used starting with js-controller 3.0.

Executes Javascript, Typescript Scripts.

Documentation

Forbidden directories for Script Filesystem Mirroring

The Script Filesystem Mirroring will store all Source Files of the Scripts in your Filesystem to allow you to edit the Files in your favourite Script editor beside the Web-Editor. All changes are synced in both directions.

When enabling the Script Filesystem mirroring please make sure to create a dedicated new directory and do not use an existing directory with other content. Please also make sure that no other script or process changes files in the provided directory to prevent access issues. Any location needs to be writable by the "iobroker" user!

Since v5.5.0 of the JavaScript adapter the following locations (relative to the ioBroker Base directory, usually /opt/iobroker) are not allowed to be used:

  • The ioBroker base directory itself and any path above!
  • ./iobroker-data itself, custom subdirectory (choose a name that do not overlap with any adapter!)
  • ./iobroker-data/backup-objects or anything below
  • ./iobroker-data/files or anything below
  • ./iobroker-data/backitup or anything below
  • ./backups or anything below
  • ./node_modules or anything below
  • ./log or anything below

How to build (only for developers)

Just run npm i in the root and in the src folders.

And then call npm run build.

Todo

  • Goto current line in debugger
  • heating profile (future releases)
  • ...

Changelog

WORK IN PROGRESS

  • (Apollon77) Prevented duplicate schedule triggering with inaccurate RTC clocks
  • (Apollon77) Fixed sendToAsync and sendToHostAsync
  • (Apollon77) Added rename/renameFile(Async) methods
  • (Apollon77) Deprecated get/setBinaryState(Async) methods and log a message on usage. Use Files instead!
  • (Apollon77) Deprecated usage of own states in javascript.X.scriptEnabled/Problem and log a message on usage. Use own states in 0_userdata.0 instead!

6.1.4 (2022-11-14)

  • (bluefox) Corrected small error in rules
  • (bluefox) Tried to fix debug mode

6.1.3 (2022-11-03)

  • (Apollon77) Prevent adapter crash when script could not be compiled

6.1.2 (2022-11-03)

  • (bluefox) Added ukrainian translation

6.1.0 (2022-11-03)

  • (Apollon77) Add a configurable check for number of setStates per Minute to prevent scripts from taking down ioBroker. Default are 1000 setState per minute. Only stops if the number is reached 2 minutes in a row!
  • (Apollon77) Add createAlias method to create aliases for states
  • (Apollon77) Add setStateDelayed to selector
  • (Apollon77) Add options to exec command
  • (Apollon77) Fix issues with cancelling schedules when stopping scripts
  • (bluefox) Corrected debug mode

6.0.3 (2022-09-14)

  • (AlCalzone) Downgrade Typescript to prevent errors with global typescript scripts

License

The MIT License (MIT)

Copyright (c) 2014-2023 bluefox [email protected],

Copyright (c) 2014 hobbyquaker

About

Script engine for JavaScript and Blockly

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.1%
  • HTML 1.5%
  • Other 0.4%