Edgeflow Reference

     Previous  Next    Open TOC in new window  Open Index in new window  View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Edgeflow Module Reference

This section describes reference information for the WebLogic RFID Edge Server edgeflow modules.

You may notice similarities across modules. Each module requires parameters for operation (which can include information such as timing data and EPCIS data) and parameters that allow it to connect to other modules and send data to outside destinations.

You configure edgeflow modules using the RFID Edge Server Administration Console. See Configuring Workflow Modules in Using the Administration Console.

Note: In version 3.0 of WebLogic RFID Edge Server, workflow modules supported in previous releases are supported in a limited manner. See Workflow Module Reference for Versions Prior to 3.0 for more information.

The following edgeflow modules are described:

 


Aggregation Reconciler

An Aggregation Reconciler module receives an aggregation event and sends to an external sender to request the manifest for the aggregation.

The Aggregation Reconciler module can be used to find out if an aggregation has the expected items or not. The Aggregation Reconciler module compares an aggregation with its manifest (expected elements in an aggregation). The comparison result is based on the properties such as percentage of children-match required.

Consider the following usage:

  1. An EPCIS Aggregation Event Generator creates an aggregation for the tags it receives from a Tag Accumulator module or a Tag List Filter module.
  2. An Aggregation Reconciler module receives the aggregation from the EPCIS Aggregation Event Generator module and sends to an EPCIS Manifest Query module or a custom module that generates the manifest for the query.
  3. The Aggregation Reconciler receives the manifest and performs the reconciliation.

The Aggregation Reconciler module fields are shown in Table 3-1.

Table 3-1 Aggregation Reconciler Module
Field Name
Value/Type
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Aggregation Reconciler.
Type of module. Values are chosen from a list of module types.
Acceptable Children Match %
Percentage (Decimal)
Specifies what percentage of children must be matched to produce a "true" matched-children result.
Enter a value between 0 and 100 to specify the match percentage required.
Allow Extra Children
True/False
Determines whether extra children are allowed when deciding if there is a match. If this is true, extra children produce true for the matched children result. If this is false, detection of extra children produces false for the matched children result.
Match Parent
Never
If EPC
If Not EPC
Always
Specifies whether the parent must be matched when the expected parent is, or is not, an EPC URI.
Module Outputs
   
Manifest Request
EPCIS Document
Required. This is the output port through which the request for the manifest is sent.
For example, in this field you might specify an EPCIS Manifest Query module or a custom module that generates the manifest for the query.
Parent Matched
Boolean
Specify the location to send a Boolean indicating whether the parent matched.
Children Matched
Boolean
Specify the location to send a Boolean indicating whether the required percentage of children IDs was found.
Missing Entries
Manifest
Specify the location to send an Aggregation manifest containing IDs indicating which entries were missing.
For example, reconciliation-result-missing-sender:Input
Extra Entries
Manifest
Specify the location to send an Aggregation Manifest with the IDs that were in the aggregation, but not expected.
For example, reconciliation-result-extra-sender:Input
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Aggregation
EPCIS Document
The aggregation received from another module. This is the aggregation that is to be reconciled.
For example, the EPCIS Aggregation Event Generator might create an aggregation for the tags it receives. It could then send the aggregation to an Aggregation Reconciler module.
Manifest
Manifest
Manifest that is compared against the aggregation.
This could come from a custom module or an EPCIS Manifest Query module.

 


Bar Code Decoder

This module takes in a bar code string or bar code Tag List and converts it to an EPC ID or EPC ID pattern.

For example, you might use an HTTP Receiver (One Way) module to receive bar codes from an external source, or you might receive a bar code tag list from a Tag List Filter module that itself receives ECReports for an ECSpec configured to read from a bar code reader.

This module supports the following bar code types:

Note: Symbology character decoding is not supported; SSCC and SGTIN barcode with AI fields are not supported.

Table 3-2 describes how bar codes are processed based on the number of digits in the bar code.

Table 3-2 How Bar Codes Are Processed
Number of Characters in Bar Code
How Processed
12
  1. Padded to 14 characters by prepending zeroes
  2. Check if it is GTIN/UCC12
  3. If not, check if it is GIAI
13
  1. Padded to 14 characters by prepending zeroes
  2. Check if it is GTIN/UCC13
  3. If not, check if it is GIAI
14
  1. Check if it is GTIN
  2. If not, check if it is GIAI
16
  1. Check if is GLN
  2. If not, check if it is GIAI
18
  1. Check if it is SSCC
  2. If not, check if it is GRAI
  3. If not, check if it is GIAI

The Bar Code Decoder module fields are shown in Table 3-3.

Table 3-3 Bar Code Decoder

Field Name
Value/Type
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Bar Code Decoder
Type of module. Values are chosen from a list of module types.
Module Outputs
   
Decoded ID or Pattern
URI String
Specifies the destination for the decoded bar code.
For example, you might send the bar code to the Write input of a Write Tag module: tag-commissioning-write:Write
For bar codes that already contain a serial number reference (SSCC) the EPC id is generated. Otherwise, the EPC id pattern is generated.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Bar Code
Bar Code String/TagList
String type (complying with barcode EPC tag data) or tag list representing barcode data.

 


Counter

This module is used to display a count, or similar information on a numeric display device.

For example, you can use the output of a Tag Accumulator module with a Counter module to get a count of EPCs seen.

The Counter module fields are shown in Table 3-4.

Table 3-4 Counter Module
Field Name
Value/Type
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Counter
Type of module. Values are chosen from a list of module types.
Always Counting
True/False
Specifies if the module is counting on active startup.
Reset on Start
True/False
Specifies if the module resets the count to initial input message on every startup.
Initial Count
Number
Specifies the initial value for the module. This value is used when the module starts and when it is reset.
Count Duration
Milliseconds
Specifies the timeout period for sending output. Must be greater than, or equal to, zero. Zero means infinite time, which means that final count output is sent only on finish message.
Module Outputs
   
Final Count
Number
On a finish request or send timeout, specifies where to send the final count. For example, smart-shelf-final-count-sender:Input
Running Count
Number
Specifies where to send the current count. For example, smart-shelf-count-sender:Input
This count is sent for every add, subtract, increment, or decrement input.
Module State
Working or Idle
Specifies where to send the module state:
  • Working - sent when the module starts processing in response to Start input.
  • Idle - sent when the module stops processing in response to finish input.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Add
Number
This port accepts a count (integer) and adds it to the current count.
Subtract
Number
This port accepts a count (integer) and decrements it from the current count.
Increment
Any Message Type
This port takes in any message type and increments the count by one on every message.
Decrement
Any Message Type
This port accepts any message type and decrements the count by one on every message.
Start
Any Message Type
This message starts the count. This port accepts messages of any type.
Finish
Any Message Type
This message triggers the module to send the final count. The count value will be reset to the configured initial count value. If it is configured to be "always count," it will be in count mode. If not, it will wait for a start message to start counting again.

 


Directional Filter

You can use this module to determine the direction in which an EPC is moving. Specifically, the module is used to determine the direction between two points.

This module is similar to the Directional Filter (Auto Configuration) module. However, in this module the user is responsible for defining the ECSpec and its subscriptions.

The Directional Filter module fields are shown in Table 3-5.

Table 3-5 Directional Filter Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Directional Filter
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify if the module is started or stopped at startup. The default is stopped.
Stale Tag Timeout
Time in milliseconds. Must be greater than zero.
Required. Determines how long a tag is kept active after it is not detected at the second read point. Defaults to 180,000.
A-side Addition Report Names
ECReport name
ECReport name that states "I see (add) the tag at position A."
A-side Deletion Report Names
ECReport name
ECReport name that states "I no longer see (delete) the tag at position A."
B-side Addition Report Names
ECReport name
ECReport name that states "I see (add) the tag at position B."
B-side Deletion Report Names
ECReport name
ECReport name that states "I no longer see (delete) the tag at position B."
Module Outputs
   
A to B Tag List
 
Specifies where to send the list of tags that passed from side A to B.
For example, interior-door-observeA2B:Tag List
B to A Tag List
 
Specifies where to send the list of tags that passed from side B to A. For example, interior-door-observeA2B:Tag List.
Module State
Working
Idle
Specifies where to send the module status:
  • Working - sent when the module starts processing messages in response to Start input.
  • Idle - sent when the module stops processing messages in response to Stop input.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
ECReports
ECReports
Receives all add/delete reports indicating tags were added/deleted at point A or B. Typically, either this input or the specific addition/deletion inputs are used, but not both.
A-side Additions
Tag List
To notify module that tags were added at point A
A-side Deletions
Tag List
To notify module that tags were deleted at point A
B-side Additions
Tag List
To notify module that tags were added at point B
B-side Deletions
Tag List
To notify module that tags were deleted at point A
Start
Any Message Type
Start processing input messages to determine direction.
Stop
Any Message Type
Stop processing input messages to determine direction.

 


Directional Filter (Auto Configuration)

Use this module to determine the direction in which an EPC is moving. The module can be used to determine the direction between two points.

The module creates an ECSpec for the read points and subscribes itself to receive notifications of EPC sightings. Logical reader names are required to be configured for each side.

The Directional Filter module fields are shown in Table 3-6.

Table 3-6 Directional Filter Module (Auto Configuration)
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Directional Filter (Auto Configuration)
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify if the module is started or stopped at startup. The default is stopped.
Stale Tag Timeout
Time in milliseconds. Must be greater than zero.
Required. Determines how long a tag is kept active after it is not detected at the second read point. Defaults to 180,000.
A-side Logical Reader Names
Logical Reader Name
Required. Logical reader names for side A.
B-side Logical Reader Names
Logical Reader Name
Required. Logical reader names for side B.
Include Filters
EPC patterns
EPC ID
EPC patterns. Or, if specified, direction will be calculated only for EPCs that match EPC ID patterns.
Exclude Filters
EPC patterns
EPC ID
EPC patterns. Or, if specified, direction will be excluded only for EPCs that match EPC ID patterns.
Module Outputs
   
A to B Tag List
Tag List
Specifies where to send the tag list that passed from point A to point B during the current event cycle.
For example, interior-door-observeA2B:Tag List
B to A Tag List
Tag List
Specifies where to send the tag list that passed from point B to point A during the current event cycle.
For example, interior-door-observeB2A:Tag List
Module State
Working
Idle
Specifies where to send the following states:
  • Working - sent when the module starts processing messages as a result of Start input.
  • Idle - sent when the module stops processing messages as a result of Stop input.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Start
Any Message Type
Start looking for EPCs to determine direction.
Stop
Any Message Type
Stop looking for EPCs to determine direction.

 


ECSpec Subscriber

Use this module to subscribe to ECSpecs only when needed: ECSpecs do not stay active.

The ECSpec names parameter allows you to specify from which ECSpecs this module should get ECReports.

A subscribe request adds a subscription for itself for an ECSpec; an unsubscribe request removes the subscription from the ECSpec.

The ECSpec Subscriber module fields are shown in Table 3-7.

Table 3-7 ECSpec Subscriber Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
ECSpec Subscriber
Type of module. Values are chosen from a list of module types.
Initial State
Subscribed/Unsubscribed
Specify if the module is subscribed or unsubscribed at startup. The default value is unsubscribed.
ECSpec Names
EPSpec Name
Required. Specify the name of the ECSpec to which to subscribe.
Module Outputs
   
ECReports
ECReports
ECReports derived from the subscribed ECSpec
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Subscribe
Message of any type
Subscribe to ECSpec.
Unsubscribe
Message of any type
Unsubscribe from ECSpec.

 


EPC Cache Manager

An EPC cache is an ordered list of EPC values used in sequence to program tags. An EPC cache allows a series of tags to be programmed without application intervention or extra tag programming to supply new EPC codes.

You can use this module to create and manage a cache. The configuration values are specific to the caches managed by this module. This module will:

For example, you might use the EPC Cache Manager together with the Serial Number Replenisher (Static) module (or a Serial Number Replenisher (BEA Service) module) as follows:

  1. Send the Replenishment Request output of the EPC Cache Manager module to the Replenishment Request input of a Serial Number Replenisher (Static) module.
  2. Send the resulting Replenishment output from a Serial Number Replenisher (Static) module to the Replenishment input of the EPC Cache Manager module.

The EPC Cache Manager module fields are shown in Table 3-8.

Table 3-8 EPC Cache Manager Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
EPC Cache Manager
Type of module. Values are chosen from a list of module types.
Cache Name Prefix
String
Specify a unique, identifying prefix for the cache name. For example, tag-commissioning-sample-
Either the Cache Name Prefix or Cache Name Suffix is required.
Cache Name Suffix
String
Specify a unique, identifying suffix for the cache name.
Either the Cache Name Prefix or Cache Name Suffix is required.
EPC Length
64-bits/96-bits
Select 64 bit or 96 bit EPCs.
EPC Filter Value
 
Required. Specify the EPC filter value between 0 and 7.
PCSpec Request Timeout
Milliseconds
Required. Time to wait for PCSpec. Must be greater than or equal to zero. This is the amount of time it will wait to receive EPCs for the cache it creates to define a PCSpec with the cache.
Auto Replenish
True/False
Replenish the cache when necessary.
Cache Low Threshold
Integer.
When this number of EPC's remain in the cache, replenish it.
You set the size of the cache in the Replenishment Size field of the Serial Number Replenisher (BEA Service) and Serial Number Replenisher (Static) modules.
Module Outputs
   
Replenishment Request
URI String
Specifies where to send requests to fill the cache. For example, tag-commissioning-static-replenisher:Replenishment Request
PCSpec
PCSpec
Specifies where to send the PCSpec with the created cache.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
PCSpec Request
URI String
Request for the PCSpec with the appropriate cache name in it.
Replenishment
URI String List
This port receives EPCs. When it receives EPCs, it checks to see if it is waiting for this response (initiated because of cache low notification or because of cache setup request).
If it is waiting for the response, it creates or replenishes the cache.

 


EPCIS Aggregation Event Generator

You can use this module to generate an EPCIS aggregation event for a given set of EPCs.

An EPCIS event is an observation of EPC-related activity, expressed at the business level. EPCIS events typically have four informational aspects: what (which EPCs or other entities participated in the event), when (the date and time of the event), where (the location where the event took place and where the entities are expected to be afterward), and why (what business transaction was taking place and what is the business condition of the entities afterward).

Consider the following usage:

  1. A Tag List Filter module takes the ECReports produced by the ECSpec, extracts the tag information and sends it to the TagList port of an EPCIS Aggregation Event Generator module.
  2. The EPCIS Aggregation Event Generator creates an aggregation for the tags it receives from the Tag List Filter. The aggregation event may be sent to an EPCIS system.
Note: As described in the EPCglobal EPCIS (Electronic Product Code Information Service) Frequently Asked Questions document, the EPCIS Data Model specifies a standard way to represent visibility information about physical objects, including descriptions of product movements in a supply chain. See that document for information about the Business Step, Disposition, Read Point, Business Location, and Business Transaction fields.

The EPCIS Aggregation Event Generator module fields are shown in Table 3-9.

Table 3-9 EPCIS Aggregation Event Generator Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
EPCIS Aggregation Event Generator
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify the state of the module at startup. The default is Started.
Parent Include Patterns
EPC
EPC Pattern
Any URI
Required for add or delete action on the aggregation event.
The module looks for EPCs matching these patterns in the input it receives and use the EPC that matches as the parent id. EPC patterns, EPC ID patterns, EPC, or any URI may be specified.
For example, urn:epc:pat:gid-64-i:*.*.1
If a non-EPC URI is specified, it should be the only value specified and it is used as the parent id field in the generated aggregation event.
Parent Exclude Patterns
EPC Patterns
Valid EPC patterns or EPC identity patterns must be specified. EPCs matching these patterns will be excluded from being the parent ID.
Children Include Patterns
EPC patterns
EPC ID Patterns
EPC
If specified, only EPCs matching these patterns will be used as child EPCs in the aggregation event.
Children Exclude Patterns
EPC patterns
EPC ID Patterns
EPC
EPC's that match the patterns will be excluded from the child EPCs list.
EPCIS Event Fields
   
Action
ADD
DELETE
OBSERVE
Required. Specify ADD, DELETE, or OBSERVE for an event action.
Read Point
URI
Read point URI that is used in the generated Aggregation Event.
Business Location
URI
Business location URI that is used in the generated Aggregation Event. For example, urn:acmecorp:bizLocation:store1.salesfloor
Business Step
URI
The business process step that was occurring when the event was captured.
Disposition
URI
Disposition URI that is used in the generated Object Event.
Business Transactions
Transaction Type/Transaction ID
Business transaction type and ID.
Event Extensions
Namespace/Name/Value
List of namespace-name-value tuples included as extensions in the object event.
Module Outputs
   
EPCIS Event
EPCIS Document
Specifies where to send the EPCIS aggregation event.
For example, it might send the aggregation to an Aggregation Reconciler module Aggregation input.
Template Event
EPCIS Document
The template event received on the Template Event input (and then applied) is sent out from this port.
The template event is sent as an acknowledgement to a template event message.
This may be used by other modules or external applications to make sure that the template is applied before starting to send tags to the module.
Module State
Working
Idle
Specify where to send an output string representing status of the module.
There are two possible states:
  • Working: Sent every time the module moves into the state where it is processing messages.
  • Idle: Send every time the modules moves into the state where it is not processing messages.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Tag List
Tag List
List of tags used to generate aggregation events.
For example, the Tag List might be sent by a Tag List Filter module.
Template Event
EPCIS Document
This port accepts an EPCIS Document with an aggregation event. This port may be used to dynamically change the parameters for generating an aggregation event. The values specified through the template override those specified as configuration on the module. EPC values and action on the template event is ignored.
If values are null on the template event, the values configured on the module are used. If the fields Read Point, Business Location, Business Step, and Disposition are non-null on the template event, they override the values specified at module configuration.
Business Transactions and Event Extensions specified on the template event are added to those specified as part of the module configuration.
The Template Event is typically generated by an external source.
Start
Any Message Type
Indicates that the module should start processing messages it receives at the Tag List input port.
If the module did not come up in started mode (initial state), the module will ignore messages on the Tag List port until it gets start message. This port accepts any message type.
A message on this port changes the module state from Idle to Working.
Stop
Any Message Type
Indicates that the module should start processing messages it receives at the Tag List input port.
After it receives a stop message, the module ignores messages on the Tag List port until it receives a start message again. A message on this port changes the module state from Working to Idle.

 


EPCIS Manifest Query

This module gets a manifest, which specifies what the content of an aggregation should be, from an EPCIS repository. It determines the manifest based on the latest ADD and DELETE aggregation event for the parent ID on the input aggregation.

When the exact IDs expected in an aggregation are known, the URI is the EPC ID. If only the item type is known, the URI is an EPC ID Pattern identifying the type. The module produces an error if the (input) aggregation does not have a parent ID.

The EPCIS Manifest Query module fields are shown in Table 3-10. The generated manifest is a map from URI to the expected-count for the URI.

Table 3-10 EPCIS Manifest Query Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
EPCIS Manifest Query
Type of module. Values are chosen from a list of module types.
EPCIS WSDL URL
URL
Required. The WSDL URL to connect to the EPCIS.
The default is http://localhost:7001/epcis/EPCIS?WSDL
Username
Username required to access the EPCIS database.
Password
 
Password required to access the EPCIS database.
Connection Timeout
Milliseconds
Required. Time, in milliseconds, to wait for response from EPCIS. Must be greater than zero.
Module Outputs
   
Manifest
Manifest
The generated manifest is sent through this port.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Aggregation
EPCIS Document
Aggregation for which manifest is to be calculated. Possibly output from an EPCIS Aggregation Event Generator module.

 


EPCIS Object Event Generator

This module is used to generate an EPCIS Object Event from a given list of EPCs.

An EPCIS event is an observation of EPC-related activity, expressed at the business level. EPCIS events typically have four informational aspects: what (which EPCs or other entities participated in the event), when (the date and time of the event), where (the location where the event took place and where the entities are expected to be afterward), and why (what business transaction was taking place and what is the business condition of the entities afterward).

You might use a Directional Filter module or output from a Tag List Filter module to send the A to B Tag List to the Object Event Generator module. The generated EPCIS object event may be sent to an EPCIS system.

Note: As described in the EPCglobal EPCIS (Electronic Product Code Information Service) Frequently Asked Questions document, the EPCIS Data Model specifies a standard way to represent visibility information about physical objects, including descriptions of product movements in a supply chain. See that document for information about the Business Step, Disposition, Read Point, Business Location, and Business Transaction fields.

The EPCIS Object Event Generator module fields are shown in Table 3-11.

Table 3-11 EPCIS Object Event Generator Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
EPCIS Object Event Generator
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify the state of the module when started.
EPCIS Event Fields
   
Action
ADD
DELETE
OBSERVE
Required. Specify ADD, DELETE, or OBSERVE for an action.
Read Point
URI
Read point URI that is used in the generated Aggregation Event.
Business Location
URI
Business location URI that is used in the generated Aggregation Event.
For example, urn:acmecorp:bizLocation:store1.salesfloor
Business Step
URI
The business process step that was occurring when the event was captured.
Disposition
URI
Disposition URI that is used in the generated Object Event.
Business Transactions
Name/Value
Business transaction type and ID.
Event Extensions
Namespace/Name/Value
List of namespace-name-value tuples that is included as extensions in the object event.
Module Outputs
   
EPCIS Event
EPCIS Document
Specifies where to send the generated event. For example, you might use an External Sender module to send the event to an EPCIS system.
Template Event
EPCIS Document
The template event received on the Template Event input (and then applied) is sent out from this port.
The template event is sent as an acknowledgement to a template event message.
This may be used by other modules or external applications to make sure that the template is applied before starting to send tags to the module.
Module State
Working
Idle
Specify where to send an output string representing status of the module.
For example, my-module-accumulator: Finish.
There are two possible states:
  • Working: Sent every time the module moves into the state where it is processing messages as a result of a Start input.
  • Idle: Send every time the modules moves into the state where it is not processing messages as a result of a Stop input.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Tag List
Tag List
List of tags used to generate object events, such as an A to B Tag List output by the Directional Filter module.
Template Event
EPCIS Document
This port accepts an EPCIS Document with an object event. This is used to dynamically change the parameters for generating an object event.
The values specified through the template override most of the ones specified as configuration on the module. EPC values and action on the template event is ignored. If values are null on the template event, the values configured on the module are used.
If the fields Read Point, Business Location, Business Step, and Disposition are non-null on the template event, they override those specified in the module configuration.
Business Transaction and Event Extensions specified on the template event are added to those specified in the module configuration.
Start
Any Message Type
A message to this port is a signal to the module to start generating object events. Depending on how the module is configured, the module will ignore messages on the Tag List port until it gets start message. This port accepts any message type. A message on this port changes the module state from Idle to Working.
Stop
Any Message Type
A message to this port signals the module to stop generating object events. The module ignores messages on the Tag List port until it receives a start message again. A message on this port changes the module state from Working to Idle.

 


External Sender

This module is used to send a message from edgeflow modules to external destinations.

This module has one input port, Input, which takes messages of any type and processes them as follows:

  1. If it receives an XML input, it will apply the XSLT transformation and send the result to the output.
  2. If it receives String input, it will send it as-is to the output.
  3. If it receives other types, it will try to serialize it. If it serializes successfully, it applies any XSLT transformation and sends the XML to the output port. If an error occurs trying to serialize, error details are sent on the error port.

The External Sender module fields are shown in Table 3-12.

Table 3-12 External Sender Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
External Sender
Type of module. Values are chosen from a list of module types.
XSLT File
Path of File Containing Stylesheet
Stylesheet to transform message. The file that contains the stylesheet must be on the Edge Server system, and the path must be absolute path.
Destination URI's
URI
Required. The external destination to which to send the message.
For example, in the case of an error message: console:PALLET-STATION-ERROR
You could instead configure this output to use HTTP or JMS to send the events, using the appropriate format.
Module Outputs
   
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Input
Any message type
The message to send to the external destination.

 


HTTP Receiver (One Way)

You use the HTTP Receiver (One Way) module to send messages from external systems to edgeflow modules. The full URL specifies the target module and input port. The HTTP client will receive a response whether the message was delivered to the target module or not.

The HTTP Receiver module fields are shown in Table 3-13.

Table 3-13 HTTP Receiver (One Way) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
HTTP Receiver (One Way)
Type of module. Values are chosen from a list of module types.
TCP Port
Port number between 1 and 65535, inclusive.
Required. The TCP port the module listens on.
URL Suffix
Unique identifier for this HTTP Receiver
Required. The unique URL suffix to be used with this HTTP Receiver. For example, if the URL suffix is specified as tag-commissioning, HTTP messages to URL http://<link>:<port>/ tag-commissioning will be sent.
Parse Request XML
True
False
This parameter indicates whether input XML should be parsed or not. When True, output is an object. When false, output is XML.
Request XSLT File
XSLT
Style sheet to apply to XML. Specify the full path to the file on the Edge Server with the XSLT.
Module Outputs
   
Output
 
Specifies where to send the message. For example, if the message is a bar code, you might want to send it to the Bar Code input of a Bar Code Decoder module, such as tag-commissioning-barcode:Bar Code
Error
 
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.

 


HTTP Receiver (Request Response)

You can use the HTTP Receiver (Request Response) module to send a message to any module port and return the output from that module (or another module) in the response. The HTTP client will receive a response whether the message was delivered to the target module or not.

The HTTP Receiver (Request Response) module fields are shown in Table 3-14.

Table 3-14 HTTP Receiver (Request Response) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
HTTP Receiver (Request Response)
Type of module. Values are chosen from a list of module types.
TCP Port
Port number between 1 and 65535, inclusive.
Required. The TCP port the module listens on.
URL Suffix
Unique identifier for this HTTP Receiver
Required. The unique URL suffix to be used with this HTTP Receiver.
For example, tag-commissioning.
Parse Request XML
True
False
When True, output is an object. When false, output is XML.
Request XSLT File
XSLT
Style sheet to apply to XML.
Response Timeout
Milliseconds
Required. The amount of time to wait to receive the response message that is to be sent back to the HTTP client. The default is 500. Must be greater than zero.
Response XSLT File
XSLT
XSLT file to apply to response XML.
Module Outputs
   
Output
 
Specifies where to send the message.
For example, if the message is a bar code, you might want to send it to the Bar Code input of a Bar Code Decoder module, such as tag-commissioning-barcode:Bar Code.
Error
 
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow. .
Module Inputs
   
Response
Any message type
The input port can receive any type of message to send as the response to the HTTP client, and it uses the type to determine what to send:
  • If it receives an object of type java.lang.String, it sends the string as the response.
  • If it receives a message of type XMLDocument, it sends the XML as the output.
  • If it receives any other type, it will make a best effort to serialize, and sends the result of the serialization as the result.

 


Numeric Display (EDI111 LED)

You can use the Numeric Display module to display a count or similar information on a device.

The Numeric Display module fields are shown in Table 3-15.

Table 3-15 Numeric Display (EDI111 LED) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Numeric Display EDI111 LED
Type of module. Values are chosen from a list of module types.
Device Host
 
Required. The host name for the device.
Device Port
Port number between 0 and 65535, inclusive.
Required. The TCP port used by the device.
Initial Message
Characters
Character value displayed on the LED when the module is initially started. Can be empty.
Display Duration
Milliseconds. Greater than or equal to zero.
Time that the message will be displayed on the LED. The default is 0, which indicates infinite time.
Flash Period
Milliseconds. Greater than or equal to zero.
Time period for which messages will be on or off in flash mode. The message will flash for "display duration" time with an on and off period defined by "flash period." The default is 500.
Module Outputs
   
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Steady Message
Number
Display the input message in steady mode for time defined by display duration.
Flash Message
Number
Display the input message in flash mode for time defined by display duration.
Reset
Any message type
Clear the display.

 


Preset Message (Dynamic)

You can use the Preset Message module to to send a preset message to its destination. The message sending activity may be because of a trigger activation or other event. The message to be sent is preset through the message content input port. Note the following:

The Preset Message (Dynamic) module fields are shown in Table 3-16.

Table 3-16 Preset Message (Dynamic) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Preset Message (Dynamic)
Type of module. Values are chosen from a list of module types.
Module Outputs
   
Message
Any message type
Specify the destination module and port.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Message Content
Any message type.
Sets the content of the message to be sent on a "send" input.
Clear
Any message type.
Clear signal clears the message content.
Send
Any message type.
Send signal sends the message content.

 


Preset Message (Static)

You can use the Preset Message module to to send a preset, static message to its destination. The message sending activity may be because of a trigger activation or other event.

If the send message is received but there is no static message, an empty string is sent.

The Preset Message (Static) module fields are shown in Table 3-17.

Table 3-17 Preset Message (Static) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Preset Message (Static)
Type of module. Values are chosen from a list of module types.
Message Content
String
Required. User-defined message content.
Module Outputs
   
Message
String
Specify the message destination.
Module Inputs
   
Send
Any message type
A message on this port sends the configured message.

 


Serial Number Replenisher (BEA Service)

You can use the Serial Number Replenisher (BEA Service) module to contact the RFID Enterprise Server Serial Number Assignment Service to get unique EPC's.

As a possible use, you might use the EPC Cache Manager together with the Serial Number Replenisher (Static) module or a Serial Number Replenisher (BEA Service) module as follows:

  1. Send the Replenishment Request output of the EPC Cache Manager module to the Replenishment Request input of a Serial Number Replenisher (BEA Service) module.
  2. Send the resulting Replenishment output from a Serial Number Replenisher module to the Replenishment input of the EPC Cache Manager module.

The Serial Number Replenisher module fields are shown in Table 3-18.

Table 3-18 Serial Number Replenisher (BEA Service) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Serial Number Replenisher (BEA Service)
Type of module. Values are chosen from a list of module types.
BEA Service URL
URL
Required. URL of the Serial Number Assignment Service
Username
 
User name for the Serial Number Assignment Service.
Password
 
Password for the Serial Number Assignment Service
Replenishment Size
Number. Must be greater than zero.
Required. The number of EPCs to check out of the Serial Number Assignment Service.
You use this together with the Cache Low Threshold field of the EPC Cache Manager module to manage the cache.
Range Selection Criteria
Name/Value
Additional range criteria can be specified here.
Module Outputs
   
Replenishment
URI String
Specifies where to send the serial numbers to satisfy the replenishment request. For example. tag-commissioning-cachemgr:Replenishment
The EPCs checked out from the serial number assignment service will be sent out on this port. This is a list of Strings representing the EPC range.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Replenishment Request
URI String
This port accepts EPC pattern as input. The EPC pattern must have the fields to identify the EPC class. Since this module uses the serial number assignment service, it handles only types supported by that service (SSCC and GTIN).

 


Serial Number Replenisher (Static)

You can use the Serial Number Replenisher (Static) module to set a fixed range of serial numbers of any EPC type.

As a possible use, you might use the EPC Cache Manager together with the Serial Number Replenisher (Static) module or a Serial Number Replenisher (BEA Service) module as follows:

  1. Send the Replenishment Request output of the EPC Cache Manager module to the Replenishment Request input of a Serial Number Replenisher (Static) module.
  2. Send the resulting Replenishment output from a Serial Number Replenisher module to the Replenishment input of the EPC Cache Manager module.

The Serial Number Replenisher (Static) module fields are shown in Table 3-19.

Table 3-19 Serial Number Replenisher (Static) Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Serial Number Replenisher (Static)
Type of module. Values are chosen from a list of module types.
Serial Range Start
Number. Must be greater than or equal to zero.
Required. EPC start range of serial numbers.
You use this together with the Cache Low Threshold field of the EPC Cache Manager module to manage the cache.
Serial Range End
Number. Must be greater than or equal to zero.
Required. EPC end range of serial numbers.
You use this together with the Cache Low Threshold field of the EPC Cache Manager module to manage the cache.
Module Outputs
   
Replenishment
URI String
Specifies where to send the serial numbers to satisfy the replenishment request. For example, tag-commissioning-cachemgr:Replenishment
Error
Error
Specify the error message destination. For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Replenishment Request
URI String
Message requesting cache replenishment. This might typically come from the Replenishment Request output of the EPC Cache Manager module

 


Stack Light

You can use the Stack Light module to turn the lights on a stack light on or off.

Note: The implementation of the Stack Light module in this release is significantly enhanced from the Stack Light Module of previous versions.

The Stack Light module fields are shown in Table 3-20.

Table 3-20 Stack Light Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Stack Light
Type of module. Values are chosen from a list of module types.
Logical Reader Name
Reader Name
Required. The logical name for the stack light device.
Turn Other Colors Off
True/False
Required. Specifies whether other colors should be turned off on an input message to turn on one color.
Red Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
Amber Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
Green Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
Blue Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
White Duration
Milliseconds
The time in milliseconds for which the light should be lit. The default is zero, which turns the light on indefinitely. Available values increment by 5000 milliseconds, from zero to 40,000.
Module Outputs
   
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Red On
Any message type
Turn red on.
Red Off
Any message type
Turn red off.
Amber On
Any message type
Turn amber on.
Amber Off
Any message type
Turn amber off.
Green On
Any message type
Turn green on.
Green Off
Any message type
Turn green off.
Blue On
Any message type
Turn blue on.
Blue Off
Any message type
Turn blue off.
White On
Any message type
Turn white on.
White Off
Any message type
Turn white off.
Multi-light Control
URI String
This port is used to specify a complex pattern for turning on multiple color lights. This will take in URI string of the same format as expected by ALEPC API: urn:connecterra:stacklight:update=<update value>.
<update value> is a string consisting of 5 digits [0 - 9]. Each digit corresponds to one color. The order of colors in the string is as following: WHITE-BLUE-GREEN-AMBER-RED. The values are:
  • 0 - turn off the light
  • 9 - turn on indefinitely, until a different value is written.
  • X in [1 - 8] - turn on the light for 5 seconds times X.
For example, 01119:
  • Turns white off.
  • Turns blue, green, and amber on for 5 seconds each.
  • Turns red on indefinitely.

 


State Filter

You can use the State Filter module split the Working State output of other modules into distinct Working and Idle outputs.

For example, consider the Module State output of the EPCIS Object Event Generator module. The state for this module can be either Working or Idle, and it is up to the destination to parse the string to determine what the actual current state is.

The State Filter module provides this service for you: it receives the generic Module State as input, parses it, and splits in into distinct Working and Idle outputs.

The State Filter module fields are shown in Table 3-21.

Table 3-21 State Filter Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
State Filter
Type of module. Values are chosen from a list of module types.
Module Outputs
   
Working State
Working/Idle
Specifies the destination of the working message.
Idle State
Working/Idle
Specifies the destination of the Idle message.
Error
 
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
State
Working/Idle
Receives a Working or Idle message from another module.

 


Tag Accumulator

You can use the Tag Accumulator module to accumulate tags for a period of time, or for a period of time delineated by start and end messages. The module starts collecting and keeping track of tags seen on a start message or at start-up time. The module sends the collected tags on a message to the send port, or after a configured amount of time.

The output of this module may typically be used by modules like EPCIS Object Event Generator or EPCIS Aggregation Event Generator. For example, use the Final Tag List output from the Tag Accumulator as the Tag List input to a EPCIS Object Event Generator to generate an object event for all accumulated tags.

The Tag Accumulator module fields are shown in Table 3-22.

Table 3-22 Tag Accumulator Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Stack Light
Type of module. Values are chosen from a list of module types.
Always Accumulating
True/False
Specify if accumulation starts when the module is started. The default is false.
Reset on Start
True/False
Specifies if the accumulated tags should be reset to empty on every start input message. The default is true.
Suppress Empty Result
True/False
Specify whether empty results are reported; that is, sent to the Final Tag List output destination. The default is true.
Finish When
   
Duration Elapses
Milliseconds
Sends out the final tag list when the specified duration elapses. Must be greater than or equal to zero. The default is zero, which is infinite time.
Stable Set
Milliseconds
If the accumulated list does not change in the time specified, the list is considered final and sent out. Must be greater than or equal to zero. The default is zero, which is infinite time.
Stable Set Count
Milliseconds
If the current count did not change for the Stable Set duration, and the current accumulation count is greater than or equal to this count, then final tag list is sent.
A zero value (the default) means disregard the count value and apply the stable set timeout for any count. Must be greater than or equal to zero.
Module Outputs
   
Final Tag List
Tag List
The final Tag List is sent when the module receives a send request or when the configured time has expired.
Running Tag List
Tag List
This outputs the Tag List accumulated to this point. Input on the add or delete port will cause this output to be sent out.
Module State
Working/Idle
Specify where to send an output string representing status of the module. For example, my-module-accumulator: Finish.
The status may be:
  • Working: This is sent every time the module moves into accumulating state.
  • Idle: This is sent every time the module moves into non-accumulating state.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Add
Tag List
This port accepts a Tag List and adds them to the list of collected tags. It will ignore messages that are not of this type.
Delete
Tag List
This port accepts a Tag List and deletes those from the list of collected tags. It will ignore messages that are not of this type
Start
Any message type
A message on this port enables the module to accumulate tags. Any message type is accepted
Finish
Any message type
A message on this port triggers the module to output final tags and reset the list. If the module is configured with "Always Accumulating" set to false, the send message will also put the module back to the state where it will not be accumulating Tags. This port accepts messages of any type.

 


Tag Counter

The Tag Counter module accepts an ECReport, a PCWriteReport, or tag list and outputs a count of the tags in the input.

For example, a Tag Counter module can take the ECReports produced by an ECSpec and output the number of tags in the input.

The Tag Counter module fields are shown in Table 3-23.

Table 3-23 Tag Counter Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Tag Counter
Type of module. Values are chosen from a list of module types.
ECSpec Report Names
ECSpec Report Names
If specified, tags are counted only from ECReports with the specified name. If nothing is specified here, tags from all reports will be counted.
Module Outputs
   
Count
Number
Specify the location to send the tag count.
For example, smart-shelf-counter:Add
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Input
 
The module accepts ECReports, PCWriteReport, and tag lists.
If the ECSpec Report Names configuration field is supplied, it identifies the particular report name (from the ECReport) from which to get input.

 


Tag List Filter

The Tag List Filter module extracts tag information from ECReports, or PCWriteReports and creates a tag list.

For example, a Tag List Filter module can take the ECReports produced by the ECSpec, extract the tag information and send it to the Add port of a Tag Accumulator module.

The Tag List Filter module fields are shown in Table 3-24.

Table 3-24 Tag List Filter Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Tag List Filter
Type of module. Values are chosen from a list of module types.
ECSpec Report Names
ECSpec Report Name
If specified, tags are counted only from ECReports with the specified name. If nothing is specified here, tags from all reports will be counted.
Module Outputs
   
Tag List
Tag List
Specify the destination for the tag list generated by the module.
For example, pallet-station-accumulator:Add
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Input
ECSpecReport or PCWriteReport
The module accepts ECReports, PCWriteReport, and tag lists.
If the ECSpec Report Names configuration field is supplied, it identifies the particular report name (from the ECReport) from which to get input.

 


Tag Verifier

You can use the Tag Verifier module to verify that tags are readable. It takes in tags to be verified and tags read, and produces a list of verified tags, missing tags, extra tags, and a Boolean indicating whether the verification was successful.

The Tag Verifier module fields are shown in Table 3-25.

Table 3-25 Tag Verifier Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Tag Verifier
Type of module. Values are chosen from a list of module types.
Message Pattern
One Actual Per Expected/
Multiple Actual Per Expected
Specifies how to match actual tags input with expected tags input. "One" indicates that for every expected input there will be one actual input. Multiple indicates that it will look in subsequent actual messages for tags in the expected input.
Verification Timeout
Milliseconds. Greater than or equal to zero.
Time to wait for verification. If time elapses, an error message is generated.
Module Outputs
   
All Expected Verified
Boolean
Boolean indicating whether all tags were verified or not.
Verified Tags
Tag List
Tag list of verified tags.
Missing Tags
Tag List
Tag list of missing tags
Extra Tags
Tag List
Tag list of extra tags.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Expected
Tag List
Tag list of expected tags.
Actual
Tag List
Tag list of actual tags.

 


Trigger Receiver

You can use Trigger Receiver modules to configure an edgeflow module to receive a trigger. Triggers are typically used by counted input ports, such as start, stop, clear, and send.

The Trigger Receiver module fields are shown in Table 3-26.

Table 3-26 Trigger Receiver Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Trigger Receiver
Type of module. Values are chosen from a list of module types.
Initial State
Started/Stopped
Specify if the module accepts triggers (started) or not. The default is started.
Trigger URI
URI
Required. URI for a trigger configured within the Edge Server. See Triggers for additional information.
Module Outputs
   
Trigger
Trigger
Specifies where to send the trigger.
Module Inputs
   
Start
Any message type.
Accepts any type message and subscribes the module to the trigger.
Stop
Any message type.
Accepts any type message and causes the module to unsubscribe from the trigger.

 


Wait For Time

You can use the Wait For Time module to hold (queue) input before sending it. It will discard the first message on the hold queue if a discard message is received.

The size of the queue is configurable.

The Wait For Time module fields are shown in Table 3-27.

Table 3-27 Wait For Time Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Wait For Time
Type of module. Values are chosen from a list of module types.
Wait Duration
Milliseconds
Required. The amount of time to wait before sending message. Must be greater than zero.
Queue Size
Number of messages
Required. Message queue size. Must be greater than zero.
Module Outputs
   
Message
 
The triggered message.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
Module Inputs
   
Message
Any message type.
Message to be added to the queue.
Discard
Any message type.
Message to discard first message in queue.

 


Wait For Trigger

You can use the Wait For Trigger module to hold (queue) input until a send or discard trigger is received. If there is no message on the queue and a send trigger is received, an error is generated.

The Wait For Trigger module fields are shown in Table 3-28.

Table 3-28 Wait For Trigger Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Wait For Trigger
Type of module. Values are chosen from a list of module types.
Queue Size
Number of messages
Required. Size of the message queue. Must be greater than zero.
Timeout
Milliseconds
Time to wait before a discard or send of the message is received. When this time elapses, message is discarded and error is sent. Must be greater than or equal to zero. Default is zero, which means infinite time.
Module Outputs
   
Message
Any message type.
The generated message.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Message
Any message type.
The message to be sent on "send" input message.
Send
Any message type.
The command to send message. If no message is present when the send message is received, an error is generated.
Discard
Any message type.
Clears the first message in the queue.

 


Write Tag

This port accepts an EPC or EPC Pattern. If it receives an EPC on this port, it will program a tag with that EPC and output the PCWriteReport.

If the module receives an EPC pattern as input, it will send that to other modules (such as EPC Cache Manager) through the PCspec request output port to construct the PCSpec required to program a tag for the input item type. It will then program a tag using that PCSpec and output the PCWriteReport.

For example, in the case of EPC pattern you might use the Write Tag module together with the EPC Cache Manager module as follows:

  1. The Write Tag module sends the PCSpec Request output to the EPC Cache Manager module PCSpec Request input.
  2. The EPC Cache Manager module then returns the PCSpec, with the appropriate cache name specified in it, to the PCSpec input of the Write Tag module via the PCSpec output.
  3. The write tag module uses the PCSpec to write the tag, and then generates the PCWriteReport.

The Write Tag module fields are shown in Table 3-29.

Table 3-29 Write Tag Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
Write Tag
Type of module. Values are chosen from a list of module types.
Logical Reader Name
Reader Name
Required. Name of printer performing the write operation.
PCSpec Request Timeout
Milliseconds
Required. Time to wait for the PCSpec. Must be greater than or equal to zero. Default is zero.
Module Outputs
   
PCSpec Request
URI String
Specifies where to send the PCSpec Request.
If the module receives an EPC pattern as input, it will send that to other modules (such as EPC Cache Manager) through the PCspec request output port to construct the PCSpec required to program a tag for the input item type.
PCWriteReport
PCWriteReport
PCWriteReport produced by the print request.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
Module Inputs
   
Write
URI String
This port accepts an EPC or EPC Pattern. If it receives an EPC on this port, it will program a tag with that EPC and output the PCWriteReport.
If it receives a pattern, it will send that to other modules (such as the EPC Cache Manager Module) through the PCspec request output port to construct the PCSpec required to program a tag for the input item type.
Setup
URI String
This port accepts EPCs or an EPC Pattern and creates and defines the PCSpec for the EPC Class of the input.
After being set up, the module is ready for further writes and those write operations for the same EPC class will be fast.
This is useful for high speed conveyor-type scenarios, where you want to set everything up before starting the operation.
PCSpec
PCSpec
This port accepts PCSpec from modules such as the EPC Cache Manager Module.

 


XML Generator

You can use the XML Generator module to accept any input type (except Lists) and generate XML output. The Input port takes messages of Any (excluding Lists), String List, or Tag List.

The XML Generator module fields are shown in Table 3-30.

Table 3-30 XML Generator Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
XML Generator
Type of module. Values are chosen from a list of module types.
Input Type
Any (Excluding Lists)
String List
Tag List
Specify the input type from the drop-down list.
Module Outputs
   
XML
XML
Specify the destination for the generated XML.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
This port will send an output if an error occurs in the module processing. This port may be used to indicate any kind of error in an edgeflow.
Module Inputs
   
Input
Any message type
The input from which to generate XML.

 


XML Parser

You can use the XML Parser module to convert XML to a Java object. This module supports all of the object types known to the edgeflow framework or registered with the naming service.

The XML Parser module fields are shown in Table 3-31.

Table 3-31 XML Parser Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
XML Parser
Type of module. Values are chosen from a list of module types.
Module Outputs
   
Output
Based on Input
Specifies where to send the output.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
Module Inputs
   
Input
XML
XML input.

 


XML Transformer

This module takes XML as input and applies an XSLT to it to create transformed XML output.

The XML Transformer module fields are shown in Table 3-32.

Table 3-32 XML Transformer Module
Name
Type/Value
Description
Module Name
String
Unique user-defined identifier for this module.
Module Type
XML Transformer
Type of module. Values are chosen from a list of module types.
XSLT File
 
Required. The style sheet that is applied to the input XML file. The fully specified path to the file on the Edge Server with the XSLT must be specified here.
Module Outputs
   
XML
XML
The transformed XML file.
Error
Error
Specify the error message destination.
For example, my-error-sender: Input.
Module Inputs
   
Input
XML
The XML file to be transformed by the style sheet.


  Back to Top       Previous  Next