Technical information
Getting Started
41
RMS Enterprise - NetLinx Programmer’s Guide
INIT
When the NetLinx system starts and loads all modules and the user program, the RMS Client starts in the INIT state. Upon
entering this state, the RMS Client looks at the RMS configuration settings to determine if the RMS Client is enabled and contains
valid RMS server path settings.
If the RMS Client configuration is disabled or if any of the RMS server path settings are missing, the RMS Client will
transition to the DISABLED state.
If the RMS Client configuration is enabled and valid RMS server path settings are present, then the RMS Client will
transition into the OFFLINE state.
When the RMS client configuration settings are modified and saved, the RMS client will re-enter the INIT connection
state.
DISABLED
Upon entering this state, the RMS Client will remain idle and not perform any connection attempts to the RMS server.
If the RMS client configuration settings are modified and saved, the RMS client will re-enter the INIT connection state.
OFFLINE
After the RMS Client enters the OFFLINE state, it will start a connection delay timer. After the elapsed connection delay time
(default is 30 seconds), the RMS Client will transition into the CONNECT-SERVER connection state to attempt a connection with
the RMS server.
If the connection attempt fails, the RMS Client connection state will return to this OFFLINE state and wait for the next connection
delay time interval to re-attempt connection to the RMS server. There are two connection delay time intervals that are used in the
OFFLINE state.
The first delay time is known as GREEDY and the second is known as SETBACK. By default the OFFLINE state will use the
GREEDY time delay which is by default 30 seconds to attempt connections to the RMS server. If the RMS client is not able to
successfully connect to the RMS server after a configured number of retry attempts (10 attempts by default) then the OFFLINE
state will switch to using the SETBACK delay time interval (5 minutes by default) between connection attempts to the RMS
server.
The GREEDY versus SETBACK delay times provide a balance between client re-connection attempt for some short interruption
versus some longer term outage.
CONNECT-SERVER
When the RMS Client enters the CONNECT-SERVER state, it will attempt a HTTP GET REST call to the RMS server to query
for the RMS server information data.
If the connection is successful, the RMS Client will transition into the CONNECT-CLIENT state. Else, if the connection attempt
fails to connect or fails to successfully get the RMS server information data, the RMS Client will transition into the CONNECT-
FAIL state.
CONNECT-FAIL
When the RMS Client enters the CONNECT-FAIL state, it will increment an internal tracking count of the number of successive
connection failure attempts and transition to the OFFLINE state to wait out the appropriate connection attempt delay interval and
then retry the connection again.
CONNECT-CLIENT
When the RMS Client enters the CONNECT-CLIENT state, it will attempt a HTTP PUT REST request to the RMS server to
register the RMS Client Gateway information with the RMS system.
If the request is successful, the RMS Client will transition into the CONNECT-LOCATION state. Else, if the request attempt fails,
the RMS Client will transition into the CONNECT-FAIL state.
CONNECT-LOCATION
When the RMS Client enters the CONNECT-LOCATION state, it will attempt a HTTP GET REST request to the RMS server to
obtain the location identity associated with this RMS Client Gateway in the RMS system.
If the request successfully returns location information, the RMS Client will transition into the ONLINE state.
If the request results in a server response of 404, meaning that no location is defined for this RMS Client Gateway, the RMS Client
will transition into the ONLINE-UNREGISTERED state. Else, if the request attempt fails for some other reason, the RMS Client
will transition into the CONNECT-FAIL state.