|
Draft Date: 7/24/2008
Author: Deny Patel
Abstract
This specification defines an API that
provides digital signage software and kiosk
control of BlueFire MS Pro software.
Introduction
The BlueFire MS Pro API defines a high-level
interface to digital signage and kiosk software.
The API itself is software, platform and
language independent. It is Web API (calling API
via http). The API runs on port 8080of the local
machine bearing IP address 127.0.0.1 The following code extract
illustrates how to call or trigger BlueFire MS
Pro API.
http://<IP_ADDRESS>:<PORT>/<API>?param1=value1...
Following table explains all BlueFire MS Pro
APIs.
API Description
StartInquiry
The StartInquiry API can be used
to instruct BlueFire MS Pro to start looking
for mobile phone with Bluetooth in visible
mode. Once this API is called BlueFire MS
Pro finds discoverable phone within range
and initiates file transfer. If no file
details are provided by the DS or Kiosk
software, BlueFire MS Pro send default
content to the phones only once.
Usage: http://127.0.0.1:8080/StartInquiry
Parameters: None Return value: None Example: http://127.0.0.1:8080/StartInquiry
StopInquiry
The StopInquiry API can be used to
instruct BlueFire MS Pro to stop looking for
mobile phone with Bluetooth in visible mode.
Once this API is called BlueFire MS Pro
stops inquiry process.
Usage: http://127.0.0.1:8080/StopInquiry
Parameters: None Return value: None
Example: http://127.0.0.1:8080/StopInquiry
InquiryStatus
The InquiryStatus API can be used to
determine if BlueFire MS Pro is in inquiry
mode.
Usage: http://127.0.0.1:8080/InquiryStatus
Parameters: None Return value: 1 if in
inquiry mode, 0 if not.
Example: http://127.0.0.1:8080/InquiryStatus
HardStop
The HardStop API can be used to
instruct BlueFire MS Pro to stop looking for
mobile phone with Bluetooth in visible mode
until next HardStop API is called
again. Once this API is called BlueFire MS
Pro stops inquiry process even if the
StartInquiry API is called. HardStop API
takes action as a parameter and value
of hardstop or hardstart
Usage: http://127.0.0.1:8080/HardStop?action=<hardstop|hardstart>
Parameters: action=<hardstop|hardstart> Return value: 1 (on
successful call) Example:
http://127.0.0.1:8080/HardStop?action=hardstop
http://127.0.0.1:8080/HardStop?action=hardstart
SetMobileFile
The SetMobileFile API instructs
BlueFire MS Pro on which file should be
delivered to the mobile phones. The file
must be present on the local system. In
addition to file parameter number of other
parameters can delivered to BlueFire MS Pro
via this API.
Bluetooth address of mobile phone can
also be specified during this API. This will
initiate transfer of given file to the
specified phone.
Usage: http://127.0.0.1:8080/SetMobileFile?mFile=<file>...
Parameters: mFile=<file with path>
seqTag=<seqtag>
(default: null)
blueprint=<true | false> (default: false)
foption=<BEST_FIT | BY_WIDTH | BY_HEIGHT>
(default: BEST_FIT)
owner=<name of owner> (default : mFile)
group=<group name>(default : mFile)
df-WIDTHxLENGTH=<file with path with
specified width and length>
phone=<Bluetooth MAC Address>
Parameters in green
are optional. Return value: None Example:
http://127.0.0.1:8080/SetMobileFile?mFile=Assets/logo.jpg
Example:
http://127.0.0.1:8080/SetMobileFile?mFile=Assets/logo.jpg&seqTag=locationA
Example:
http://127.0.0.1:8080/SetMobileFile?mFile=Assets/logo.jpg&phone=00192CC6C995
Example:
http://127.0.0.1:8080/SetMobileFile?mFile=Assets/logo.jpg&&seqTag=locationA&phone=00192CC6C995
Example:
http://127.0.0.1:8080/SetMobileFile?mFile=Assets/logo.jpg&blueprint=true&foption=BEST_FIT&df-176x220=file1&df-240x240=file2&df-220x176=file3&df-240x320=file4&df-320x240=file5
SetMobilePhone
The SetMobilePhone API sets mac
address of the mobile phone for current file
delivery. If the phone already has been
delivered that file, the file will not be
sent to the phone.
Usage: http://127.0.0.1:8080/SetMobilePhone?phone=<Bluetooth
MAC Address> Parameters: phone=<Bluetooth
MAC Address> Return value: None Example:
http://127.0.0.1:8080/SetMobilePhone?phone=00192CC6C995
AddBlackListPhone
The AddBlackListPhone API can be
called to put specific mobile phone in to
blacklist. The phone is removed from
blacklist after specified time set in
Advance Settings.
Usage: http://127.0.0.1:8080/AddBlackListPhone?phone=<Bluetooth
MAC Address> Parameters: phone=<Bluetooth
MAC Address> Return value: None Example:
http://127.0.0.1:8080/AddBlackListPhone?phone=00192CC6C995
RemoveBlackListPhone
The RemoveBlackListPhone API can
be called to remove specific mobile phone
from blacklist. Once removed BlueFire MS Pro
will deliver files to it.
Usage: http://127.0.0.1:8080/RemoveBlackListPhone?phone=<Bluetooth
MAC Address> Parameters: phone=<Bluetooth
MAC Address> Return value: None Example:
http://127.0.0.1:8080/RemoveBlackListPhone?phone=00192CC6C995
ClearBlacklist
The ClearBlacklist API clears all
mobile phones from blacklist.
Usage: http://127.0.0.1:8080/ClearBlacklist?minutes=0
Parameters: minutes=0 Return value: None
Example: http://127.0.0.1:8080/ClearBlacklist?minutes=0
FoundPhones
The FoundPhones API returns all
discovered phones who are being searched for
OBEX service or receiving file. This will
not contain all phones who are in
discoverable modes.
Usage: http://127.0.0.1:8080/FoundPhones
Parameters: None Return value: Bluetooth
Mac address of all discovered phones who are
being searched for OBEX service or receiving
file Example:
http://127.0.0.1:8080/FoundPhones
LastFileSentToPhone
The LastFileSentToPhone API
returns last file sent to phone.
Usage: http://127.0.0.1:8080/LastFileSentToPhone?phone=<Bluetooth
MAC Address> Parameters: phone=<Bluetooth
MAC Address> Return value: Last file sent
to phone Example: http://127.0.0.1:8080/LastFileSentToPhone?phone=00192CC6C995
FileTimesByPhone
The FileTimeByPhone API returns
all files sent to phone by file name and
time separated by '=' sign one per line.
Usage: http://127.0.0.1:8080/FileTimesByPhone?phone=<Bluetooth
MAC Address> Parameters: phone=<Bluetooth
MAC Address> Return value: File=Time (long
value) (one per line) Example:
http://127.0.0.1:8080/FileTimesByPhone?phone=00192CC6C995
FilesByPhone
The FilesByPhone API returns all files
sent to phone by file name one per line.
Usage: http://127.0.0.1:8080/FilesByPhone?phone=<Bluetooth
MAC Address> Parameters: phone=<Bluetooth
MAC Address> Return value: File (one per
line) Example: http://127.0.0.1:8080/FilesByPhone?phone=00192CC6C995
FileSentToPhone
The FileSentToPhone API returns
weather a specific file has been delivered
to the give phone.
Usage: http://127.0.0.1:8080/FileSentToPhone?phone=<Bluetooth
MAC Address>&file=<filename> Parameters:
phone=<Bluetooth MAC Address>
file=<filename> Return value: 1 if file
has been delivered to phone; 0 otherwise Example:
http://127.0.0.1:8080/FileSentToPhone?phone=00192CC6C995&file=Assets/logo2.jpg
FindDevices
The FindDevices API searches for
visible mobile phones and returns all
discovered phones within range.
Usage: http://127.0.0.1:8080/FindDevices
Parameters: None Return value: MAC_ADDRESS=Friendly
name (one per line. Note: friendly name may
not be available) Example:
http://127.0.0.1:8080/FindDevices
FindObex
The FindObex API finds and returns
OBEX channel on the phone is available for a
given phone.
Usage: http://127.0.0.1:8080/
Parameters: phone=<Bluetooth MAC Address>
Return value: MAC_ADDRESS=OBEX channel (if
no OBEX channel found, it is set to -1)
Example: http://127.0.0.1:8080/FindObex?phone=00192CC6C995
SetParentNode
The SetParentNode API set parent
nodes' IP address and port. This API also
instructs BlueFire MS Pro to connect to the
parent node immediately.
Usage: http://127.0.0.1:8080/SetParentNode?ip=<IP
Address>&port=<port> Parameters: ip=<IP
address>
port=<port> Return value: None Example:
http://127.0.0.1:8080/SetParentNode?ip=192.168.1.96&port=8084
|