Generic Network Driver

Modified on 2010/12/15 10:38 by Administrator — Categorized as: Driver

The generic network driver allows interfacing with devices connected to the computer network via TCP/IP where no driver yet exists. Incoming data is expected to be delimited by a string of characters to distinguish packets.

Manufacturer: N/A

Primary Communications Port: Network


Configuration Settings


Delimiter and NewLine special characters:


Events

Ready State Changed

The device's running and ready state changed.

Whenever Filter:

none

EventArgs:


Received Data

Occurs when the driver receives incoming data from the network connection.

Whenever Filter:

none

EventArgs:


Example Script:

// Do something here. Normally you would parse the data string
// using the String datatype methods to determine what was received.
// Data formats:
// "STOPPED:%%" where %% is a number of how open the drapes are
// "OPENING"
// "CLOSING"
command = EventArgs.Data.Substring(0, 7);
if ( command == "STOPPED" )
    Log( "Drapes are open " + EventArgs.Data.Substring(8, 2) + "%" );
else if ( command == "OPENING" )
    Log( "Drapes are opening." );
else if ( command == "CLOSING" )
    Log( "Drapes are closing." );

Instance Properties

DeviceDisplayName

The display name for this device.

Accessibility : Read Only

Type: String

DeviceStartTime

The date and time when this device was started.

Accessibility : Read Only

Type: DateTime

DeviceLifecycleStage

The current lifecycle stage of the device. The stages in order are: Pending Start, Starting, Running, Stopping

Accessibility : Read Only

Type: Number

DeviceIsRunningAndReady

Indicates if the device is ready for use, ie it is in the Running lifecycle stage and all properties are valid and all methods are ready to be used.

Accessibility : Read Only

Type: Boolean

Instance Methods

Send ( String )

Sends data over the network connection.

Syntax

void Send( String data )

Parameters

data : The data to send.

SendLine ( String )

Sends data over the network connection followed by the new line string.

Syntax

void SendLine( String data )

Parameters

data : The data to send.

SendBinary ( String )

Sends binary data to the serial port.

Syntax

void SendBinary( String hexData )

Parameters

hexData : The binary data represented as a contiguous string of hexidecimal. Example: "00FF0900"

SetPropertyForDuration ( String, TimeSpan, Object, Object )

Sets a property for a duration of time and then sets the property to a subequent value asynchronously. This action returns after setting the first value and the timer and subsequent property set run in the background. Subsequent sets of the same property will reset the timer if the subsequent value has not yet been set. This is an advanced feature, be sure to set the property name correctly.

Syntax

void SetPropertyForDuration( String propertyName, unknown duration, Object initialValue, Object finalValue )

Parameters

propertyName : The name of the property to set.
duration : The amount of time to wait after setting the initial value to set the subsequent value.
initialValue : The value to set the property to initially.
finalValue : The value to set the property to after the duration of time has passed.

SetPropertyForDuration ( String, Number, TimeSpan, Object, Object )

Sets a property for a duration of time and then sets the property to a subequent value asynchronously. This action returns after setting the first value and the timer and subsequent property set run in the background. Subsequent sets of the same property will reset the timer if the subsequent value has not yet been set. This is an advanced feature, be sure to set the property name correctly.

Syntax

void SetPropertyForDuration( String propertyName, Number arrayIndex, unknown duration, Object initialValue, Object finalValue )

Parameters

propertyName : The name of the property to set.
arrayIndex : The property's array index to set.
duration : The amount of time to wait after setting the initial value to set the subsequent value.
initialValue : The value to set the property to initially.
finalValue : The value to set the property to after the duration of time has passed.