Interfacing Flash with the Real World Part 1: Magnetic Stripes and Barcodes – FlashForward 2004 Source Files

DefaultComments Off on Interfacing Flash with the Real World Part 1: Magnetic Stripes and Barcodes – FlashForward 2004 Source FilesPosted on July 27, 2004 by:
in Default

I spent the last few days tinkering with my presentation files from my Ask the Experts session on Kiosks and Interactive Exhibits at FlashForward 2004 in New York earlier this month. I’m sorry to have taken so long to post the source files, but hopefully those of you who have been waiting will find them even more useful now.

I decided to greatly enhance all the files I demonstrated for several reasons, the three most important being:

  • I won’t be in the room walking you through them and explaining them.
  • I wanted the files to be more accessible to those who weren’t able to attend my session but wanted to play with the files.
  • Not everyone has barcode scanners and magnetic stripe readers laying around at their disposal, so I needed to add simulation modes, both code-wise and visually.

    So, I set about sprucing up all the files with those goals in mind. To maximize my time, I have decided to focus on enhancing and distributing the files in a specific order, based on emails and feedback I have received thus far. As such, I’ll be releasing all the files over time in a series with the expanded and enhanced features and information. The first set of files I’m releasing deal specifically with two examples I showed where I utilized “keyboard wedge interface” devices to transfer real-world, tangible data to Flash. In this case the two examples were an ID Tech Omni Slot Reader (Magnetic Stripe and Barcode) for reading in drivers license information from drivers license ID cards that conform to the AAMVA Standard, and a UPC / ISBN barcode lookup that obtains the UPC / ISBN number data via a Symbol LS2208 handheld barcode scanner.

    As I mentioned I have enhanced the files a great deal. For those of you in attendance at my session you will remember that the sample files I showed were quite bare bones – no interface to speak of really – just plain white screens with some simple component buttons and input fields, and a datagrid or two. (We will address the datagrid redistribution issue shortly) In the session the intent was to focus on the code, and the concept of utilizing the devices, and to inspire and inform those in attendance of new and alternative ways to provide/get data into Flash that might lend to the creation of Kiosks and Interactive Exhibits. Hence, the lack of interface or focus on the creation of the interface in my session. Well, now its got a fairly decent interface, some informative information, and simulation modes, complete with visual simulations of the actual devices operating. I have also included some extra notes, information and attributions in the form of comments in the ActionScript source. So without further ado – please find the first set of files at the following URLs:

    PC USERS: RHALL_FF2004NY_PART01.zip – ZIP File – 723k

    MAC USERS: RHALL_FF2004NY_PART01.dmg.gz – GZipped Mac OS X Disk Image – 757k

    Also please find this “resources” list (plain text file) that I compiled and mentioned during my presentation – this has some names, and handy URL’s for equipment manufacturers and sources I use a great deal.

    UPDATE – 08/04/04: I failed to include a tiny class file I use all the time called StringExtras that is referenced in the example files. You will need it for some of the string manipulation done with the track data from the magnetic stripes. Download StringExtras.as

    NOTE: Due to licensing restrictions, I am unable to redistribute the DataGrid component used in the drivers license DLScan example application included in the above archives. I have however made it very simple to use without, and very simple to add it back in if you have your own licensed copy of Flash MX 2004 Professional. Read the comments in the ActionScript for more info – but basicaly it entails a simple drag and drop to your library and you are good to go. If you don’t own professional – you can still see the results via the trace window or by looking at the properties of an object I return after a drivers license has been scanned.

    I have begun to utilize the Creative Commons Attribution-NonCommercial-ShareAlike 2.0 License for some of my published work including the source files found here. See the notes in the comments of the ActionScript for more info.

    Here is a list of the next few sets of files I’ll be sprucing up and releasing:

  • Examples of using the .ini file reader method I discussed and demonstrated that streamlines and enhances the configuration of large Flash applications
  • A proximity sensor system that can be used to trigger and control “attract” or “loop” screens on a Kiosk or Interactive Exhibit – the electronics and input built with MakingThings.com’s Teleo Introductory kit and some infrared triangulation sensors (as well as a passive infrared sensor model I did not have time to demonstrate)
  • A fleshed out presentation stack with audio enhancements – the presentation stack I used was primarily an outline to guide me that I filled on off the cuff. I’ll be enhancing this so that its much more useful without me jabbering away. 🙂
  • Sample Visual Basic, Visual Basic .NET, and C# (including 2005 beta) stub source code to create “wrapper applications” or “Operating System Supplements” (OSS) applications to embed the Flash ActiveX control to allow programmatical extension of the built in capabilities of the Flash Player to communicate with the host operating system, external devices and external applications.
  • A revised and updated Acrobat PDF of the Appendix that I wrote on the topic of touch-screens and kiosks for Flash for the book Flash Enabled: Flash Design and Development for Devices, that was published back in 2002 just about the time the original Flash MX came out.
  • And a few other goodies that I didn’t get a chance to show during the session.
  • I’ll probably also release the original stripped down versions of a few of the more code intensive files so that the “extra” interface goodies and AS don’t get in the way of things for those of you who attended the session and want to focus directly on the core ideas. If there is anything else I covered in the session that you don’t see here that I promised I would put online, please post a comment and let me now. Thanks! -Rob

    Share
    PRINT THIS ENTRY

    Comments are closed.