Sunday, July 29, 2007

BizTalk RFID: notes

After finally getting around to setting up VMWare Workstation with a BizTalk 2006 R2 Beta2 + BizTalk RFID, I did several experiences with the Phigets RFID reader and the Phidgets DSPI.

Two notes about the setup of the DSPI: first, do it manually, following the instructions. The setup script has an error in the names of the dll files (is uses the name "phidgets" instead of the correct name of the dll, "*phidget*"). Second, if you have an error when starting the provider, check this page in the Msdn forums. The setup guide for the Phidgets RFID quickly guides you through a complete configuration of the provider, device, and business process, so I highly recommend you follow it.

One important limitation of the Phidgets DSPI is that it doesn't support the elimination of repeated reads. Just to give you an example of why this is a limitation, if you hover the Rfid tag for about half a second over the reader, you get 10-20 tag reads. I have my doubts as to wether this elimination should happen at the provider level (DSPI)... it seems to me it should be done in the generic RFID Infrastructure. Apparently other DSPIs have the same limitation, but there's a way around it: either use specific features of the device (non applicable in the case of the Phidgets reader), or an event handler associated to the business process you define (check the DupElim sample in the BizTalk 2006 R2 Beta2 samples).

Something that I found unintuitive when setting up BizTalk RFID is that this package (much like BizTalk Services) is not part of BizTalk Server itself. Or rather, what I mean is: you won't get "tag read" messages directly into the Message Box, like you could assume you'd get. Rather, you associate some kind of "sink" to an application/business process you configure in the RFID management console (typically, the out-of-the-box SqlSink that just drops the reads in a SQL Server database), and then use BizTalk Server to consume events from that sink. An alternative way of getting tag reads is to use an orchestration to consume the RFID webservice (check the ConsumeRFIDWS sample). This does make BizTalk RFID into a generic "RFID server", but the BizTalk in the name is misleading. One further note about this is that you do get, out of the box, the capability to use the Business Rule Engine as a way of validating your tag reads (check the BRESample).

Microsoft's forum for BizTalk RFID is here, and I highly recommend it if you have problems, I found a solution there for all the difficulties I had.


On to a different subject, Microsoft has recently updated the Roadmap for BizTalk Server, with the interesting part being the "Beyond Biztalk Server R2" section. It seems that the "Solution Designer" that left us open eyed when it was shown in a Channel9 video two years ago is really not going to happen.

No comments:

Post a Comment