Customer Portal

Create Configuration

Create Configurations

To create a new configuration, follow these steps:

  1. Log in to Customer Portal.

  2. Switch to Products → Collector Mobile Client → Configuration.

  3. Click Create configuration. cp11.png

  4. Enter a name for the configuration and define the configuration specification.
    For details, see Configuration Specification below.

  5. Click Create configuration.

After creating an organization, you can find a sample configuration file that you can use as a reference for creating your own configurations.

Configuration Structure

The configuration files use the INI format with sections and key-value pairs.

  • Add comments by using the hash (#) sign.

  • Spaces at the end of lines are ignored.

  • Section names must always be uppercase.

  • Key names must always be lowercase.

  • Boolean values accept 1, Y, TRUE, and YES as TRUE.

The CMC configuration contains four sections that are described in detail below.

Section GLOBAL

This section specifies the settings and parameters that apply to the entire application.

The exact contents may vary depending on the application requirements and functionality.

The entries may include data folder paths, time synchronization tolerance, default load profile readout information, license key, REST communication settings, and so on.

Key

Value

synctime_high_threshold

Specifies the clock difference threshold in seconds after which the time synchronization action is not performed and the action ends with an error.

The number must be positive or 0 (zero).

Example: 600

synctime_low_threshold

Specifies the clock difference threshold in seconds before which the time synchronization action is not performed and the clocks are considered synchronized.

The number must be positive or 0 (zero).

Example: 5

force_set_time_default

Specifies whether time sync force option is enabled by default so that time synchronization thresholds are ignored and time is set.

Example: Y

Default: N

registry_default

Specifies the comma-separated default selection of registers for Registry readout.

G is for generic registers

H is for historical registers

Example: G,H

profile_default

Specifies the comma-separated profile numbers that are selected in the user interface by default for new manual work orders.

The numbers must be 1 or 2.

Example: 1,2

profile_length

Specifies the default number of days before the current time that will be read.

The number of days is used in new manual work orders for Profile readout and Event log readout.

Example: 40

meter_password_preshared_key_enabled

Specifies whether to use a pre-shared key to decrypt encrypted passwords.

To activate the pre-shared key, set the value to yes, y, true, or 1.

meter_password_preshared_key

Specifies the name of the file with the pre-shared key.

The file is in the Cert folder upon the application start.

cache_validity_days

Specifies the validity period in days for driver-cached data (association objects).

The value must be 1 or more.

Example: 360

voltage_warn_min

Specifies the minimum valid voltage level in volts for the Meter Check action. The decimal separator must be . (a period).

The value is compared to the instantaneous voltage levels.

Example: 208.0

voltage_warn_max

Specifies the maximum valid voltage level in volts for the Meter Check action. The decimal separator must be . (a period).

The value is compared to the instantaneous voltage levels.

Example: 253.0

current_max_zero

Specifies the maximum absolute value considered to be 0 (zero) in amperes for the Meter Check action. The decimal separator must be . (a period).

The value is compared to the instantaneous current levels.

Example: 0.5

cms_connect_string

Specifies the endpoint where the application can connect to an external server for automatic data synchronization.

The string can be prefixed with ://, http://, or https://.

Example: https://api-test.company.com/cms/v1

cms_certificate

Specifies the name of the file (without the path) to the client authorization certificate in the .pfx format in the Cert folder.

The certificate is used when the endpoint specified in connect_string requires client authentication with a certificate.

The file is located upon the application startup and is then stored in the secure Android storage. The file is automatically deleted after loading to the application.

cms_certificate_password

Specifies the encrypted password for loading the certificate specified in the cms_certificate value.

cms_certificate_source

Specifies the location of the authorization certificate for connection to Collector Mobile Server.

The value can be set to:

  • android - The system displays a notification that the certificate is issued from Android,

  • documents/<folder> - The certificate loads from the specified folder in OS documents folder.

The value selected by the user is saved and the application continues to use this user-selected certificate as long as the certificate is valid.

If set to android, the application ignores the cms_certificate and cms_certificate_password keys.

cms_enables

Specifies whether synchronization with cybros labs Customer Portal or similar CMS system.

Default: true

wo_cleanup_time

Specifies the minimum number of hours that work orders are held in the device after data synchronization before being deleted.

hide_action_mtr_check_disconnector

Specifies whether to display a button in the user interface to test disconnectors.

To hide the button, set the value to yes, y, true, or 1.

check_sound_period

Specifies the interval of the sound signal in the Wiring and Meter Test action.

Default: 5000

Section AUTH

This section contains a list of individual users, including passwords, allowed actions, and permission groups.

The default user that will be used to log in to Collector Mobile Client has the following format:

0=n<username>|p<password>|l<userPermissionLevel>

You can add additional users following the same format.

The <userPermissionLevel> must be a positive integer number and specifies the following parameters:

  • p<userPermissionLevel> – A comma-separated list of preset actions (see below).

  • r<userPermissionLevel> – A read-only flag that specifies whether user can manage work orders.

  • a<userPermissionLevel> – An access control list with action-to access-level mapping in the following format: action@L<accesslevels>. The accesslevels are meter specific permissions. For details, see Section: <DRIVER_NAME> below.

The actions are:

  • MRT_CHECK - Meter check

  • UPDATE_PASSWORD - Update password

  • MDM_INIT - Modem initialization

  • TOU_LOAD - TOU tariff table load

  • DISPLAY_CFG - Display configuration

  • LMTR_SET - Limiter settings

  • LP_RDT - Load profile read

  • DLP_RDT - Daily load profile read

  • EVL_RDT - Event log read

  • BATT_RESET - Battery reset

  • BILLING_RESET - Billing reset

  • ALARM_RST - Alarm reset

  • SYNC_TIME - Time synchronization

  • BV_RDT - Billing values read

  • RELAY_SET - Relay control

The accesslevels are meter specific permissions. For details, see Section: <DRIVER_NAME> below.

Example:

0=nAdmin|pSecretPass|l1
1=nTechnician|pTechPass|l2
p1=BV_RDT,LP_RDT,EVL_RDT
a1=MRT_CHECK@L2,EVL_RDT@L1,TOU_LOAD@L2,BV_RDT@L1,LP_RDT@L1
r1=n
p2=BV_RDT
a2=MRT_CHECK@L1,BV_RDT@L1
r2=y

Section <DRIVER_NAME>

This section specifies the settings and parameters for individual driver types.

While some settings are common across all drivers, others are specific to individual driver types.

In the subsections below, the specific settings are introduced by the driver type.

Common Driver Settings

Key

Value

password_l<level>

Specifies the password values.

<level> identifies the level to which the password relates.

You can set multiple passwords and use them in various combinations for different operations.

Example:

password_l1=00000000 

password_l2=1234567 

password_lg=123456678 

password_l<level>_encoding

Specifies the encoding of the password_l<level> key values.

The available encoding options are:

Plain

  • The passwords are common readable strings. This parameter can be omitted for plain encoding.

  • Example:
    password_l1=1234567
    password_encoding=plain

Hex

  • The passwords are hex strings

  • Example:
    password_l1=31323334335363738
    password_encoding=hex

aes/gcm/noppading

  • The passwords are decrypted with a pre-shared key using AES-GCM-256, 12-byte IV, 256-bit HMAC.

  • The values must be in the base-64 encoding and must hold encrypted binary data.

  • Example:

  • password_l1=nDTlhGrR74AYXln8gWB79dvl8F58DKOLyvj7fPsUeKE3XXTJssylUwdQVH4=
    password_encoding=aes/gcm/noppading

aes/cbc/pkcs5padding

  • The passwords are decrypted with a pre-shared key using AES-CBC-128, 4-byte IV, 128-bit TAG.

  • The values must be in the base-64 encoding and must hold encrypted binary data.

  • Example:
    password_l1=nDTlhGrR74AYXln8gWB79dvl8F58DKOLyvj7fPsUeKE3XXTJssylUwdQVH4=
    password_encoding=aes/cbc/pkcs5padding

accesslevels

Specifies the access levels that are used by the driver for the given user level.

Example:

accesslevels=L1=2;L2=2

reglist_generic

Specifies a semicolon-separated list of DLMS definitions to be read.

reglist_historical

Specifies a semicolon-separated list of DLMS definitions to be read when Historical Values action is requested.

ACE_SL7000

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: lowest

ADDGRUP_NP7X

Key

Value

profile_timeout

Specifies the read timeout for the load profile readout in seconds.

Default: 30

limit_profile_days

Specifies the maximum number of days allowed to read before today.

Default: 60

LGZ_E350

Key

Value

w1_password

Specifies the W1 command password.

LGZ_E360

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: lowest

relay_<relay_id>_<action_name>_script

Specifies keys for relay settings actions.

The values are the script numbers according to the parametrization of the meters.

Example:

relay_1_connect_script=5

relay_2_disconnect=4

modem_phase1_command

Specifies the modem phase-1 command used by the MDM_INIT action.

Default: +CMEE=1

modem_phase1_response

Specifies the valid response message for the modem phase-1 command.

Default: OK

modem_phase1_delay

Specifies the modem phase-1 command delay in milliseconds.

Default: 100

modem_phase2_command

Specifies the modem phase-2 command used by the MDM_INIT action.

Default: +COPS=0

modem_phase2_response

Specifies the valid response message for the modem phase-2 command.

Default: OK

modem_phase2_delay

Specifies the modem phase-2 command delay in milliseconds.

Default: 100

LGZ_E450

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: lowest

relay_<relay_id>_<action_name>_script

Specifies keys for relay settings actions.

The values are the script numbers according to the parametrization of the meters.

Example:

relay_1_connect_script=5

relay_2_disconnect=4

LGZ_E550

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: lowest

LGZ_E570

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: lowest

LG_E650

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: lowest

inputs_relay<relay_id>_on

Specifies the meter-specific input that sets the relay identified by <relay_id> to the state ON (see the meter parametrization).

Examples:

inputs_relay1_on=10******

inputs_relay2_on=**10****

inputs_relay<relay_id>_off

Specifies the meter-specific input that sets/switches the relay identified by <relay_id> to the state OFF (see the meter parametrization).

Examples:

inputs_relay1_off=01******

inputs_relay2_off=**01****

inputs_relay<relay_id>_ext1

Specifies the meter-specific input that sets/switches the relay identified by <relay_id> to the state given by the external control ext-1 (see the meter parametrization).

Examples:

inputs_relay1_ext1=00******

inputs_relay2_ext1=**00****

profile_backoff_minutes

Specifies the number of minutes to read before the required time-from.

This is caused by broken firmware that sometimes does not return desired data if the time from is used directly.

Default: 30

LGZ_E850

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: lowest

profile_backoff_minutes

Specifies the number of minutes to read before the required time-from.

This is caused by broken firmware that sometimes does not return desired data if the time from is used directly.

Default: 30

use_mode_e

Enables IEC mode-E as the initial protocol. If disabled, direct DLMS is used.

AEM_ENERLUX

Key

Value

w1_password

Specifies the W1 command password.

profile_timeout

Specifies the read timeout for the load profile readout in seconds.

Default: 30

limit_profile_days

Specifies the maximum number of days allowed to read before today.

Default: 60

IEC61107

Key

Value

clock_time_format

Specifies the time parsing format in the C# format specification.

clock_date_format

Specifies the date parsing format in the C# format specification.

serial_obis

Specifies the ordered list of OBIS codes, separated by semicolons, that are checked in the specified order for the serial number of the meter.

The + (plus) sign concatenates two OBIS codes.

Default: C.1.0+C.1.1;0.0;0.0.0

clock_time_register

Specifies the OBIS code of the register that contains the current time value.

Default: 0.9.1

clock_date_register

Specifies the OBIS code of the register that contains the current date value.

Default: 0.9.2

dc3_ignore_time_in_profile_request

Specifies whether to ignore time in the profile request.

By default, drivers read the DC3 and DB3 meter day-by-day (between 00:00 and 00:00 of the next day). Broken firmware may return invalid data in some cases if the range from or to has nonzero time.

To disable this behavior, set the value to yes, y, true, or 1.

Default: false

r6_blocksize

Specifies the request length for the R6 command. High values may lead to a higher readout failure, low values may lead to a slow readout.

Default: 100

w5_password

Specifies the W5 command password.

EMH_LZQJ

Key

Value

w1_password

Specifies the W1 command password.

w5_password

Specifies the W5 command password.

ZPA_AMX75

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: low

ZPA_ZEX16

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: low

obis_dlp

Specifies the OBIS code for the daily profile object in the meter.

It must be in the full format, for example, A-B:C.D.E.F.

If the code is not defined, the driver tries to find a load profile with period value 86400.

Default: N/A

METERCONTROL_ST402D

Key

Value

relay_<relay_id>_<action_name>_script

Specifies keys for relay settings actions.

The values are the OBIS codes with action numbers according to the parametrization of the meters.

Example:

relay_1_connect_script=0-0.10.0.103.255|3

relay_1_disconnect_script=0-0.10.0.103.255|4

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: low

use_mode_e

Enables IEC mode-E as the initial protocol. If disabled, direct DLMS is used.

METCOM_MCS301

Key

Value

security_mechanism_l<level>

Specifies the DLMS security mechanism that is used for authentication.

Available options are:

lowest

low

high

high-md5

high-sha1

high-gmac

high-sha256

Default: low

password_l<level>_ak

Specifies the authentication key if the security mechanism is high-gmac.

password_l<level>_ek

Specifies the encryption key, if the security mechanism is high-gmac.

relay_reset

Specifies a JSON-formatted object where keys represent OBIS codes and values contain the options to be set.

For security reasons, only OBIS codes related to relay configuration are permitted. Any other OBIS codes are ignored.

Example:

{"0-0:130.2.17.255": [1,0],"0-1:130.2.17.255": [1,0],"0-2:130.2.17.255": [3,0],"0-3:130.2.17.255": [0,0],"0-4:130.2.17.255": [0,0],"0-5:130.2.17.255": [0,0],"0-6:130.2.17.255": [2,0],"0-7:130.2.17.255": [2,0],"0-0:130.3.0.255": 0,"0-1:130.3.0.255": 0,"0-2:130.3.0.255": 0,"0-3:130.3.0.255": 0,"0-4:130.3.0.255": 0,"0-5:130.3.0.255": 0,"0-6:130.3.0.255": 0,"0-7:130.3.0.255": 0,"1-0:129.3.2.255": 0,"1-0:129.3.3.255": 0,"1-0:129.3.4.255": 0,"1-0:129.3.5.255": 16,"1-0:129.3.6.255": 1,"1-0:129.3.7.255": 2}

Section PASSWORD_SECTION_x

This section specifies default passwords that are used when the CMC application is accessed via API.

Each section name is in the format PASSWORD_SECTION_x, where x is any alphanumeric string of characters.

This section is referenced when the meter_password_section key in the API call contains the same x value.