Smart Team tracking

30
SmartTeamTracking Biagio Botticelli Stefano Conoci Davide Meacci Salvatore Rivieccio 1

Transcript of Smart Team tracking

Page 1: Smart Team tracking

SmartTeamTracking

Biagio Botticelli Stefano Conoci Davide Meacci Salvatore Rivieccio

1

Page 2: Smart Team tracking

Remember the problem ...

● Tracking the exact position of friends in venues, museums or offices is not a trivial task...

● It could not be possible to make a phone call to each friend...

● How can I get the position of my friends inside the building?

2

Page 3: Smart Team tracking

... and the solution!

Track the position of Groups of Friends !

How ???

Using smartphones with Beacons for indoor positioning and GPS for outdoor !

3

Page 4: Smart Team tracking

What we have done:

4

● Design the Architecture;

● Develop Main Components (Client, Server);

● Set up a Custom Server;

Page 5: Smart Team tracking

Design the Architecture

5

Page 6: Smart Team tracking

Design the Architecture: Server

6

● Id as key (reference to Neo4j);

● Store facebook informations;

● Each User has GPS coordinates;

● Each Group has a radius;

Simple UML Diagram

Page 7: Smart Team tracking

7

● Main flow of the Application

● Definition of the REST API:

1. Main Operations;2. I/O Parameters;3. Paths;

Design the Architecture: Server

Page 8: Smart Team tracking

Design the Architecture: Client

8

A simple and clean UI inspired by Telegram/Whatsapp application

Low coupling in order to work in parallel

Strong cohesion, each class is responsible for its own information

Page 9: Smart Team tracking

Developing Main Components:Server

9

Page 10: Smart Team tracking

Developing Main Components: Overview

10

Page 11: Smart Team tracking

Developing Main Components: Server

11

● Package Structure ○ Main Package (main.java)○ Model○ REST API○ Repositories (Spring Beans)○ Utils (Facebook interactions)

● Maven to manage Dependencies

Page 12: Smart Team tracking

Developing Main Components: Server

12

● Embedded Neo4j DB;

● Easily integrated with Spring;

● Complex queries;

● ID of Nodes as Key in the model;

Page 13: Smart Team tracking

Developing Main Components: Server

13

Page 14: Smart Team tracking

Developing Main Components: Server

14

Page 15: Smart Team tracking

Developing Main Components: Server

15

Page 16: Smart Team tracking

Developing Main Components:Client

16

Page 17: Smart Team tracking

Developing Main Components: Client

17

Realm DBParceler

Page 18: Smart Team tracking

Android Application Flow

18

Page 19: Smart Team tracking

Developing Main Components: Facebook SDK

19

● Available for Android App development;

● Used for Login session together with Server-side REST service;

● Member of Groups could be taken only from Facebook friends list;

Page 20: Smart Team tracking

Social Aspect: Group of Friends

20

● Groups of people created between friends linked by Facebook;

● User can know the position only of those friends that are:○ registered in the same group;○ inside the range of the group;

Privacy is guaranteed!

Page 21: Smart Team tracking

Set Up Custom Server

21

Page 22: Smart Team tracking

Set up Custom Server

22

● Friend’s Domain: amaca.ga

● Linux black 4.5.4-1-ARCH (Debian)

● 3,75 GB RAM

● 100 GB Hard Disk

Page 23: Smart Team tracking

Set up Custom Server

23

● Setup by SSH (port 8082)

● Runs our service on port 8080

● Get code from git (git clone), then compile it (mvn install) and run it (systemclt restart smartteamtracking.service)

● Examine logjournalctl -u smartteamtracking.service

Page 24: Smart Team tracking

Things to do

24

Page 25: Smart Team tracking

Things to do

25

● Avoid sending unused data by REST calls;

● Website for adding beacons to the system;

● Improve and Debug Android Application;

● Privacy checks based on Location.

Page 26: Smart Team tracking

Things to do: Web Application

26

● Drupal as Content Management System;

● Free and Open Source;

● Modular Architecture;

● Target: management of Beacons by RESTful web service;

Page 27: Smart Team tracking

About us

27

Page 28: Smart Team tracking

Contacts

28

● Biagio Botticelli: LinkedIn Profile, [email protected]

● Stefano Conoci: LinkedIn Profile, [email protected]

● Davide Meacci: LinkedIn Profile, [email protected]

● Salvatore Rivieccio: LinkedIn Profile, [email protected]

https://github.com/draugvar/Smart-Team-Tracking

Page 29: Smart Team tracking

Questions ?

29

Page 30: Smart Team tracking

Set Up Custom Server

30

Thank You!