Skip to content

constandinos/anyplace-lib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anyplace Library

A standalone java library that provides access to a set of endpoints from the Anyplace API. The library connects directly with the Anyplace API and is written in JAVA. The clients of this library collect the WiFi fingerprints from a building and use this library for localization. The library has been testing on linux, mac and android systems.

Preamble

Author(s): Constandinos Demetriou, Christakis Achilleos, Marcos Antonios Charalambous

Co-supervisor: Paschalis Mpeis

Supervisor: Demetrios Zeinalipour-Yazti

Copyright (c) 2019 Data Management Systems Laboratory, University of Cyprus

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/

Installation

Make sure you have java tool installed in your system. The following command clone the repository.

git clone https://github.com/constandinos/anyplace-lib.git && cd anyplace-lib

Usage

Linux and Mac Client

java -jar bin/anyplace-lib.jar -<endpoint> <parameters>

Examples

Get all annotated buildings:

java -jar bin/anyplace-lib.jar -buildingAll

Get all floors of a building:

java -jar bin/anyplace-lib.jar -allBuildingFloors <buid>
java -jar bin/anyplace-lib.jar -allBuildingFloors username_1373876832005

Get all POI connections inside a floor:

java -jar bin/anyplace-lib.jar -connectionsByFloor <buid> <floor>
java -jar bin/anyplace-lib.jar -connectionsByFloor username_1373876832005 1

Get all positions with their respective Wi-Fi radio measurements:

java -jar bin/anyplace-lib.jar -heatmapBuidFloor <buid> <floor>
java -jar bin/anyplace-lib.jar -heatmapBuidFloor username_1373876832005 1

Radiomap using all the entries near the coordinate parameters:

java -jar bin/anyplace-lib.jar -radioBuidFloor <buid> <floor>
java -jar bin/anyplace-lib.jar -radioBuidFloor username_1373876832005 1

Estimate the location of the user:

java -jar bin/anyplace-lib.jar -estimatePosition <operating_system> <buid> <floor> <algorithm>
java -jar bin/anyplace-lib.jar -estimatePosition linux username_1373876832005 1 1
java -jar bin/anyplace-lib.jar -estimatePosition mac username_1373876832005 1 1

Estimate the location of the user offline. Needs the radiomap file:

java -jar bin/anyplace-lib.jar -estimatePosOffline <operating_system> <buid> <floor> <algorithm>
java -jar bin/anyplace-lib.jar -estimatePosOffline linux username_1373876832005 1 1
java -jar bin/anyplace-lib.jar -estimatePosOffline mac username_1373876832005 1 1

Implemented Endpoints

Navigation

  • poiDetails: Get Point of Interest details.
  • navigationXY: Get Navigation instructions from a given location to a POI.
  • navPoiToPoi: Get Navigation instructions between 2 POIs

Mapping(Public)

  • buildingAll: Get all annotated buildings.
  • buildingsByCampus: Get all buildings for a campus.
  • buildingsByBuildingCode: Get all buildings with the same code.
  • nearbyBuildings: Get annotated buildings near you (50 meters radius).
  • allBuildingFloors: Get all floors of a building.
  • allBuildingPOIs: Get all POIs inside a building.
  • allBuildingFloorPOIs: Get all POIs inside a floor.
  • connectionsByFloor: Get all POI connections inside a floor.
  • heatmapBuidFloor: Get all positions with their respective Wi-Fi radio measurements.

Blueprints

  • floor64: Downloads the floor plan in a base64 png format (w/o prefix).
  • floortiles: Fetches the floor plan tiles zip link.

Position

  • radioByCoordinatesFloor: Radiomap using all the entries near the coordinate parameters.
  • radioBuidFloor: Radiomap using all the entries near the coordinate parameters.
  • radioBuidFloorRange: Radiomap using all the entries near the coordinate parameters.
  • estimatePosition: Estimate the location of the user.
  • estimatePosOffline: Estimate the location of the user offline. Needs the radiomap file.

Credits

  • Constandinos Demetriou
  • Christakis Achilleos
  • Marcos Antonios Charalambous

TEAM

About

A java library that provides access to a set of endpoints from the Anyplace API

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages