1
0
mirror of https://github.com/dmsl/anyplace.git synced 2021-06-25 09:21:17 +03:00

Merge pull request #339 from dmsl/develop-clients

Develop clients
This commit is contained in:
Paschalis Mpeis
2020-07-24 17:48:58 +03:00
committed by GitHub
9 changed files with 158 additions and 141 deletions

125
README.md
View File

@@ -8,11 +8,15 @@ A free and open Indoor Navigation Service with superb accuracy!
Anyplace is a first-of-a-kind indoor information service offering GPS-less
localization, navigation and search inside buildings using ordinary smartphones.
- URL: http://anyplace.cs.ucy.ac.cy
- URL: [anyplace.cs.ucy.ac.cy](https://anyplace.cs.ucy.ac.cy)
It is recommended to watch the video tutorials of the Anyplace system on http://anyplace.cs.ucy.ac.cy/, before proceeding with these instructions.
It is recommended to watch the [video tutorials](https://anyplace.cs.ucy.ac.cy/#how-works) before proceeding with these instructions.
We hope that you find our Anyplace Indoor Information Service useful for your research and innovation activities. We would like to have feedback, comments, remarks, and, of course, any experience or test results from your own experimental setups. Currently, we can offer only limited support and assistance on the code, due to lack of resources, but we will try to get back to you as soon as possible. Questions and feedback may be sent to anyplace@cs.ucy.ac.cy
We hope that you find our Anyplace Indoor Information Service useful for your research and innovation activities. We would like to have feedback, comments, remarks, and, of course, any experience or test results from your own experimental setups. Currently, we can offer only limited support and assistance on the code, due to lack of resources, but we will try to get back to you as soon as possible. Questions and feedback may be sent to
anyplace@cs.ucy.ac.cy
If you install Anyplace on your own servers, please record your URL
[here](https://docs.google.com/spreadsheets/d/1GQySk4omlEcTPWoAt_Vt3WUmVbqFko4xoFKQ2N222RI/edit?usp=sharing).
#### In case you have any publications resulting from the Anyplace platform, please cite the following paper(s):
@@ -29,72 +33,65 @@ We hope that you find our Anyplace Indoor Information Service useful for your re
_IEEE Mobile Data Management (MDM 15), IEEE Press, Volume 2, Pages: 291-294, 2015_
## Contributors:
# Components
## A. [Server](server):
The server entails all components to run the anyplace service on your own server.
- Executable (Binary): Visit our Github [releases](https://github.com/dmsl/anyplace/releases)
- Source Code (including IntelliJ IDE SBT file) : [master.zip](https://github.com/dmsl/anyplace/archive/master.zip)
- Instructions: [Link](server)
- Current Leaders: Constantinos Costa, Paschalis Mpeis, Kyriakos Georgiou
#### Server: [Viewer](https://anyplace.cs.ucy.ac.cy/viewer/)
The source code of Anyplace HTML5/CSS3 Viewer Client (IP localization).
- Documentation/Source: [./server/public/anyplace_viewer](server/public/anyplace_viewer)
#### Server: [Architect](https://anyplace.cs.ucy.ac.cy/architect/)
The source code of Anyplace HTML5/CSS3 Architect Tool.
- Documentation/Source: [./server/public/anyplace_architect](server/public/anyplace_architect)
#### Server: [API](https://anyplace.cs.ucy.ac.cy/developers/)
The source code of Anyplace JSON API.
- Documentation/Source: [./server/public/anyplace_developers](server/public/anyplace_developers)
#### Server: Data Store:
To setup Anyplace with Couchbase follow the general server instructions here:
- Instructions: [Link](server)
- Couchbase: [./server/anyplace_views](server/anyplace_views)
## B. [Clients](clients):
- [Android](clients/android/)
- [iOS](clients/deprecated/ios/)
- [Windows Phone](clients/deprecated/windows-phone/)
- [RobotOS](clients/robotos/)
- [Linux](clients/linux/)
- [macOS](clients/macos/)
## C. [Simulator](simulator):
- Documentation/Source: [simulator](simulator)
## LATEST DEVELOPMENT VERSION
To test the latest development version you can fork the [develop branch](https://github.com/dmsl/anyplace/tree/develop).
DEV Testing: [ap-dev.cs.ucy.ac.cy](https://ap-dev.cs.ucy.ac.cy)
#### Important:
- On the given service, you can observe the latest bug fixes and additions.
- It uses the SAME database as the live service so be careful when deleting data.
# Contributors:
- University of Cyprus (Cyprus)
- Alstom (France)
- Infosys (India)
- University of Pittsburgh (USA)
- University of Mannheim (Germany)
# Components
# Links
### A. Server:
The server entails all components to run the anyplace service on your own server.
- Executable (Binary): Visit our Github releases page or visit the link:
https://anyplace.cs.ucy.ac.cy/downloads/anyplace_v4.zip
- Source Code (including IntelliJ IDE SBT file) : https://github.com/dmsl/anyplace/archive/master.zip
- Instructions: https://github.com/dmsl/anyplace/tree/master/server
- Current Leaders: Constantinos Costa, Kyriakos Georgiou
#### Server: Viewer:
The source code of Anyplace HTML5/CSS3 Viewer Client (IP localization).
- Try: https://anyplace.cs.ucy.ac.cy/viewer/
- Documentation/Source: https://github.com/dmsl/anyplace/tree/master/server/public/anyplace_viewer
#### Server: Architect:
The source code of Anyplace HTML5/CSS3 Architect Tool.
- Try: https://anyplace.cs.ucy.ac.cy/architect/
- Documentation/Source: https://github.com/dmsl/anyplace/tree/master/server/public/anyplace_architect
#### Server: API:
The source code of Anyplace JSON API.
- Try: https://anyplace.cs.ucy.ac.cy/developers/
- Documentation/Source: https://github.com/dmsl/anyplace/tree/master/server/public/anyplace_developers
#### Server: Admin Dashboard:
The source code of Anyplace HTML5/CSS3 Architect Tool.
- Try: only for administrative purpose.
- Documentation/Source: https://github.com/dmsl/anyplace/tree/master/server/public/anyplace_dashboard
- TODO: was this component removed/updated/moved? If so update this README.
#### Server: Data Store:
To setup Anyplace with Couchbase follow the general server instructions here:
- Instructions: https://github.com/dmsl/anyplace/tree/master/server
- Couchbase Views: https://github.com/dmsl/anyplace/tree/master/server/anyplace_views
### B. Android v2.6
The Source code for the Anyplace Android Logger and Navigator (WiFi/IMU/IP Localization). Current Leader: Timotheos Constambeys.
- Try: https://play.google.com/store/apps/details?id=com.dmsl.anyplace
- Documentation/Source: https://github.com/dmsl/anyplace/tree/master/android
- Current Leader: Timotheos Constambeys
### C. Windows v1.3.4
The Source code of the Anyplace Windows Phone Client (IP localization).
- Try: https://www.microsoft.com/en-us/store/apps/anyplace/9nblgggzldsk
- Documentation/Source: https://github.com/dmsl/anyplace/tree/master/windows
- Current Leader: Pangiotis Irakleous
### D. iOS v0
The Source code of the Anyplace iOS Phone Client (Magnetic/IMU/IP localization).
- Try: coming soon
- Current Leader: Nikitin Artem.
## LATEST DEVELOPMENT VERSION
To test the latest development version you can fork the DEVELOP branch:
- DEV Code: https://github.com/dmsl/anyplace/tree/develop
## TEAM
- https://anyplace.cs.ucy.ac.cy/#about
## [Team](https://anyplace.cs.ucy.ac.cy/#about)
---
## [License](LICENSE.txt)

View File

@@ -2,58 +2,59 @@ Anyplace Clients
================
Different clients for Anyplace.
## android
Android client with Navigator and Logger.
## [android](android): Anyplace Navigator and Logger
Developed by Timotheos.
## android-legacy
Legacy code from old Android client.
## [android-new](android-new)
In development by Christakis Achilleos
## bin
Precompiled binaries for the clients.
#### [android-new/lib](android-new/lib)
Gradle-based Android library for anyplace.
Uses core and implements new features specific for Android.
## core
### lib
#### [android-new/demo](android-new/demo)
Thin Demo Android client that uses the [android-new/lib](android-new/lib).
## [core](core)
#### [core/lib](core/lib)
Gradle-based Java core library that can be included in both Android and desktop JVMs.
### cli
#### [core/cli](core/cli)
Command line interface for fully-fledged desktops.
Is used to create CLI clients for Windows, Linux, macOS.
### library
Gradle-based Android library for anyplace.
Uses core and implements new features in android java.
## robotos
## [robotos](robotos)
Robot OS client demo.
Developed by Mike Karamousadakis.
## Deprecated
Clients that won't be further developed.
### windows-phone
Legacy Windows client code.
### ios
Legacy iOS client.
## macos
## [macos](macos)
Demo bash script for macOS.
## linux
## [linux](linux)
Demo bash script for Linux.
## windows
## [windows](windows)
PowerShell script for Windows (placeholder).
CURRENTLY WORKING
---
* Christakis Achilleos
## [deprecated](deprecated)
Clients that won't be further developed.
OLD TEAM:
* Marcos Antonios Charalambous
* Constandinos Demetriou
* Christakis Achilleos
#### [deprecated/windows-phone](deprecated/windows-phone)
Legacy Windows client code.
#### [deprecated/ios](deprecated/ios)
Legacy iOS client.
---
TEAM
---
* [https://anyplace.cs.ucy.ac.cy/](https://anyplace.cs.ucy.ac.cy/)
- **Leader:** Christakis Achilleos
- **Co-Advisor:** Paschalis Mpeis
* Past Members:
- Marcos Antonios Charalambous
- Constandinos Demetriou
- Christakis Achilleos
## [About us](https://anyplace.cs.ucy.ac.cy/#team)

43
clients/TODO.md Normal file
View File

@@ -0,0 +1,43 @@
## TODO CA: bash scripts:
This is a minor task (5-10mins).
Put some bash script code snippets for these (from 421):
linux/anyplace.sh
macos/anyplace.sh
With a few comments on what they do (e.g. fetch all buildings..)
# TODO CA: gradle structure: (must be working by Tuesday 28/07)
1. Make core/lib a pure JAVA (compatible both in Android and desktop JVMs).
2. core/cli: put all stuff that will be removed from core/lib here
- core/cli/bin: put a jar file here
3. include core/lib in android-new/lib
It should be included.... (with relative path).
from core/lib you must remove stuff that dont work on android.
Worse case:
core/lib exports a jar, and include that jar (maybe from relative path)
Ideal:
core/lib and android-new/lib will be published as gradle libraries at gradle/maven repos..
4. `hello world` on android-new/demo
- commit !
## TODO CA: Merging process: (must have aleast started/dug into by Tuesday 28/07)
Merge the legacy code from clients/android:
* most stuff will end up:
- core/lib
- android-new/lib
- few stuff on android-new/demo
* Deprecate stuff (while moving) from android/
- e.g. replace ActionBarSherlock with build in libs..
+ for exaple: SherlockActivity -> SupportActivity (android support lib)
- see tutorials on migrating/deprecating Sherlock
- similarly with other stuff..
## On next meeting (with PM): see status of this [TODO.md](./core/lib/TODO.md)

View File

@@ -1,12 +1,2 @@
# TODO CA include core/lib
(it should be included....
from core/lib you must remove stuff that dont work on android)
Must be inlcuded with RELATIVE path.
## worse case:
core/lib exports a jar, and include that jar (maybe from relative path)
## ideal:
core/lib and android-new/lib will be published as gradle libraries at gradle/maven repos..
# Anyplace Android Gradle library
This library is used to create the [Demo Client](./demo/)

View File

@@ -1,5 +1,6 @@
# Android Client
# Android v2.6
The Source code for the Anyplace Android Logger and Navigator (WiFi/IMU/IP Localization). Current Leader: Timotheos Constambeys.
Navigator and Logger.
Developed by Timotheos.
- Try: https://play.google.com/store/apps/details?id=com.dmsl.anyplace
- Documentation/Source: https://github.com/dmsl/anyplace/tree/master/android
- Current Leader: Timotheos Constambeys

View File

@@ -1,4 +1,9 @@
# AnyPlace - iOS
# AnyPlace - iOS v0
The Source code of the Anyplace iOS Phone Client (Magnetic/IMU/IP localization).
- Try: coming soon
- Current Leader: Nikitin Artem.
This is an Ionic-based iOS version of Anyplace using Magnetic Maps.

View File

@@ -0,0 +1,6 @@
### Windows Phone v1.3.4
The Source code of the Anyplace Windows Phone Client (IP localization).
- Try: https://www.microsoft.com/en-us/store/apps/anyplace/9nblgggzldsk
- Documentation/Source: https://github.com/dmsl/anyplace/tree/master/windows
- Current Leader: Pangiotis Irakleous

View File

@@ -1,22 +0,0 @@
MIT License
Copyright (c) 2020, Data Management Systems Lab (DMSL), Department of Computer Science, University of Cyprus.
All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -5,14 +5,10 @@ src="https://gist.githubusercontent.com/Paschalis/09af7e45f069582a3e97a7021be2a7
width="250">
</p>
[![Watch the video]](https://www.youtube.com/embed/dRDnF2wCoUo)
[Watch the video](https://www.youtube.com/embed/dRDnF2wCoUo)
<a href="https://www.cs.ucy.ac.cy/~dzeina/papers/mdm20-a4iot.pdf" class="publications-title" target="_blank">The Anyplace 4.0 IoT Localization Architecture</a>"</strong>, Paschalis Mpeis, Thierry Roussel, Manish Kumar, Constantinos Costa, Christos Laoudias, Denis Capot-Ray Demetrios Zeinalipour-Yazti <b>"Proceedings of the 21st IEEE International Conference on Mobile Data Management"</b> (<strong>MDM '20</strong>), IEEE Computer Society, ISBN:, Pages: 8, June 30 - July 3, 2020, Versailles, France, <strong>2020</strong>.&nbsp;
This repository is part of [Anyplace Open Source project](https://github.com/dmsl/anyplace):
```
A free and open Indoor Navigation Service with superb accuracy!
```
It helps setting up and running Anyplace 4.0 software stack within minutes.