Difference between revisions of "Release Notes 3.3.0"
Jump to navigation
Jump to search
(Created page with " *Server Updates: *new Arduino I/O Server *new SSH I/O Server *new Honeywell NOTIFIER fire panels I/O Server *new Honeywell Galaxy security panel I/O Server ...") |
|||
(8 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | [[Category: Release Notes]] | |
− | + | == Server Updates == | |
− | + | *new Arduino I/O Server | |
− | + | *new SSH I/O Server | |
− | + | *new Honeywell NOTIFIER fire panels I/O Server | |
− | + | *new Honeywell Galaxy security panel I/O Server | |
− | + | *new SD3 HEPHAIS fire panels I/O Server | |
− | + | *new GKBus I/O Server | |
− | + | *new MODBUS SERVER I/O Server with MODBUS TCP/IP support | |
− | + | *new Arteco Everywhere I/O Server | |
− | + | *the Modbus I/O Server now supports the RTU protocol | |
− | + | *MyHome I/O Server: added support for the L4686SDK gateway | |
− | + | *GSM I/O Server: | |
− | + | **improved AT commands compatibility | |
− | + | **added PUK-unlock functionality | |
− | + | *HWG MONITOR I/O Server: | |
− | + | **new ID.<sensorname>.units = <value> data point | |
− | + | **new ID.model = <value> data point | |
− | + | *System Monitor I/O Server: | |
− | + | **an error event is raised when the server catches an I/O error when saving camera images in the motion directory | |
− | + | *the Paradox EVO driver is now an I/O Server | |
− | + | **new option userlogs. Used to create (userlist) clickable logs to easily control (camera) and (camerapanel) objects for playback | |
− | + | *the Bentel KYO320 driver is now an I/O Server | |
− | + | **new option userlogs. Used to create (userlist) clickable logs to easily control (camera) and (camerapanel) objects for playback | |
− | + | *Tecnoalarm TECNO OUT: | |
− | + | **added support for TP8-88 | |
− | + | **the Tecnoalarm TECNO OUT driver is now an I/O Server | |
− | + | **new option persistentconnection = <true|false>. If true (default is false) the I/O Server will not periodically disconnect and reconnect (periodic disconnection is used to avoid performance degradation on some firmware versions) | |
− | + | **new option userlogs. Used to create (userlist) clickable logs to easily control (camera) and (camerapanel) objects for playback | |
− | + | *RayControl I/O Server: | |
− | + | **improved communication errors handling | |
− | + | **new readinterval option (defaults to 25 msec.) | |
− | + | **new data points: sN.setpoint.winter.max sN.setpoint.winter.min sN.setpoint.summer.max sN.setpoint.summer.min zN.lock | |
− | + | *KNX I/O Server: | |
− | + | **added "read" option for KNX data points to disable read requests from the driver | |
− | + | **added "framedelay" option to set the delay between each frame sent to the KNX bus | |
− | + | *BACnet I/O Server: | |
− | + | **added support for the Relinquish_Default property | |
− | + | *DOMINO I/O Server: | |
− | + | **(temp) object: program mode improved | |
− | + | *SIP I/O Server: | |
− | + | **improved performance of the SSH connection to remote servers | |
− | + | **support of password-based authentication | |
− | + | *hsyco.ini: | |
− | + | **LogMaxAge = N parameter *delete log files older than N days | |
− | + | **names are now case-insensitive | |
− | + | **new optional parameter DatabaseBackup (defaults to false). When true, an hot backup of the core database is automatically executed on a daily basis, saving data in the data_backup directory | |
− | + | **new optional parameter StartupDelay=<sec> | |
− | + | **new optional parameter ExceptionWatchdog=<N> (defaults to 5). After N uncaught exceptions the HSYCO server is killed and restarted. Set to 0 to disable the exception watchdog | |
− | + | **new optional parameter securityLogDailyFiles=<true|false> (defaults to false). When true, the security log is written in daily files named MMDD-security.log | |
− | + | **HTTPServerThreads default changed to 256 | |
− | + | **the # character prefix can be used to disable an id in the following lists: dmxservers, ioservers, cameras, timers, dataloggers, locationbases, commports, slimplayers, irtrans | |
− | + | **new I/O Servers optional parameter ioServersShutdownInactive.ID=<true|false> | |
− | + | **comm ports: new optional timeout parameter for local serial ports: CommPort.ID.Params = speed,bits,stop,parity,flow[,timeout] (defaults to 2 sec.) | |
− | + | **new eventsLoadTimeout optional parameter | |
− | + | **new haDisableFilesSync optional parameter (defaults to false) | |
− | + | *support for application plugins: | |
− | + | **multiple, dynamic loaded Java user classes can be created in the plugins directory | |
− | + | **each plugin directory can have its own www subdirectory with multiple projects | |
− | + | *new Wiring Editor tool | |
− | + | *HSQLDB core SQL engine upgraded to 2.3.0 | |
+ | *improved UTF-8 support | ||
− | + | == EVENTS == | |
− | + | *JavaScript actions and callback functions | |
− | + | *new INIT event, triggered at start-up and every time events.txt is modified | |
− | + | *new DATESET action to set the server's hardware clock | |
− | + | *new CAMERAVIEW event | |
− | + | *new HTTP event | |
− | + | *new ID.unitid.address = bits:<0|1>... syntax to use the Write Multiple Coils function | |
− | + | *new $SUNAZIMUTH$ and $SUNELEVATION$ built-in variables | |
− | + | *new UISESSIONSET action, used in combination with USER events, allows session-based UI control in EVENTS | |
− | + | *new PAGE project = page event, triggered on every page change or reload | |
− | + | *new $HAMASTER$ built-in variable, is set to 1 when master mode or HA not configured, or 0 when slave mode | |
− | + | *new HAACTIVE persistent event, is true when the server is active (see the high availability features) | |
− | + | *new HAACTIVE = [true | false] action, set to false to force a master to become inactive (has no effect on the slave system) | |
− | + | *with counter data loggers, you can use DATALOGGER name = "error" or any other not numeric value to reset the internal delta baseline | |
− | + | *when the original value of the variable and the operator's value are both numbers ending with %, the arithmetic operation will retain the % in the result | |
− | + | ||
− | + | == Java API == | |
− | + | *new callback and methods for session-based UI control: | |
− | + | **public static String userSubmit(String session, String uid, String name, HashMap<String, String> fields) | |
− | + | **public static String userCommand(String session, String uid, String name, String param) | |
− | + | **public static void uiSet(String session, String id, String attr, String value) | |
− | + | **public static void uiClear(String session) | |
− | + | **public static String uiGet(String session, String id, String attr) | |
− | + | **public static void uiClearEvent(String session) called once after the HSYCO deleted session data (due to inactivity or uiClear() called explicitly) when the client restarts updating its state | |
− | + | **pageEvent(String address, String session, String userid, String project, String page) called on every page change or reload | |
− | + | *new varEvent(String name, String value) callback method | |
− | + | *new haActiveEvent(boolean active) callback method | |
− | + | *new haActive(boolean active) action method, set to false to force a master to become inactive (has no effect on the slave system) | |
− | + | *new callback method triggered by the MODBUS SERVER I/O Server: | |
− | + | **byte[] ModbusEvent(InetAddress addr, int unitid, byte[] pdu) | |
− | + | *new httpCallEvent(String host, boolean secure, String query) callback method | |
− | + | *new String urlGet(String url, String user, String password) utility method | |
− | + | *new urlPost(String url, String contenttype, String data, String user, String password) utility method | |
− | + | *new method to set the server's hardware clock: | |
− | + | **public static boolean dateSet(int year, int month, int day, int hour, int minute, int second) | |
− | + | *new callback method triggered on cameras' viewing from the Web interface: | |
− | + | **public static void CameraViewEvent(String camera, boolean active) | |
− | + | *new writeMultipleCoils(String name, int unit, int address, int coils, byte[] bytes) method | |
− | + | *dataLoggerUpdate(String name, Double value) with counter data loggers can receive a null value to reset the internal delta baseline | |
− | + | ||
− | + | == GUI Updates == | |
− | + | *accessibility support, enabled with uiset project.accessibility = true | |
− | + | *support for simplified Chinese | |
− | + | *new "scale" web interface option allows client-side scaling of the GUI size | |
− | + | *the client now works normally even when multiple windows pointing the same HSYCO server are open in the same browser | |
− | + | *new (#uiset ...) project directive allows setting default values for UI objects | |
− | + | *support for project-specific custom.css style files | |
− | + | *new (sliderh) and (sliderv) objects | |
− | + | *it is now possible to set an attribute's value for all objects of a specific type, using UISET "(type).attribute" = "value" | |
− | + | *(scheduler) object: | |
− | + | **can have an id and the "list" attribute is now dynamic | |
− | + | **new dynamic "panel" attribute | |
− | + | **when the width is more than 750px, the user interface changes to a master-detail view | |
− | + | *improved support of "Add to Home Screen" in iOS 6 and 7 | |
− | + | *(image), (imagelink) and (userimage) objects: new draw attribute for server-side dynamic graphics | |
− | + | *(chart) object: add support for line and spline types | |
− | + | *(datalogger) object: | |
− | + | **add support for line and spline types | |
− | + | **data browser mode, toolbar, new UI attributes | |
− | + | *new (paradox) object for the Paradox I/O Server | |
− | + | *new (bentel) object for the Bentel I/O Server | |
− | + | *new (tecnoalarm) object for the Tecnoalarm I/O Server | |
− | + | *support for client-side custom JavaScript code, with index.js files, including User object to explicitly call the server and trigger USER events | |
− | |||
− | + | == Manager == | |
− | + | *copy&paste in Project Editor and File Manager | |
− | + | *multiple files upload, move and delete | |
− | + | *hsyco.ini configuration manager | |
− | + | *integrated system monitor | |
− | + | *integrated wiring editor | |
− | + | *integrated admin configuration pages (users, password, network and clock) | |
− | + | *integrated Knx Utility | |
− | + | *integrated BACnet Utility | |
− | + | *new status browser | |
− | + | *project style: allows skin modifications | |
− | + | *when using the download root backup function, the hsyco.jar file is not saved in the backup.zip file | |
− | + | ||
− | + | == Bug Fixes == | |
− | + | *improved handling of HTTP and HTTPS connections when the maximum number of threads is exceeded | |
− | + | *the UserTimerEvent() callback method was called twice when triggered by a scheduler | |
− | + | *network configuration admin function didn't work on latest Upstart/Debian versions | |
− | + | *improved GUI behavior when accessing a project that is not authorized for a user | |
− | + | *High Availability bug fixes and stability improvements | |
− | + | *fixed a bug that could temporarily stalled the Domino and Contatto I/O Servers when the system clock was reset to an earlier time | |
− | + | *Guardall I/O Server: fixed a bug occurring when an access peripheral is used |
Latest revision as of 16:25, 20 March 2014
Server Updates
- new Arduino I/O Server
- new SSH I/O Server
- new Honeywell NOTIFIER fire panels I/O Server
- new Honeywell Galaxy security panel I/O Server
- new SD3 HEPHAIS fire panels I/O Server
- new GKBus I/O Server
- new MODBUS SERVER I/O Server with MODBUS TCP/IP support
- new Arteco Everywhere I/O Server
- the Modbus I/O Server now supports the RTU protocol
- MyHome I/O Server: added support for the L4686SDK gateway
- GSM I/O Server:
- improved AT commands compatibility
- added PUK-unlock functionality
- HWG MONITOR I/O Server:
- new ID.<sensorname>.units = <value> data point
- new ID.model = <value> data point
- System Monitor I/O Server:
- an error event is raised when the server catches an I/O error when saving camera images in the motion directory
- the Paradox EVO driver is now an I/O Server
- new option userlogs. Used to create (userlist) clickable logs to easily control (camera) and (camerapanel) objects for playback
- the Bentel KYO320 driver is now an I/O Server
- new option userlogs. Used to create (userlist) clickable logs to easily control (camera) and (camerapanel) objects for playback
- Tecnoalarm TECNO OUT:
- added support for TP8-88
- the Tecnoalarm TECNO OUT driver is now an I/O Server
- new option persistentconnection = <true|false>. If true (default is false) the I/O Server will not periodically disconnect and reconnect (periodic disconnection is used to avoid performance degradation on some firmware versions)
- new option userlogs. Used to create (userlist) clickable logs to easily control (camera) and (camerapanel) objects for playback
- RayControl I/O Server:
- improved communication errors handling
- new readinterval option (defaults to 25 msec.)
- new data points: sN.setpoint.winter.max sN.setpoint.winter.min sN.setpoint.summer.max sN.setpoint.summer.min zN.lock
- KNX I/O Server:
- added "read" option for KNX data points to disable read requests from the driver
- added "framedelay" option to set the delay between each frame sent to the KNX bus
- BACnet I/O Server:
- added support for the Relinquish_Default property
- DOMINO I/O Server:
- (temp) object: program mode improved
- SIP I/O Server:
- improved performance of the SSH connection to remote servers
- support of password-based authentication
- hsyco.ini:
- LogMaxAge = N parameter *delete log files older than N days
- names are now case-insensitive
- new optional parameter DatabaseBackup (defaults to false). When true, an hot backup of the core database is automatically executed on a daily basis, saving data in the data_backup directory
- new optional parameter StartupDelay=<sec>
- new optional parameter ExceptionWatchdog=<N> (defaults to 5). After N uncaught exceptions the HSYCO server is killed and restarted. Set to 0 to disable the exception watchdog
- new optional parameter securityLogDailyFiles=<true|false> (defaults to false). When true, the security log is written in daily files named MMDD-security.log
- HTTPServerThreads default changed to 256
- the # character prefix can be used to disable an id in the following lists: dmxservers, ioservers, cameras, timers, dataloggers, locationbases, commports, slimplayers, irtrans
- new I/O Servers optional parameter ioServersShutdownInactive.ID=<true|false>
- comm ports: new optional timeout parameter for local serial ports: CommPort.ID.Params = speed,bits,stop,parity,flow[,timeout] (defaults to 2 sec.)
- new eventsLoadTimeout optional parameter
- new haDisableFilesSync optional parameter (defaults to false)
- support for application plugins:
- multiple, dynamic loaded Java user classes can be created in the plugins directory
- each plugin directory can have its own www subdirectory with multiple projects
- new Wiring Editor tool
- HSQLDB core SQL engine upgraded to 2.3.0
- improved UTF-8 support
EVENTS
- JavaScript actions and callback functions
- new INIT event, triggered at start-up and every time events.txt is modified
- new DATESET action to set the server's hardware clock
- new CAMERAVIEW event
- new HTTP event
- new ID.unitid.address = bits:<0|1>... syntax to use the Write Multiple Coils function
- new $SUNAZIMUTH$ and $SUNELEVATION$ built-in variables
- new UISESSIONSET action, used in combination with USER events, allows session-based UI control in EVENTS
- new PAGE project = page event, triggered on every page change or reload
- new $HAMASTER$ built-in variable, is set to 1 when master mode or HA not configured, or 0 when slave mode
- new HAACTIVE persistent event, is true when the server is active (see the high availability features)
- new HAACTIVE = [true | false] action, set to false to force a master to become inactive (has no effect on the slave system)
- with counter data loggers, you can use DATALOGGER name = "error" or any other not numeric value to reset the internal delta baseline
- when the original value of the variable and the operator's value are both numbers ending with %, the arithmetic operation will retain the % in the result
Java API
- new callback and methods for session-based UI control:
- public static String userSubmit(String session, String uid, String name, HashMap<String, String> fields)
- public static String userCommand(String session, String uid, String name, String param)
- public static void uiSet(String session, String id, String attr, String value)
- public static void uiClear(String session)
- public static String uiGet(String session, String id, String attr)
- public static void uiClearEvent(String session) called once after the HSYCO deleted session data (due to inactivity or uiClear() called explicitly) when the client restarts updating its state
- pageEvent(String address, String session, String userid, String project, String page) called on every page change or reload
- new varEvent(String name, String value) callback method
- new haActiveEvent(boolean active) callback method
- new haActive(boolean active) action method, set to false to force a master to become inactive (has no effect on the slave system)
- new callback method triggered by the MODBUS SERVER I/O Server:
- byte[] ModbusEvent(InetAddress addr, int unitid, byte[] pdu)
- new httpCallEvent(String host, boolean secure, String query) callback method
- new String urlGet(String url, String user, String password) utility method
- new urlPost(String url, String contenttype, String data, String user, String password) utility method
- new method to set the server's hardware clock:
- public static boolean dateSet(int year, int month, int day, int hour, int minute, int second)
- new callback method triggered on cameras' viewing from the Web interface:
- public static void CameraViewEvent(String camera, boolean active)
- new writeMultipleCoils(String name, int unit, int address, int coils, byte[] bytes) method
- dataLoggerUpdate(String name, Double value) with counter data loggers can receive a null value to reset the internal delta baseline
GUI Updates
- accessibility support, enabled with uiset project.accessibility = true
- support for simplified Chinese
- new "scale" web interface option allows client-side scaling of the GUI size
- the client now works normally even when multiple windows pointing the same HSYCO server are open in the same browser
- new (#uiset ...) project directive allows setting default values for UI objects
- support for project-specific custom.css style files
- new (sliderh) and (sliderv) objects
- it is now possible to set an attribute's value for all objects of a specific type, using UISET "(type).attribute" = "value"
- (scheduler) object:
- can have an id and the "list" attribute is now dynamic
- new dynamic "panel" attribute
- when the width is more than 750px, the user interface changes to a master-detail view
- improved support of "Add to Home Screen" in iOS 6 and 7
- (image), (imagelink) and (userimage) objects: new draw attribute for server-side dynamic graphics
- (chart) object: add support for line and spline types
- (datalogger) object:
- add support for line and spline types
- data browser mode, toolbar, new UI attributes
- new (paradox) object for the Paradox I/O Server
- new (bentel) object for the Bentel I/O Server
- new (tecnoalarm) object for the Tecnoalarm I/O Server
- support for client-side custom JavaScript code, with index.js files, including User object to explicitly call the server and trigger USER events
Manager
- copy&paste in Project Editor and File Manager
- multiple files upload, move and delete
- hsyco.ini configuration manager
- integrated system monitor
- integrated wiring editor
- integrated admin configuration pages (users, password, network and clock)
- integrated Knx Utility
- integrated BACnet Utility
- new status browser
- project style: allows skin modifications
- when using the download root backup function, the hsyco.jar file is not saved in the backup.zip file
Bug Fixes
- improved handling of HTTP and HTTPS connections when the maximum number of threads is exceeded
- the UserTimerEvent() callback method was called twice when triggered by a scheduler
- network configuration admin function didn't work on latest Upstart/Debian versions
- improved GUI behavior when accessing a project that is not authorized for a user
- High Availability bug fixes and stability improvements
- fixed a bug that could temporarily stalled the Domino and Contatto I/O Servers when the system clock was reset to an earlier time
- Guardall I/O Server: fixed a bug occurring when an access peripheral is used