--- title: 'EdgeHub Release Note v2.3' disqus: hackmd --- :memo:EdgeHub Release Note === ## Version: 2.3.11.2 (2025/02/17) ### Device Management #### [Update] * LoRaWAN Worker * Not update the WISE-2200 configuration result after the configuration message is timeout #### [Fix] * LoRaWAN * [#40188] [DPM] The Modbus/RTU setting will show error but the length is not larger than 128 * [#40261] [DPM] Suggest to unify the names of LoRaWAN Configure function on DPM and device configuration on WISE Studio page * [#40253] [DPM] WISE-6610 will send config of WISE-2200 per minute because of the re-send request of EdgeHub * [#40342] [DPM] The 'Start Address' and 'Scan Interval' in Modbus/RTU configuration of WISE-2200 cannot be set to 65535. * Others * [#40152] [DPM] Error occurred if save or dispatch in ADAM IO configure page * [#40079] [DPM] Suggest to add tag name info in the event rule editing page * [#40263] [DPM] Some discrete tags cannot be set an alarm rule value ## Version: 2.3.11 (2025/01/17) ### Device Management #### [New] * For LoRaWAN child devices(WISE-2200-M) * Add the device configuration: Reboot * Add the feature to trigger child devices to upload their device configurations: * When the DPM receives a message from the WISE-6610 and detects that the WISE-6610 has new child devices. * When the user clicks the child device page. * Add the update time of the device configuration * For RS-485 configurations: * Remove the 7 bit option in the data bit since WISE-2200-M does not support it * Add the Protocol field: Modbus/RTU mode, Transparent mode(only for switching to Modbus/RTU mode) * Center API * Add the proxy for the following SSO APIs: * Send the forget user's password email * Input the auth code from the forget password email * Reset the user's password * Activate the inactive user's account * DPM API * Increase the lease TTL value for the etcd connection #### [Update] * For LoRaWAN child devices * For the Modbus/RTU configuration, improve the rule check method * Tag Event rule * Allow the string input in the event rule setting when the tag type is Text. #### [Fix] * LoRaWAN * [#40033] [DPM] The UI keep loading when delete a WISE-6610 and press Add buton to create LoRaWAN * [#40070] [DPM] User can't clear all selected items after select all on Node devices * Others * [#39905] [DPM] Use 1M size to do device task, but it show only support 3000 devices ### Data Management #### [Update] - #### Core - [Subscription] Update trial agreement to v5.1 - [Dataworker] update efk log format - [Dispatcher] Add POST API Trigger for Excessive Device Usage - [Notification] Email notify tenant admin about the device' data count exceeds the threshold #### [Fix] - #### Core - [#39925][Alarm][DM] Complex alarms with string data type parameters are triggered/recovered repeatedly. - [#40016][evaluator][DM] TimeMatch('everyyear','1m1d0s','+08:00') will triger too many tme - #### Data management - [#39809][Parameter][DM] The first created parameter can't be seen until move the scroll bar on right hand side parameter list - [#39899][DM] The data of group address will be error when use 127 length - #### User management - [api-portal] sync ifp tenant user roles must filter from default roles - #### Command center - [#39926][CC] There is no S-Type field(Cannot select DPM/DM data source) in SaaS Composer if the tenant is new created. - [#39530][DM] The data source option items are disappear on "Advantech Ene Dashboard Switch" panel. ## Version: 2.3.10 (2025/01/03) ### Device Management #### [New] * For LoRaWAN child devices * Add following device configurations for WISE-2200-M: * Data update interval * System ACK * RS-485 * Modbus/RTU rules #### [Update] * For LoRaWAN child devices * In the Info tab, add LoRaWAN device class and firmware version fields * Center API * Add the SSO token refresh API #### [Fix] * Event Alarm * [#39715] [DPM] Alarm Status can't be edited after be acked * [#39585] [DPM] The event of parameter won't refresh when switch 2 event page of Edgelink * [#36978] [DPM] The "acknowledge alarm" report rule is different in DM & DPM * Others * [#39872] [DPM] The max size is 5M but it will show error when upload almost 5M size file on batch task and mass deploy ### Data Management #### [Update] - #### Core - [worker] Support iSensingMQTT: Sensor config - [worker] Support iSensingMQTT: multiple rule indexes in one modbusserver_config - [event-dispatcher] Support disabling a device when its data count exceeds the threshold. #### [Fix] - #### Core - [#39895][dbcreator][DM] User can't create new plugin list - [subscribe] Deduction points calculation error - #### Data management - [#39876][DM] It will fail when import object template csv file - [#39841][DM] It will show error when import template on profile management - #### Command center - [#39909][CC] Cannot export alarm report in dashboard alarm panel. ## Version: 2.3.9 (2024/12/20) ### Device Management #### [Update] * For Device Group: * In the Monitor tab, change the name of Parameters event to Tags event. * Security improvement for all K8s Pods * Execute applications as non-root user #### [Fix] * Others * [#39340] [DPM] WISE-4012 AI Channel Settings should be disabled when channel is in AI average mode ### Data Management #### [Update] - #### Core - [Portal] Update EdgeHub start SOP file (2.0 -> 3.0) - [Subscribe] change default quota of free trial to '30 devices' - #### Data management - [Parameter] String parameter support complex alarm #### [Fix] - #### Core - [Evaluator] Non-data thread might crash while receive JSON message with bad format - [dbcreator] 'add column OutputId' command error. - #### Data management - [#39846][DM] It will show error when save the profile with alarm setting - [#39841][DM] It will show error when import template on profile management ## Version: 2.3.8 (2024/12/06) ### Device Management #### [Update] * For LoRaWAN Batch create child devices * Add one Tab for the display of batch creation log * In the Tag tab of My Device, remove the Parameter field. * For My Device and Device Group: * In the Event tab, change the tab name of the Parameters to Tags. * For EdgeLink Project in the File Management * The dispatch of project file is not allowed when the device is offline * Extend the max length of Project name to 32 * Extend the max length of File name to 64 #### [Fix] * Others * [#39631] [DPM] The translation of Firmware is not the same on Simplified Chinese * [#39174] [DPM] Some message aren't translated to Mandarin * [#39647] [DPM] The warning message of Simplified Chinese is not easy to understand * [#39144] [DPM] There is no process bar or other information when doing WISE-2200-M batch import * [#39692] [DPM] There is no deive on device list when use the retry function of file management ### Data Management #### [Update] - #### Core - [Worker] handle isensing general config - [Evaluator] Update description of parameter 'ObjectType' of TotalObjects #### [Fix] - #### Core - [Worker] amqp consumer close not reconnect - [profile-server] When deploying a new environment, some tables failed to be created successfully. - #### User management - [#39584][UM] The role 'Engineer' of user will be removed if disable the user. - [#39578][UM] The role permissions of Engineer isn't correct. - [#39559][UM] There is no any function icon when use the view permission of DPM - #### Command center - [#39760][CC] Dashboard ene alarm panel and switch panel are not found. ## Version: 2.3.7 (2024/11/22) ### Device Management #### [Update] * For LoRaWAN devices * In the child device list, update the display of parent device according to the UI design * Web pages * In My Devices, modify the Tags tab: * Hide the Parameter sub tab since parameters will be automatically generated when tags are created * Add one field: Event rule * If Data management is installed, hide the field of recording rate. * Update the display according to the UI design * In My Devices, modify the display of mode in the device list and the result in the batch task. * Management Portal * For EdgeLink firmware version, add a new format that contains four digital (ex: 2.8.3.1, 2.8.3.r1). #### [Fix] * LoRaWAN * [#39494] [DPM] The device mode of WISE-2200 cannot be set and view in My device * [#39524] [DPM] There should show true/false on Enable field of WISE-6610 config setting log * [#39527] [DPM] The comments field of config log can be removed * Others * [#38804] [DPM] There is a enough quota to upload the WISE config file (3/6), but popup a exceed to limit warming message * [#39174] [DPM] Some message aren't translated to Madarin ### Data Management #### [Update] - #### Core - [api-portal] Child devices are excluded from the device license quota. #### [Fix] - #### Core - [api-subscribe] Changing the region in the `Apply Free Trial form` has no effect. - [#39170][api-plugin][DM] Plug in will continue to send even the related calculation parameter is deleted - #### Data management - [#39513][DM] The search result is empty in "Data archiving/parameter page" if switch to page two first. - #### Command center - [Dashboard datasource] Cannot display RT data while the source switch to `EdgeHub-device-management` ## Version: 2.3.6 (2024/11/08) ### Device Management #### [New] * For LoRaWAN devices * Add device configurations for WISE-6610: * Radio setting, OS reboot, NTP server setting, Report interval setting * For configuration OTA, add parameters in the MQTT message to notify WISE-6610 not to overwrite the settings of EdgeHub or the network #### [Update] * For LoRaWAN devices * In Device Info tab, update IP address display for WISE-6610 * Update the status display of add/delete child devices according to the UI design * Limit the max number of child devices within 500 devices * For child devices, add the Event sub tab #### [Fix] * LoRaWAN * [#39227] [DPM] The limit child devices of WISE-6610 is 500 * [#39203] [DPM] 'Use platform timestamp' cannot be set to 'No' at WISE-6610 setting page. * [#39199] [DPM] The 'Edit device page' of WISE-6610 from device group is not correct * [#39380] [DPM] There should be a description that the quota of sytem config is 6 and the quota of database config is 6 * Others * [#39291] [DPM] The decimal precision will be changed to 2 if parameter alarm is set * [#39379] [DPM] The file name version of Edgelink project is 4 digits, but only can input 3 digits * [#39174] [DPM] Some message aren't translated to Madarin * [#39339] [DPM] The Enable Config button should be gray when WISE-4012 AI Average Modei s be set * [#39448] [DPM] There is no data on OTA history when doing FOTA ### Data Management #### [Update] - #### Command center - [Dashboard Panel] EdgeHub switch panel supports `EdgeHub-device-management` source. #### [Fix] - #### Core - [#39342][Alarm-service][DM] Error occurred if report alarm status from ack to any other status after alarm service restart. - [#39391][Worker][DM] Edgelink isn't on line when device is re-build - [#39294][evaluator][DM] It should return error when the value of calculation parameter is out of range - #### Data management - [#39196][DM] The permission of plugin is admin but can't edit - [#35952][DM] The list of tag is not correct when doing import object from device ## Version: 2.3.5 (2024/10/25) ### Device Management #### [New] * For LoRaWAN devices * Add Configuration OTA for WISE-6610 * There are two types of configuration files: System, Database * Configuration files must match the model name with part number(ex: WISE-6610-NB) * Support COTA for one single device and Device Group * In Device Info tab, add firmware version for WISE-6610 #### [Update] * In My Device page, change the style of device amount according to new UI design. * DPM API * Prevent the modification of device owner for LoRaWAN child devices. * Improve the connect reestablishment of the etcd service * X.509 Cert Rotation Notify * Remove unused queues in the RabbitMQ server #### [Fix] * LoRaWAN * [#39111] [DPM] The title of LoRaWAN "Radio Profile" should be the same * [#39110] [DPM] some items of LoRaWAN function aren't translated to Madarin * [#39107] [DPM] Add LoRaWAN Device button didn't work * [#39145] [DPM] The field name of OOTA mode should be the upper case * [#39200] [DPM] All device model can "Add Nodes" * [#39201] [DPM] Suggest to add firmware version field of WISE-6610 at device info page * [#39202] [DPM] It will cost about 1 min 30s to finish deleting WISE-2200-M device. * In Management Portal, user could not delete firmware file of WISE-6610 * Others * [#38491] [DPM] The WISE-4012 Universal Input can't be set * [#39288] [DPM] If edit the alert status, an error message will pop up ### Data Management #### [Update] - #### Core - [UI] Remove the node-sass package and update to Dart sass package - [api-portal] remove `Welcome email` for user registration - [datasource creator][Devops] use datasource-creator job to handle `Dashboard-plugins`, `Dashboard datasource` and `SaaS Composer datsource` installation - [datasource creator] Update `SaaS Composer datasource` for each sc org - #### Data management - [Plugin] Check if plugin’s output names are duplicated with the plugin name or other output names - #### Command center - [Dashboard wizard] Replace Dashboard template's default datasource name to `Edgehub-SimpleJson` #### [Fix] - #### Core - [DataWorker] publish #MSYS_EdgeStatus multiple time when isensing device upload config - [#39183][Notification][DM] The alarm notification(Line/Mail/WeCom) doesn't work even if the alarm have been triggered. - #### Data management - [#39178][DM] The layout of 'Alarm rule name' column is messed up. - #### Command center - [#39187][Datasource][DM] Dashboard panel data source will be changed when switching page from 'Visualization' to 'Queries'. - [#39186][Dashboard Plugin][DM] The 'ene alarm panel' is not updated to the latest version by dashboard-datasource-creator app. ## Version: 2.3.4 (2024/10/11) ### Device Management #### [New] * For LoRaWAN devices * Auto creation of child devices(WISE-2200-M) according to the MQTT messages sent from WISE-6610 * Add device edit feature for WISE-2200-M * Add Power Source field in the child device list #### [Update] * For LoRaWAN devices * Change model name from WISE-6610-NB to WISE-6610 * Add model name field in Information Tab of WISE-6610 * Hide X.509 setting when creating WISE-6610 * Add progress bar when Firmware OTA is in progress * Update search feature in the LoRaWAN child device list: * Search fields: Device name and deviceAddr/deviceEUI #### [Fix] * Multi-Languages * [#38711] [DPM] Manage list of device group aren't translate to Madarin * [#38936] [DPM] some items of schedule function on device group aren't translated to Madarin * Others * [#39109] [DPM] The sub device(WISE-2200-M) can't be create when re-create the device(WISE-6610) * [#38821] [DPM] The file name of config file should can use "-" and "_" ### Data Management #### [Update] - #### Core - [Alarm] Update alarm state change logic - [api-portal] Device object's parameters migration - Delete all Constant/Primitive/Calculation parameters that was created by user - Create parameters with the same names as the tags. - [Evaluator] When adding / updating calculation parameters, the calculations will no longer be performed immediately but will wait until the next calculation cycle. - #### Data management - [Plugin] Add permission control for `Plugin` functionality - [Calculation Parameter] Add permission control for plugins in Calculation parameter setting - #### User management - [Role] Add `Plugin` scope - #### Command Center - [Dashboard Panel] Update the alarm state change logic within the ene-alarm-panel. - [Dashboard datasource] change `EdgeHub-device` source name to `EdgeHub-device-management` - [SaaSComposer datasource] change `EdgeHub-device` source name to `EdgeHub-device-management` #### [Fix] - #### Core - [api-portal] The first name and last name were missing when creating the SSO user. - [Worker] If a worker crashes during multi-instance distribution, the distribution will stop. - [Worker] After shutting down MongoDB for 1 hour, abnormal data backfilling occurs every 5 minutes. - [Event-dispatcher] A panic occurs when the worker instance size is 0. - [Event-dispatcher] When the worker instance size changes from 0 to 1, the consumer is not created. - [#39092][DM] Worker OOM causes alarm cannot be triggered. - [#39013][DM] Alarm can be directly set to "In Process" or "Processed" from "Open" status. - #### Data management - [#39142][DM] The '#' char should be keep when creating the parameter - [#39089][DM] The alarm rule value cannot be set to float type. - [#39101][DM] There is no Input description when click the custom formula - [#39083][DM] Custom function can't create - ## Version: 2.3.3 (2024/09/27) ### Device Management #### [New] * Add Support for LoRaWAN devices * Supported models: WISE-6610 v2, WISE-2200-M * Supported features: * Manual device creation of WISE-6610 and WISE-2200-M * Display the parent/child relation between WISE-6610 and WISE-2200-M * Display LoRaWAN related information in the child device list * Firmware OTA for WISE-6610 and WISE-2200-M * CSV Batch create devices for WISE-6610 and WISE-2200-M #### [Fix] * Others * [#38941] [DPM] The UI of device list on Schedule could be re layout ### Data Management #### [Update] - #### Core - [plugin] Handling Mapping Keys and Values with/without Double Quotes - [forwarding] Handling Mapping Keys and Values with/without Double Quotes - [api-portal] custom function with defaultValue - [api-portal] add TENANT_NAME_REPEAT err message - [import-export-service] support new log format - [dbmaster] support multi-instance - #### Data management - [Parameter] custom function with defaultValue - [Object] While create object from device, show gateway list with lazy loading to improve performance. - [Object] While create object from device, if the device tag's type equals to `Unknown`, give a default type `Number` as parameter's data type. - [plugin, forwarding] plugin/forwarding bearer auth token string with length limitation as 2041 - #### User management - [Role] Update roles list item name and sort - `System setting` -> `Advanced settings` - `Others (organizer)` -> `General` #### [Fix] - #### Core - #### Data management - [#33805][DM] The tenant with 10,000 devices, it would take over 50 seconds to load data when add object from device - [#32452][DM] When importing a non-existent device tag, the error message is unclear. - #### User management - [#34934][UM] The "General" sub-page permission in System setting page is undefined. ## Version: 2.3.2 (2024/09/13) ### Device Management #### [New] * Web page * In the Device Group, add group description in the device group list #### [Update] * Web page * For Configuration file OTA in My Device and Device Group, only list the corresponding model's configuration files. * In Device Group, add a timer to refresh the progress/result of firmware OTA and configuration OTA * In My Device list and Device Group, the refresh timer will not be triggered until the previous refresh operation is finished * Backend services * For following services, use internal host(ex: Database services) first if internal host exists in the environment varialbe: * DPM Cleaner, DPM Cert Notify,BS Worker, BS Write Worker * Center API * Add the device delete API * Add error codes in the device create API: * Duplicate MAC address * Duplicate device name * Device Quota is reached #### [Fix] * Device IO Configuration * [#38491] [DPM] The WISE-4012 Universal Input can't be set * [#38543] [DPM] The AI field title of WISE-4012E is not the same with WISE utility * [#38599] [DPM] The AI field title of WISE-4010LAN is not the same with WISE utility * [#38598] [DPM] WISE-4012E Min. High/Low Signal Width could't be edited on Counter mode * [#38601] [DPM] Alarm Value can't be set when set high/Low Alarm Value to point * Multi-Languages * [#38627] [DPM] The translation of config OTA should be the same * [#38626] [DPM] Some items of config OTA aren't translate to Mandarin * [#38646] [DPM] The result of OTA should bo translate to Mandarin * Others * [#38370] [DPM] The process of OTA won't be auto refresh when doing OTA on device group * [#38676] [DPM] The behavior are not the same at page number input feature * [#38677] [DPM] The error message to SCADA/Edgelink devices be set to "Construction" mode in Device groups * [#38683] [DPM] The offline Edgelink device shouldn't do File management function * [#38777] [DPM] [DM/DPM] The web page will be in loading status if deleting a device with binded parameter. * [#38364] [DPM] Schedule list should be removed when related device is remoced from device group ### Data Management #### [Update] - #### Core - [Evaluator] Refactor the queuing logic for calculation tasks. - [Cleaner] Update the versions of the Jettison, RabbitMQ, and MongoDB drivers to fix the vulnerabilities detected on Harbor. - [Worker] update handle tag add/update reload data - [api-portal] replace 'tagValChange' with 'reloadData' property in mqtt - [api-portal] add DEVICE_BOUND err code - [api-portal] Add format validation for the following functions: `avg2`, `getGroupParamSum`, and `TotalObjects`. - [Packer] Reduce the frequency of checking whether hour/day blob data needs to be deleted. - [Archiver] When writing rawdata, check the index before each bulk-write. - [Archiver-restore] When writing rawdata, check the index before each bulk-write. - [Subscribe] If an expired `Custom` tenant’s expiration date is manually extended, its status will be changed to enable. - [Subscribe][API] For free trial RESTFul API, verify if the tenant owner is existed or not. - [api-portal][API] Add error status code for create device APIs - [Evaluator] When writing rawdata, check the index before each write. - [Evaluator] Parameters that fail to compile the formula will still record RAWData with quality=bad. - [Evaluator] Update the parameter description text for `ValidateParam` function. - [api-portal] add /device/move/{devid} api for moving device to other tenant. - #### Data management - [Agreement] Update Trial and Subscribe Agreement Version 4.0 - [Plugin] plugin auth name / plugin name blur with loading UI - #### User management - [Group User] Hide user list when access authentication is missing; add "Join Group" button and "Cannot access group" description #### [Fix] - #### Core - [#37948][Evaluator][DM] There are 2 record log when update the setting of cal parameter - [Cleaner] A lot of unnecessary debug messages contain: `state should be: writes is not an empty list`. - [Dispatcher] support graceful shutdown - [Dispatcher] disable device failed because too many postgres connection - [Worker] Value of #MSYS_EdgeStatus wrongly updated by tag value change - [#38801][Worker] Wrongly handle array tag data that cause alarmCode alarm cannot be triggered. - [Worker] reload data true should not save raw data if tag type is calculation - [#38968][Worker][DM] String type of constant parameter not be shown value after creating - [Worker] While missing device during worker instances distribution, should find the device from db and add it back - [#38985][api-portal][DM] Some users can't chage the tenant role - [#38984][api-portal][DM] User can't be disable - [DBCreator] Extend the length of ForwardingAuthInfo.AuthUri & PluginAuthInfo.AuthUri from 1024 to 2048 - [Subscribe] EdgeHub will send an unnecessary `D-5 days trial expiration notice` email to subscribed tenant users. - [Subscribe] Subscribed tenant becomes disabled on the due day and recovers after the deduction. - [Archiver-restore] After the restore, there will be an issue with duplicate notifications to Packer. - [Archiver-restore] After the restore, there will be an issue with missing certain date data in Redis. - [Packer] If the restore start time and end time are not on the same day, only the start time’s day will be processed. - [Forwarding] The total count displayed from the search is incorrect. - [Plugin] The total count displayed from the search is incorrect. - [Import-export] remove `<br>` from import error message - [Packer] Disable the remove function but still remove the backed-up data from MongoDB. - [DataWorker] Error handling for WISE-PaaS MQTT config uploaded in multiple messages. - [#38538][DataWorker] Some WISE devices lost tags of Ipaddr, macid, name, and status - [config-loader] Error handling for WISE-PaaS MQTT config uploaded in multiple messages. - #### Data management - [#38753][DM] The length of token string should larger than 1024 - [Parameter] the custom function help is not visible at low resolution window. - [Parameter] the `default value change` is not submitted if the user only edits the alarm. - [Tenant management] Prevent text overflow in switch status dialog - [Tenant management] Disable confirm button of switch status dialog when status is not changed - [Alarm group] Add/Edit AlarmGroup page cannot scroll at low resolution window. - [Parameter] The `!=` in the formula is not correctly validated. - [Parameter] In the parameter alarm, after adding an alarm and switching the tab to ‘basic,’ then switching back to ‘alarm,’ the alarm disappears. - [Tenant management] When the parent tenant's available quota is negative, an error occurs where the current level tenant cannot return the quota. - [Tenant management] the width of "Tenant name" is not initialization when the page is visited for the first time. - [Parameter] When adding a constant parameter, cannot use submit button. - #### Command center - [#38673][DM] There is a "timeserie" item on the panelType droupbox when create a dashboard - [#37889][CC] Command center can't show the same parameters of group via reportGroupInfo function ## Version: 2.3.1 (2024/08/16) ### Device Management #### [New] * Web pages * In My Device/Device Group/File Mangement, add page number input feature for the pagination. #### [Update] * Mass Device Deployment * Modify the max CSV file length from 20 to 32 characters * Playbook(Scheduling) * Remove unused queues in the RabbitMQ * Bootstrap Worker(Mass Device Deployment) * Remove unused queues in the RabbitMQ * Batch Create Device * Add Update time field in detail log page * Center API * Device List API: Add ip address for ADAM modules * Add APIs for ADAM/WISE modules to perform Firmware/Configuration file OTA #### [Fix] * Multi-Languages * [#38240] [DPM] Some iBMC function are't translated to Madarin * [#38369] [DPM] Some File management function are't translate to Madarin * [#38379] [DPM] The result of file magement should be translated to Madarin * [#38365] [DPM] Some device group function are't translate to Madarin * [#38380] [DPM] Some device batch task function of WISE isn't translated to Madarin * [#38381] [DPM] The language of mass deploy is not the same * [#38372] [DPM] Some CFG OTA function translation can be modified * [#38366] [DPM] Some device group function translation can be modified * [#38476] [DPM] Some items of config OTA of WISE device aren't translate to Mandarin * [#38475] [DPM] Some items aren't translate to Mandarin when add Computer device * [#38375] [DPM] Some COTA function of WISE isn't translated to Madarin * [#38401] [DPM] The language of device patch task warning msg is not correct * Others * [#38307] [DPM] The drop down UI can be adjusted when select "Shared with me" on device group * [#38315] [DPM] The parent group can access the info of sub-group in "Event" page. * [#38278] [DPM] The create date of device batch task aren't changed * [#38419] [DPM] User can't get the device list when add device on new device group * [#38402] [DPM] UI suggestion of group OTA * [#38314] [DPM] The SCADA/Edgelink devices can be set to "Construction" mode in Device groups ### Data Management #### [New] - #### Core - [api-portal] Support root tenant quota from license server - [Packer] Support blob data restore (Fully support of Constant / Primitive / Calculation parameters) - #### Data management - [Plugin] Support plugins migrate to tenant level - Plugins from different groups will be relocate to left side menu. - Plugins with the same name are not allowed to be used by calculation parameter. Will notice user to rename first. - Calculation parameters that were using plugins will not be affected by this migration. - [import-export] Support plugins by tenant level - #### Command center - [SaaS Composer] Datasouce support DPM_ONLY environment #### [Update] - #### Core - [Dataworker] update log for efk monitoring - [Dataworker] support LoRaWAN server/child device data - [Dataworker] support restore device tag info from postgres - [Dataworker] Set minimum notification interval to 1 min - [Dataworker] Reconnet Azure IoTHub when err occurs - [api-portal] device APIs (GraphQL, RESTFul) add parentId - [api-portal] when update root group name or set tenant ,sync sc org - [api-portal] dashboard/sc org name = tenant name, no more sequence number behind org name - [api-portal] update signin error msg; distinguish invalid username or password - [api-portal] root tenant admin = dashboard main org Admin, otherwise, give viewer - [api-portal] update health check route `livez` - [Evaluator] performance enhancement for the formula of plugin - [Evaluator] Send system issue notification while liveness prove failed - [Evaluator] If source tag `#EdgeStatus` without any value, use `0` as default value for calculation. - [api-subscribe] Check tenant name with spectial special characters: ` `, `-`, `_` - [api-subscribe] update log format - [alarm-service] set event center api path from env - [Packer] Add daily blob backup report - [Packer] Add statistics api for diagnostic - #### Data management - [Portal] Invalidate the old freeTrial route - [Portal] Allow scroll on first column of table: - tenant table of Tenant management - role table of Role management - permissions table of the Edit Role - #### Command Center - [Datasource] Rename dashboard datasource to `EdgeHub-SimpleJson` #### [Fix] - #### Core - [#38266][api-portal][DM] The quota of sub tenant can be used again when delete the object - [Dataworker] Change the value #MSYS_EdgeStatus tag incorrectly - [Dataworker] Missing isNumber attribute of #MSYS_EdgeStatus tag while adding device - [Dataworker] Missing default value of #MSYS_EdgeStatus tag while adding device - [Dataworker] redis disconnect will lost data if message process not finish - [Dataworker] re-upload config, the sub-device id will not be updated - [Dataworker] dispatcher and worker after reconnect to the etcd, the auto scale functionality are not working - [Evaluator] Create `rawdata` collection without adding index - [Archiver] create `min` collection without adding index - [Archiver-restore] Create `min` collection without adding index - [Archiver-restore] RAWData data time incorrect may cause the restore process to excessively restore data. - [Profile] Import profile with empty statetxt may cause error - [Packer] If the start time and end time of the restore job are not on the same day, only process the data in the day of the start time - #### Data management - [#38498][Channel setting][DM] The event setting of email can't be set to disable - [Tenant management] the width of "Tenant name" is not initialization when the page is visited - [Parameter] duplicated error message in DataType field - [Forwarding] After adding `Bearer Auth`, didn't display the result immediately - [Forwarding] Switch token type may cause save Auth failed - [api-subscribe] Subscribed tenant will get trial expiration email - [api-subscribe] Quota sync incurrectly while version migration ## Version: 2.3.0 (2024/07/19) ### Device Management #### [New] * Web page * Add support for WISE IoT Desk environment (Keep support for EdgeHub) * Use the Desk web header and hide original DPM's header * Support Language change in the Desk header menu * Add CORS support for the Desk environment * The DPM menu * Show the DPM menu if the user's screen width is bigger or equal to 1440 px * When the DPM menu is displayed, the menu occupies the width of other elements * Add 'Alarm Setting' when the query of alarm setting graphQL is successful * In My Device page, remove the 'Last Connected' field in the device list * The Tags tab in My Device * In the Desk environment, use the new UI design otherwise use the original UI design * Add the Recording rate field * Add the Event rule field and it's edit page * Hide the Parameter sub tab * The Event tab * Rename the Parameter sub tab to Tags sub tab in the Desk environment * DPM API * Add support for the application registration method in WISE IoT Desk environment * Add edition field in the system capability API #### [Fix] * None ### Data Management #### [New] - #### Tenant Management - [UI] Tenant Search / Filter - [UI] Log - [UI] Delete tenant - [Backend] Support weekly tenant report by email to PM list - #### Core - [Packer] Support blob data restore (not include calculation parameters) - #### WISE IoT Desk environment integration - [UI] App registration for Desk - [UI] Desk header integration - Support Language change - support hamburger menu button - [Backend] Support Dashboard org and SaaS composer org which are created by tenant service - [Backend] SI console quota change allgnment - #### DPM decoupling integeation - [Backend] Support EdgeHub installation without Data management and Command center - [Backend] Support Device data APIs - [Backend] Support Device data datasouce of Dashboard - [UI] Alarm setting UI for Device management - Level & category - Event & actions #### [Update] - #### Core - [Packer] Blob data in millisecond - [Worker] Worker support multi-instance configuration - [Worker] Integrate device sentry into worker - [Worker] worker will process all config without validating message data time - [Worker] worker will process hbt, conn, desc and other non data message if these messages is after the last data time - [Evaluator] Support K8S liveness / readiness probe - [Archiver] Support K8S liveness / readiness probe - [Archiver] system issue notification to PM list - [Archiver-restore] Support K8S liveness / readiness probe - [Archiver-restore] system issue notification to PM list - [api-portal] system issue notification to PM list - [Subscribe] Update error message code form 404 to 400 - [Subscribe] Update free trial email template - #### Data management - [Parameter] Button of `Edit parameter` in Parameter name column - [Parameter] Click parameter name to edit parameter page - [Parameter] Click parameter row to show drawer - [Parameter] Parameter details in drawer - [Parameter] Parameter log in drawer - [Parameter] The boundry of TimeMatch will be check - [Parameter] Lazy loading of parameter list in edit object page - [Object] While create object from device, load discrete tag's descriptor to new parameter automatically. #### [Fix] - #### Core - [Worker] system tag not have online offline state in the device tag info - [Worker] device sentry should use last active time to check if device is not sending message and over hbt - [Config-loader job] DO tag should not be read only - [Alarm] Alarm log API may deadlock that will cause API timeout - [Evaluator] TotalObjects may not find some parameters to calculate - [Evaluator] timestamp with negative time zone may cause parsing error --- ###### tags: `Documentation`