Messaging (MQTT) Integration Jumpstart

From RifidiWiki

Jump to: navigation, search

Create a RifidiApp

  • 1. Create a RifidiApp. First, be sure to set up a developer environment using these steps.

Then check the developer guide for creating your own Rifidi App. Check the section starting at "Importing a Project Template" on page 5 for how to do this.

After your application is set up, you'll have to choose how you want to receive your tags. Tags that are read by RFID readers will be inserted into an event processing engine called Esper. There are a few different ways to receive these tags, as outlined here:

Import Services

  • 2. You can use one of the default services to send and receive tags. You can see a description of the default services here.

You can also see an example of the two services in action in the "Northwind" example (specifically, the "ReadZoneMonitoringService" and the "StableSetService"). See the developer's guide for an overview of the Northwind example. The source code for the example (which can be imported as a project) is in the "apps" folder of the SDK.

Taking the ReadZoneMonitoringService as an example, a method will be called on designated classes whenever a tag arrives or departs. You can find out the ID of this tag (as well as other useful information) and then do whatever you wish with it, including writing the event to a cloud or to social media.

Create Custom Esper Rules

  • 3. You can also write your own custom Esper rules, usually in concert with the ReadZoneMonitoringService. You can find out how to create custom Esper rules at the Custom Esper Rules Jumpstart page.

Add Third Party Libraries

Sample Rifidi MQTT Application with SDK

  • 5. Here is where one can find the sources for the sample Rifidi MQTT Application (coming soon Fall 2014). The use case for the application publishes arrived and departed events from the front door (one to one) and back door (one to many relationship) to internal MQTT Topic where the Topic Name is the reader id.Rifidi MQTT App using Rifidi SDK

Example Response


<tagMessage>
<antennaId>0</antennaId>
<stationId>LLRP_1</stationId>
<timeStamp>1413329479796</timeStamp>
<tag>300833b2ddd9014035050000</tag>
</tagMessage>
Personal tools