Social Media 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

Link to Social Media Interface

Here is an example of a link to social media within an "arrived" method of a subscriber:

	@Override
	public void tagArrived(TagReadEvent tag) {
		System.out.println("Tag arrived at location " + location + ": " + tag.getTag().getFormattedID());
		TwitterTemplate twitter = new TwitterTemplate(apiKey, apiSecret, accessToken, accessTokenSecret);
		twitter.updateStatus("Tag " + tag.getTag.getFormattedID() + " has arrived at location " + location + "!");

		FacebookTemplate facebook = new FacebookTemplate(accessToken);
		facebook.updateStatus("Tag " + tag.getTag.getFormattedID() + " has arrived at location " + location + "!");
	}

You'll need the credentials for a twitter and/or facebook account. You can find a good explanation of those credentials here.

For this example we simply used the tag ID and the location that the Northwind project has as an example of publishing information to facebook or twitter. In reality the tagID probably wouldn't be particularly useful, and it would be advisable to go to the database and get some useful information the tag ID points to (such as the name of a person, or an item).

Personal tools