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
13-1
13 Type Translator Rules
You can use the Type Translator Rule SOAP functions to create additional Type Translator Rules for
the SmartServer, or to modify the Type Translator Rules provided with the SmartServer software.
Each Type Translator Rule defines the network variable type of the data points a Type Translator will
accept as input, and the network variable type these data points will be translated to. In addition, they
define the factors that are required to determine the value to be assigned to the output data point during
a translation, such as scaling, offsets, and case structures to handle enumerations and fields within
structures. This section provides an overview of how this works.
A Type Translator referencing a Type Translator Rule will specify input data points matching the input
network variable types for that rule, and output data points matching the output types for that rule. The
values of the input data points will then be translated and stored in the output data points each time any
of the input data points are updated.
If an input data point is a structure, you can specify which field(s) in the input data point is to be
translated. Similarly, if the output data point is a structure, you can specify which field(s) the result of
a translation will be stored in. Using these features, you can configure a Type Translator Rule to
convert multiple input data points into a single output data point, or a single input data point into
multiple output data points.
You can optionally create case structures that define the logic for a translation. For example, if the
input data point has a scalar value and the output data point is an enumeration, you could set up a case
structure to map ranges of scalar values to different enumerations for the output data point.
Alternatively, you could set up case rules to map the various enumeration values an input data point to
scalar values, or to different enumeration values, for an output data point.
This chapter describes how to create a Type Translator Rule. Once you have created a Type Translator
Rule, you can reference it from a Type Translator. In addition, this chapter describes the pre-defined
type translator rules included with the SmartServer software. For more information on the Type
Translator application, see Chapter 12,
Type Translator.
13.1
Type Translator Rule XML Files
The configuration of each Type Translator Rule defined for the SmartServer will be stored in an XML
file in the /root/config/Software/translatorRules directory of the SmartServer. All
files in this directory are read during boot, and valid rules are made available to the Type Translator
application. By default, this directory contains several XML files that you can use with your Type
Translators.
This chapter describes how to use the SOAP interface to create a new Type Translator Rule, how to
modify an existing Type Translator Rule, and how to use the pre-defined Type Translator Rules on the
SmartServer.
The following sample shows the XML file that stores the configuration of a Type Translator Rule
called 2xSwitch_to_Switch. This Type Translator Rule takes two SNVT_switch data points as input.
It stores the state field of the first input data point, and the value field of the second input data point, in
the output data point, which is also a SNVT_switch data point.
<Item xsi:type="UFPTtypeTranslator_Rule_Cfg" >
<UCPTname>2xSwitch_to_Switch</UCPTname>
<UCPTannotation>8000010128000000[4].UFPTtypeTranslator_Rule</UCPTannotation>
<UCPThidden>0</UCPThidden>
<UCPTlastUpdate>2008-03-13T13:47:47.330-07:00</UCPTlastUpdate>
<UCPTdescription>(New Rule)</UCPTdescription>
<UCPTuri>#8000010128000000[4].UFPTtypeTranslator_Rule_Cfg.htm</UCPTuri>
<DataPointFormat>
<UCPTnickName>nviSwitch1</UCPTnickName>
<UCPTformatDescription>#0000000000000000[0].SNVT_switch</UCPTformatDescription>
</DataPointFormat>
<DataPointFormat>
<UCPTnickName>nviSwitch2</UCPTnickName>