======MobileUiConfiguration ====== --- //[[anna.dowling@errigal.com|Anna Dowling]] 2020/11/16 08:53// ===== Overview ===== The SnmpManager domain **MobileUiConfiguration** is utilised for inserting parameter entries for display on the device overview page in the Mobile Navigator. These entries are associated with a technology entry via this table.The idms-proxy does a lookup of the parameters with these entries set and passes them to the ParameterResponse for mobile when a user accesses the Device Overview or Component Overview pages. The purpose of this domain is to provide a mechanism for configuring specific discovered parameters (typically performance parameters) to highlight on the device overview and provide a means of settings alarm thresholds for these measured values. The user can also set appropriate icons for these values from available icons in the idms-mobile directory: **config/performanceIcons/** See also: [[onboarding:mobile:devicealarmthreshold|Device Alarm Thresholds]] ===== Example of UI Display ===== {{ :onboarding:mobile:screenshot_2020-12-14_at_16.43.52.png?200 |}} ===== Configuration ===== * Current configuration of these values can be done via the following controller link: **SnmpManager/mobileUiConfiguration/create** * Or via sql insert into the database table **mobile_ui_configuration** . See sample insert sql here: ([[https://drive.google.com/drive/u/0/folders/1G6RU02SXAHh2UK-aYOUCGXQaAgqlhhYp|mobile_ui_configuration_technology_inserts.sql]]) ===== Description of Fields ===== boolean showOnOverView // (Set to true to show on DeviceOverview page.) boolean showOnComponent // (Set to true to show on Child / Component Overview page.) boolean isEditableParameter // (Set to true to show on display edit ui for parameter instead of trheshold ui on either device overview or component overview page.) String parameterName // (Can be a partial match(wildcard) of the parameter name matched against the parameter key passed from the MDC orchestrator. Checked in idms-proxy in order go assign parameters to MobileUiConfig entries.) String discoveredName // (The full discovered name of the parameter, Also checked in idms-proxy in order go assign parameters to MobileUiConfig entries.) Integer priorityOrder // (The order in which the parameters will display in the list on the Device / Component Overview screen.) Technology technology // (The technology id this parameter can be discovered under.) String uiTag // (Utilised by parameter edit screen to determine which ui type to display (current options for POC are limited to: RANGE_SLIDER / INPUT_TEXT) String minimumRange // (Utilised for RANGE_SLIDER ui component in mobile to display a minimum slider range value.) String maximumRange // (Utilised for RANGE_SLIDER ui component in mobile to display a maximum slider range value.) String lowRange // (Utilised for RANGE_SLIDER ui component in mobile to display a low slider range value.) String highRange // (Utilised for RANGE_SLIDER ui component in mobile to display a high slider range value.) String iconToDisplay // (The icons to show for this value configured from available icons in the idms-mobile directory: **config/performanceIcons/** DisplayNameField displayNameField = DisplayNameField.COMBINATION // (The type of display name to show for the header value of the parameter in the mobile UI. Options are: COMBINATION, DEVICE_DISCOVERED_NAME, PARAMETER_PRETTY_NAME.) boolean showOnMatchingDiscoveredName // (Allows user to configure a component level discovered parameter to show on the Device Overview page.) ===== Example Entry ===== {{:onboarding:mobile:screenshot_2020-12-14_at_16.39.44.png?400|}} ===== API POST Request ===== Idms Proxy application exposes a REST endpoint which allows for the upload of MobileUiConfiguration and MobileDeviceOptions for a given technologyId. * **Rest Endpoint:** https://environmentName/idms-proxy/api/v0/mobileConfiguration/uploadConfig * **Type:** POST * **Authentication:** OAuth2 - specify authentication token == Request Format == { "technologyId": "37" , "mobileDeviceOptions": [ { "showLocationInfo": true, "showMetrics": true, "showReboot": true, "showTestConnection": true, "componentCardName": "Remotes", "childComponentNameFilterRegex":"/*test*/", "level": "DEVICE_OVERVIEW" } ], "mobileUiConfigurations": [ { "showOnOverView": true, "showOnComponent": false, "isEditableParameter": false, "parameterName": "test param 1", "discoveredName": "test_1", "priorityOrder": "1", "uiTag": "", "minimumRange": "10", "maximumRange": "100", "lowRange": "30", "highRange": "80", "iconToDisplay": "amplifier", "displayNameField": "Test 1", "showOnMatchingDiscoveredName": false }, { "showOnOverView": false, "showOnComponent": true, "isEditableParameter": true, "parameterName": "test param 2", "discoveredName": "test_2", "priorityOrder": "2", "uiTag": "RANGE_SLIDER", "minimumRange": "10", "maximumRange": "100", "lowRange": "30", "highRange": "80", "iconToDisplay": "amplifier", "displayNameField": "Test 2", "showOnMatchingDiscoveredName": false } ] }