MyTargets icon indicating copy to clipboard operation
MyTargets copied to clipboard

Central server scoreboard

Open valgit opened this issue 8 years ago • 12 comments

from Paul Hester on G+ discussion (https://plus.google.com/+PaulHester66/posts/59QqX3cxtR5 )

He wants a server where all score as send for multiple user during a competition, to be able to create a "giant" scoreboard

The app gets a multiplayer option, which can be enabled when a new training/competition is >created. The device would act as a local server if you want to call it that way. It would either be the >device of the organizator, the trainer or just some archer, who wants to start a mini competition >with some other people. Optionally you can scan a QR code from a website. The code would >contain the necessary server informations like the URL requests should be made against, (user >specified) session id and some private access token. Everytime new data is available it gets >additionally sent to the webserver's REST API, which in turn could show an online scoreboard. New "players" can join the competition via the Nearby API. The admin device can accept or reject >connection requests. All newly entered ends are sent to the organizer of the competition, who gets >a giant overview scoreboard, which optionally is sent (if internet is available) to the specified web >server.

more info on the G+ discussion.

some POC have been done by Lönja Selter here : https://bitbucket.org/Tirpitz/arrowslive/

valgit avatar Oct 19 '17 16:10 valgit

I think we need to know who would be willing to write the code. I agree with all of the above. I guess it could be expanded but seems ok for now. Hopefully Florian could alter myTargets but that would leave the "server" to be written and possibly a PC app. My coding skills are actually embedded C so a UI on a PC or an android app is currently beyond me (did a python UI but it's not very slick)

phester66 avatar Oct 20 '17 07:10 phester66

To not get dependant on #1, we could probably start with an intermediate solution, where every participant has to "enter"/scan the server details. I won't write the server code, but would prefer Java or Kotlin as language as it makes sharing code a lot easier. Remains the question of who wants to implement the server and where to host it? My suggestions would be Google App Engine or Heruko, but I'm completely open for alternative suggestions.

DreierF avatar Oct 20 '17 08:10 DreierF

@DreierF for the question "where to host it", I would say : anywhere. I means each person who willing to use this funtion should be able to run is own server on what he wants, so for me AppEngine/Heroku & so on would not fit for me. I would envision a Java WebServer (something like NanoHTTPD for eg (https://github.com/NanoHttpd/nanohttpd)) which can run even on Android, so we can think of a Side App somebody can run on the room on his phone, or have a real server hosted somewhere depending on what usage/style. for eg: maybe you are in a club who already have a webserver for is communication where they would host it , or you are some friends who wants to make a simple headtohead and run it on your phone ....

valgit avatar Oct 20 '17 09:10 valgit

an idea of how it can work with some preliminary API idea scoreboard

valgit avatar Oct 20 '17 12:10 valgit

Maybe it's possible to use a Google sheet to keep track of the score, this would remove the dependency on the server-side code. You do need to have a way to easily share the sheet ID, maybe with a QR Code? Then the sheet can be altered by using the append api function (https://developers.google.com/sheets/api/samples/writing#append_values) A scoreboard might be a 'calculated' chart...

Terones avatar Oct 26 '17 00:10 Terones

@Terones having a "export" to a google sheet is something interesting but maybe of different usage no ?

valgit avatar Oct 26 '17 09:10 valgit

Hey, actually I wouldn't implement a dedicated server but use something like firestore from Google or appsync from aws for it. The free plan from firestore should work for a while and I as a user would be happy to pay for a feature like this.

raven-rwho avatar Mar 02 '18 21:03 raven-rwho

Hallo Florian. ich bin sehr an der Server API Version intressiert. Wie ich sehe sitzt du ja im Gate. Da waren wir auch mal:) Wir entwickeln Webapplikationen. Möglicherweise können wir uns ja ergänzen. Viele Grüße Michael

mjovicevic avatar Jul 19 '18 10:07 mjovicevic

Hallo Michael,

Klingt spannend! Ich habe aktuell leider kaum Zeit an der App weiter zu arbeiten. Falls du Interesse daran hättest Client und Server Seite zu bauen würde ich aber gerne dabei helfen das in die App und in den Play Store zu bringen.

VG Flo

DreierF avatar Jul 19 '18 11:07 DreierF

Hallo Flo. Die Serverseite kann ich gerne entwickeln. In der App müsste konfigurierbar sein ob und wohin die Daten übertragen werden sollen. nach jedem speichern der Eingabe sollte dann eine URL aufgerufen werden: http://servername.com:8080/import/importTargets.jsp?data=<alle_daten_der_passe> Hier sollten dann auch Name, Schützennummer, Datum, Uhrzeit, Runde, Passe und Pfeile übertragen werden. Format ist relativ frei wählbar. Wir nutzen meist eine einfache XML Struktur. Leider sind meine App Entwicklungsfähigkeiten sehr gering. Ist bestimmt ja auch kein Feature welches zeitkritisch ist.

Viele Grüße Michael

mjovicevic avatar Jul 19 '18 12:07 mjovicevic

Sorry für die verspätete Antwort. Das wäre ja tatsächlich relativ leicht umsetzbar. Ich melde mich hier wieder wenn ich Mal Zeit für einen Prototypen hatte.

DreierF avatar Jul 24 '18 05:07 DreierF

So gesehen wäre das ja gar nicht so kompliziert 🤔. Ich würde wenn ich Zeit und Lust habe Mal einen Prototypen dafür bauen mit dem du die Serverseite implementieren und testen könntest. Ich geb dann hier Bescheid.

DreierF avatar Aug 02 '18 14:08 DreierF