One of most exiting features of Microsoft BizTalk RFID is the ability to handle tag read events asynchronously. When one DSPI provider detects one tag in the radio field, the event detection should be notified. Following code snippet shows simplified how to do that:
. . . // obtain tagEvent Notification notify = new Notification(tagEvent);
if (DeviceNotificationEvent != null)
{
DeviceNotificationEvent(this, new NotificationEventArgs(notify));
}
After this moment the information about read tag is dispatched to event handler pipelines of all processes which are bound to physical device, which detected the tag. The event is dispatched to the first event handler in the pipeline, then to the second one until the last handler (event sink) is reached. Developing of event handlers is pretty straight on. Unfortunately, in more complex scenarios you could run into many problems. To simplify development process of one event handler I implemented the handler which should help you to analyses the processing of event in the pipeline. This event handler is called DebugEventHanlder. It can perform following operations:
1. Beep when the event enters the processing pipeline.
2. Writing of Tag event data to debug output.
3. Writing of tag event data to file
4. Termination of event processing
Depending on what you want to do with the DebugEventHanlder following property page can be used for configuration:
HandlerName is any text which identifies your event handler. This text will be traced in debug output with all other tag event data. It is useful in some scenarios to differ between multiple DebugEventHanlder-s installed in the same event processing pipeline.
Properties IsBeeperActivated, IsDebugTraceActive, IsTerminationAcivated and IsTraceFolderActive can be used as a flag. It means you can activate one, more or all of them. Note that when IsTraceFolderActive is set on TRUE, the IsTraceFolderActive has to have a valid value, which defines the trace destination. The trace destination is an existing folder (folder is not automatically created) which will contain all traced tag events.
Following picture shows what data is written in the file trace.
The binary (24kb) can be downloaded here.
Posted
Oct 13 2007, 10:42 PM
by
Damir Dobric