Software tips, techniques, and news.
By Weihao Ding Posted on May 10th, 2016 in Free Downloads, FileMaker
FileMaker 15 provides us with the ability to interact with iBeacon devices using FileMaker Go. This means with some setup we can associate data in our FileMaker solution with physical locations and have our iOS devices access them via the iBeacon technology.
iBeacon is a protocol developed by Apple and introduced in 2013. Much like a lighthouse which sends a signal of light to communicate with ships, an iBeacon device (more commonly referred as beacon) uses a bluetooth low energy (BLE) signal to communicate with any iOS device within its range.
While an iOS device is within the range of a beacon, it can measure its proximity to the beacon. This measurement is much more accurate than the location information you get from GPS, especially when you are indoors.
Watch on Youtube: FileMaker 15 iBeacon
In order to interact with iBeacon using FileMaker Go 15 you need to have some beacons first.
2.1. Get beacons
Regarding hardware, there are many devices that can be used to broadcast as a beacon.
2.2. Beacon settings
Once you get your beacons, the next thing to do is to set them up.
The most important settings are the following three that describe the identification of a beacon:
Other settings:
FileMaker 15 added a new calculation function named "RangeBeacons" which gives back a list of beacons surround you and their proximity information. This enables FileMaker Go to interact with iBeacon devices.
3.1. Format
First let's take a look at the format the function:
RangeBeacons (UUID {; timeout; major; minor})
3.2. Parameters
It has four parameters:
The values of UUID, major and minor are determined by your beacons hardware settings and your use case, which is pretty straightforward.
However to set a proper value for timeout is a little bit tricky. If timeout is set too high, you will have to wait for a long time before receiving any information. If it is too low, you may miss some or even all beacons around you, depends on your beacons geological setup.
So if you are about to build a solution using this function, I would strongly recommend testing your solution in the actual working environment to determine a proper value for timeout. Personally I recommend starting with 2 seconds and then go up if necessary.
3.3. Data returned
The RangeBeacons function will return a list of beacons and their proximity to your iOS device. Each row returned is a beacon found. Within each row, you will find the following information (from left to right) separated by a comma:
3.4. Example
RangeBeacons("D9B9EC1F-3925-43D0-80A9-1E39D4CEA95C") returns information about all nearby iBeacons with the specified UUID. As shown below:
D9B9EC1F-3925-43D0-80A9-1E39D4CEA95C, 5, 1, 3, 14.68, -79
D9B9EC1F-3925-43D0-80A9-1E39D4CEA95C, 5, 2, 3, 18.96, -81
This result indicates that it found two beacons with the specified UUID. Let's look at the first beacon it found:
Now that you are familiar with the RangeBeacons function let's dive deeper and see how it can be utilized in a FileMaker solution. To demo that I'm going to walk you through how to build a simple museum tour app using FileMaker.
The purpose of this app is to provide tourists with materials that can help them better understand a piece of art when they are standing next to it.
4.1. Set up a BEACON table
As mentioned at the beginning of this article, FileMaker 15 allows us to associate data with physical locations. In this specific example, we want to associate text, image, audio or even video to the location where the artwork is at. To do that we need to set up a table to store beacon identification info as well as materials that each beacon is associated with, as shown below: According to their purposes, fields in this table fall into these three categories:
4.2. Create records representing iBeacon devices
Once we have the table ready, the next step is to populate this table with records. The number of records to have in the BEACON table should be the same as the number of beacons your solution may interact with.
In my example file I created two records. Their information is shown below:
4.3. Write a script to show users proper materials according to their locations.
To provide users with the data associated with their location, we need to write a script that does the following steps:
Once we get the script written, we can attach it to a button so whenever the user wants to get the info of the artwork that's in front of them, they can press that button to run this script.
4.4. Set up beacons
Enough with the software, now let's set up our beacons.
When I was testing the sample file I used the Locate app to turn two of my iOS devices into beacons. Here are their settings in Locate:
You can definitely use other iBeacon devices to play with the sample file, as long as their UUID, major and minor settings match the data in the BEACON table.
4.5. Place beacons
The last step is to place beacons to proper locations. If this is for a museum, beacons will need to be placed next to their corresponding pieces of art.
4.6. Try out the sample file
Please open the sample file on your computer and follow the instructions listed in there. I also briefly demo'ed how to set up the environment to use the app in the video for this article.
Besides the Tourism use case mentioned above, there are many many other use cases that can benefit from using iBeacon. I am going to list a few of them here. This list is definitely not exhaustive.
5.1. Inventory Management
Many people use FileMaker to manage inventory. They like to store items' location info in it so they know where each item is at in the warehouse. Now with iBeacon, you can take it to the next level:
5.2. Event Organization
5.3. Education Industry
The ability to interact with iBeacons really opens up infinite possibilities of what FileMaker can do. It allows your FileMaker solution to be the link between the virtual world and the physical world. With a little bit of imagination, I believe you will be able to find a way to use iBeacon to help you manage or grow your business. If you need assistance setting up iBeacons with your FileMaker application, contact our team at DB Services.
Have an amazing idea of how to take advantage of iBeacon but don't know how to implement it?
Let us help.
Weihao is a FileMaker Certified Developer, a creative thinker and a great communicator. He thrives on utilizing his keen technical skillset to solve problems in a manner that will make a positive difference for customers. His passion and drive to demonstrate excellence is evident in all of his work.