DebugEventHandler for BizTalk RFID

Damir Dobric Posts

Next talks:



Follow me on Twitter: #ddobric




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
Filed under:


Damir Dobric Posts wrote FileWatcher DSPI Provider
on 10-29-2007 1:15

Daenet.FileWatcher DSPI (Device Service Provider) is a provider which simulates RFID specific operation

Andreas Erben's posts wrote BizTalk RFID@Work at TechEd EMEA Developers 2007 by daenet
on 11-08-2007 11:56

(German version below) Today we presented about Microsoft BizTalk RFID at the TechEd EMEA Developers

Damir Dobric Posts wrote FileWatcher DSPI Provider - Version 1.2.
on 05-06-2008 23:37

In this post we are announcing the V1.2 File Watcher DSPI provider, which now supports generating of is a .Net Community Blog powered by daenet GmbH.