System information
Table Of Contents
- Table of Contents
- 1 Introduction to the SmartServer SOAP/XML Interface
- 2 SOAP Messages and the SmartServer WSDL File
- 2.1 SmartServer Naming Structure
- 2.2 SmartServer WSDL File
- 2.3 Security
- 2.4 SOAP Request and Response Message Structure
- 2.5 SOAP Messages Formats
- 2.6 Data Point References
- 2.7 UCPTcurrentConfig
- 2.8 Fault Structure
- 2.9 LonString type
- 2.10 SOAP Message Examples
- 3 SmartServer Applications and the SOAP/XML Interface
- 3.1 Overview of SmartServer Applications
- 3.2 SmartServer XML Configuration Files
- 3.3 SmartServer Resource Files
- 3.3.1 Standard Network Variable Type (SNVT) Device Resource Files
- 3.3.2 Standard Configuration Property Type (SCPT) Device Resource Files
- 3.3.3 User Defined Network Variable Type (UNVT) Device Resource Files
- 3.3.4 User Defined Configuration Property Type (UCPT) Device Resource Files
- 3.3.5 Data Point Templates
- 3.3.6 Data Formatting
- 3.4 SOAP Functions
- 3.5 Performance Issues
- 4 Using the SmartServer Data Server
- 4.1 Creating and Modifying the Data Point XML Files
- 4.2 Overview of the Data Point XML File
- 4.3 Data Server SOAP Interface
- 4.3.1 Using the List Function on the Data Server
- 4.3.2 Using the Get Function on the Data Server
- 4.3.3 Using the Set Function on the Data Server
- 4.3.4 Using the Read Function on the Data Server
- 4.3.5 Using the Write Function on the Data Server
- 4.3.6 Using the Invoke Function to Reset Data Point Priorities
- 4.3.7 Data Point Values and Priority Levels
- 4.3.8 Using the Delete Function on the Data Server
- 4.4 Using the Web Binder Application
- 5 Data Loggers
- 5.1 Overview of the Data Logger XML File
- 5.2 Creating and Modifying the Data Logger XML File
- 5.3 Data Logger SOAP Interface
- 6 Alarm Generator
- 6.1 Overview of the Alarm Generator XML File
- 6.2 Creating and Modifying the Alarm Generator XML File
- 6.3 Alarm Generator SOAP Interface
- 7 Alarm Notifier
- 7.1 Overview of the AlarmNotifier XML File
- 7.2 Creating and Modifying the Alarm Notifier XML File
- 7.3 Alarm Notifier SOAP Interface
- 7.3.1 Using the List Function on an Alarm Notifier
- 7.3.2 Using the Get Function on an Alarm Notifier
- 7.3.3 Using the Set Function on an Alarm Notifier
- 7.3.4 Using the Read Function on an Alarm Notifier
- 7.3.5 Using the Write Function on an Alarm Notifier Log File
- 7.3.6 Using the Clear Function on an Alarm Notifier Log File
- 7.3.7 Using the Delete Function on an Alarm Notifier
- 8 Analog Function Block
- 9 Scheduler
- 9.1 Overview of the Scheduler XML File
- 9.2 Creating and Modifying the Scheduler XML File
- 9.3 Scheduler SOAP Interface
- 10 Calendar
- 10.1 Overview of the Calendar XML File
- 10.2 Creating and Modifying the Calendar XML File
- 10.3 Calendar SOAP Interface
- 11 Real Time Clock
- 12 Type Translator
- 12.1 Overview of the Type Translator XML File
- 12.2 Creating and Modifying the Type Translator XML File
- 12.3 Type Translator SOAP Interface
- 12.3.1 Using the List Function on a Type Translator
- 12.3.2 Using the Get Function on a Type Translator
- 12.3.3 Using the Set Function on a Type Translator
- 12.3.4 Pre Defined Type Translator Rules
- 12.3.4.1 16xSNVT_switch_TO_SNVT_state
- 12.3.4.2 SNVT_lev_disc_TO_SNVT_occupancy
- 12.3.4.3 SNVT_lev_disc_TO_SNVT_switch
- 12.3.4.4 SNVT_occupancy_TO_SNVT_setting
- 12.3.4.5 SNVT_scene_TO_SNVT_setting
- 12.3.4.6 SNVT_scene_TO_SNVT_switch
- 12.3.4.7 SNVT_setting_TO_SNVT_switch
- 12.3.4.8 SNVT_state_TO_16xSNVT_switch
- 12.3.4.9 SNVT_switch_TO_SNVT_lev_disc
- 13 Type Translator Rules
- 14 LonWorks Driver
- 14.1 LonWorks Networks
- 14.2 LonWorks Channels
- 14.3 LonWorks Devices
- 14.4 Routers
- 14.5 Remote Network Interface
- 14.6 LonWorks Functional Blocks
- 14.7 Network Variables (LonWorks Data Points)
- 14.8 Configuration Properties (LonWorks Data Points)
- 14.9 LonWorks Connections
- 15 Modbus Driver
- 16 M Bus Driver
- 17 Virtual Driver
- 18 File System Data
- 19 System Information Methods
- 20 Using the SOAP Interface as a Web Service
- 21 Programming Examples
- 21.1 Visual C#.NET Examples
- 21.1.1 Reading and Writing Data Point Values in Visual C# .NET
- 21.1.2 Creating and Reading a Data Logger in Visual C# .NET
- 21.1.3 Creating a Scheduler and Calendar in Visual C# .NET
- 21.1.4 Creating and Installing a LonWorks Device in Visual C# .NET
- 21.1.5 Commissioning External Devices in Visual C# .NET
- 21.1.6 Discovering and Installing External Devices in Visual C# .NET
- 21.1.7 Configuring the SmartServer in Visual C# .NET
- 21.2 Visual Basic.NET Examples
- 21.2.1 Reading and Writing Data Point Values in Visual Basic.NET
- 21.2.2 Creating and Reading a Data Logger in Visual Basic. NET
- 21.2.3 Creating a Scheduler and Calendar in Visual Basic.NET
- 21.2.4 Creating and Installing a LonWorks Device in Visual Basic.NET
- 21.2.5 Commissioning External Devices in Visual Basic.NET
- 21.2.6 Discovering and Installing External Devices in Visual Basic.NET
- 21.2.7 Configuring the SmartServer in Visual Basic.NET
- 21.1 Visual C#.NET Examples
- 22 Programming the SmartServer with Java
- Appendix A: SOAP Tester Example

i.LON SmartServer 2.0 Programmer’s Reference
6-10
Identifier Description
FN_NE
Not equal. An alarm will be generated if the input value is not equal to the
compare value.
FN_LIMIT
Compare against the limits defined by the high and low limit offset fields. For
more information, see
Hysteresis Levels and Offset Limits.
Different comparison functions should be used for different data point types, depending on the
<UCPTbaseType> of the data point. The following table lists the different data point base types, and
the comparison functions you can use with them.
Base Type Valid <UCPTcompFunction>
BT_UNKNOWN, BT_ENUM, BT_ARRAY,
BT_STRUCT, BT_UNION, BT_BITFIELD
FN_EQ, FN_NE
BT_SIGNED_CHAR, BT_UNSIGNED_CHAR,
BT_SIGNED_SHORT, BT_UNSIGNED_SHORT,
BT_SIGNED_LONG, BT_UNSIGNED_LONG,
BT_FLOAT, BT_SIGNED_QUAD,
BT_UNSIGNED_QUAD, BT_DOUBLE
FN_GT, FN_LT, FN_GE, FN_LE,
FN_EQ, FN_NE, FN_LIMIT
You can make inequality comparisons between SNVT_switch (BT_STRUCT) data points, or between
SNVT_lev_disc (BT_ENUM) data points. The following table lists the <UCPTcompFunction>
identifiers you could use for these special comparisons. A description of how these comparisons are
made follows the table.
SNVT Valid <UCPTcompFunction>
SNVT_switch
FN_GT, FN_LT, FN_GE, FN_LE, FN_EQ, FN_NE
SNVT_lev_disc
FN_GT, FN_LT, FN_GE, FN_LE, FN_EQ, FN_NE
Comparisons made with SNVT_switch data points are enumeration-based comparisons based on the
value field of the SNVT_switch. If the value field is between 0.5 and 100.0, the SNVT_switch is
considered ON and that will be the basis of the comparison. If the value field is between 0.0 and 0.4,
the SNVT_switch will be considered OFF. In this way you could compare SNVT_switch data points.
For example, if the input data point was ON, the compare data point was OFF, and the comparison
function selected was FN_GT, the comparison would return TRUE because ON is considered greater
than OFF.
This is also true for SNVT_lev_disc data points, which take five enumerations: OFF, LOW,
MEDIUM, HIGH, and ON. If the input data point was LOW, the compare data point was HIGH and
the comparison function was FN_GT, the function would return FALSE, because LOW is not greater
than HIGH.
6.3.2.3 Hysteresis Levels and Offset Limits
The four offset limit properties are named <UCPTlowLimit1Offset>, <UCPTlowLimit2Offset>,
<UCPThighLimit1Offset>, and <UCPThighLimit2Offset>. The Alarm Generator will use these
offsets to determine if an alarm condition exists when the <UCPTcompFunction> selected for the
Alarm Generator is FN_LIMIT.
The following table lists the four offset limits, and the condition set that causes each one to generate an
alarm. It also lists the status that the <UCPTpointStatus> of the input and alarm data points will be
updated to when an alarm is generated based on each offset limit in the Alarm Status column.