Respinto REST APIs

Discussione in 'Proposte roleplay' iniziata da Zio_Sam00, 19 Maggio 2021.

Stato della discussione:
Chiusa ad ulteriori risposte.
  1. Zio_Sam00

    Zio_Sam00 Utente

    Medaglie:

    Messaggi:
    159
    Mi piace ricevuti:
    14
    Titolo della proposta:
    REST APIs

    Descrivi la proposta:
    Salve, vorrei proporre l'introduzione di qualche semplice API (tipo REST).

    A volte sarebbe veramente comodo sapere, mentre non si è online nel server, alcuni dati, come ad esempio la data e l'ora nel server. Questa idea nasce perchè spesso ho problemi a visualizzare la data e l'ora nel server, ovvero la barra in alto non è visibile, è buggata. Ho notato che non sono l'unico ad avere questo problema, infatti anche alcuni tra i miei amici non riescono a vedere la data e l'ora. Tralasciando questo problema, sarebbe veramente comodo sapere la data e l'ora anche quando si è offline, soprattutto per i dipendenti aziendali che così possono sapere che ore sono in game ed andare al lavoro nella corrispettiva azienda.

    La mia richiesta è molto semplice, in quanto non chiedo vengano introdotte molteplici API, basterebbe avere dati come data, ora e sapere se il server è online. Un possibile utillizzo di esse, idealmente sarebbe rivolto ai bot telegram, che ottengono questi dati tramite una semplicissima richiesta http. Avevo già vagamente parlato con @Pirro di ciò, però poi mi sono dimenticato di parlargli.

    Scendendo nei dettagli, propongo 3 cosette:
    - aggiungere nella urlpatterns list, la pagina developer/ (tecnocraft.net/developer/). Questa sezione verrà dedicata solo per i developer, quindi conterrà la documentazione relativa le API.
    - associare la richiesta http all'url tecnocraft.net/developer/api/{request}
    - la risposta verrà data sotto forma di json, ad esempio
    [
    {
    "serverStatus": "online",
    "date": "1/1/1970",
    "time": "00:00"
    }
    ]

    Se avete bisogno di sapere altri dati, oltre la data e l'ora, scrivete le proposte nei commenti;)
     
    • Favorevole Favorevole x 13
    • Mi piace Mi piace x 1
    • Brillante Brillante x 1
    #1
    Ultima modifica: 19 Maggio 2021
  2. Dino_Alfieri

    Dino_Alfieri Ex Developer

    Medaglie:

    Messaggi:
    940
    Mi piace ricevuti:
    176
    Dino_Alfieri
    Approvo, avevo proposto anche una cosa simile per il sito cnsl
    cnsl.tecnocraft.net/login=USERNAME?password=PASSWORD che ritornava la lista dipendenti della tua azienda, così da poter sviluppare un bot telegram sempre aggiornato per le aziende.
     
    • Mi piace Mi piace x 1
    #2
  3. LumoZitrix

    LumoZitrix Utente attivo

    Medaglie:

    Messaggi:
    335
    Mi piace ricevuti:
    22
    ci starebbe l'aggiunta di questo api bhe con limitazioni ovviamente
     
    #3
  4. Rattlyy

    Rattlyy Ex Developer

    Medaglie:

    Messaggi:
    153
    Mi piace ricevuti:
    35
    Rattlyy
    Il problema è che queste api che si interfacciano con minecraft rischiano di creare grossi problemi (ES: Attacco DDoS non filtrato che fa crashare anche il roleplay).
    In più implementare un sistema del genere dentro minecraft è abbastanza complicato e potrebbe causare problemi di performance.

    Disapprovo
     
    #4
  5. Zio_Sam00

    Zio_Sam00 Utente

    Medaglie:

    Messaggi:
    159
    Mi piace ricevuti:
    14
    Si vero, ottima idea @Mattyy_. Magari la risposta potrebbe essere una lista di dizionari, dove le 2 chiavi sono playerName e playerStatus, cosicché si possa ottenere il nome giocatore e se è online. In questo modo, noi potremmo successivamente andare a creare un bot telegram che automatizza le richieste al server, e si può creare uno script che va a contare le ore totali di lavoro settimanali di ogni dipendente. Ciò andrebbe ad aiutare il direttore nella valutazione dello stipendio da assegnare ai dipendenti. Dico ciò, perché ad esempio noi in posta, quando lavoriamo dobbiamo fare .on e .off sul bot.
     
    #5
  6. Zio_Sam00

    Zio_Sam00 Utente

    Medaglie:

    Messaggi:
    159
    Mi piace ricevuti:
    14
    .
    Per i problemi di performance non ho idea, non so che macchina avete, e quanta banda.
    Per quanto riguarda i possibili attacchi DDos, immaginavo qualcuno me lo dicesse ahah. Ho delle possibli soluzioni, ma forse è meglio discutere di ciò a voce su ts? Comunque le query al server verrebbero limitate, 1 ogni 10 minuti. Mentre le query al sito web non hanno un delay. Tuttavia per fare le query, si potrebbe fare che sia necessaria una chiave di autenticazione, ottenibile dalla pagina developer/ all'interno della documentazione, una sorta di registrazione. Questa chiave ha una durata di x mesi, e permette solo alle persone in possesso di essa di fare le query. La chiave verrà data solo a persone che giocano su tecnocraft, e che abbiano un motivo per utilizzarle. Un abuso comporterà la disattivazione di quella chiave.
    L'urlpattern in questo modo diventerà tipo tecnocraft.net/developer/{authentication_key}/api/{request}
     
    #6
  7. LumoZitrix

    LumoZitrix Utente attivo

    Medaglie:

    Messaggi:
    335
    Mi piace ricevuti:
    22
    non si può fare con un bot di telegram ?
     
    #7
    Ultima modifica: 10 Giugno 2021
  8. Zio_Sam00

    Zio_Sam00 Utente

    Medaglie:

    Messaggi:
    159
    Mi piace ricevuti:
    14
    @LumoZitrix scusa, ma non ho capito (il come hai scritto in italiano). Cosa centra il bot?
     
    #8
  9. cantegina

    cantegina Utente fisso

    Medaglie:

    Messaggi:
    975
    Mi piace ricevuti:
    65
    cantegina
    l'orario in game può variare in base ai TPS del server (giuro non copiato da gein) quindi non sarebbe realizzabile e questa cosa è già stata proposta e rifiutata
     
    #9
  10. Zio_Sam00

    Zio_Sam00 Utente

    Medaglie:

    Messaggi:
    159
    Mi piace ricevuti:
    14
    Scusami, non vorrei sembrare arrogante, ma sai cosa sono delle API? Perchè dal come hai scritto il messaggio citato, non mi pare, o magari hai solo scritto male la frase in italiano (sorry). I dunno.

    Comunque, le API servirebbero proprio per risolvere questo problema, dei TPS! Visto che il tempo all'interno del server è una grandezza non lineare e non costante nel tempo, ne comporta il fatto che non sia prevedibile tramite script. Le API servirebbero proprio per risolvere questo problema.
     
    #10
  11. Dino_Alfieri

    Dino_Alfieri Ex Developer

    Medaglie:

    Messaggi:
    940
    Mi piace ricevuti:
    176
    Dino_Alfieri
    Gein in quella proposta ha sbagliato, in quanto inserendo un bot telegram direttamente in un plugin (come quello dello /concorsi) sarebbe possibile ottenere l’orario preciso in qualsiasi istante, l’ho già avvertito di questa cosa
     
    #11
  12. Zio_Sam00

    Zio_Sam00 Utente

    Medaglie:

    Messaggi:
    159
    Mi piace ricevuti:
    14
    Sisi ci sta, bell'idea:)
     
    #12
  13. Rattlyy

    Rattlyy Ex Developer

    Medaglie:

    Messaggi:
    153
    Mi piace ricevuti:
    35
    Rattlyy
    Si ma comunque hostare un webserver sul server minecraft (Unico sistema per ottenere l'orario, prenderlo direttamente dal server) è molto complicato e resource intensive, oltre che anche un sistema di auth crasherebbe con un attacco DDoS.

    L'unica soluzione è adottare un sistema del genere:
    [​IMG]
    Solo che non so se questa è una soluzione fattibile al momento.
     
    • Mi piace Mi piace x 1
    #13
  14. Zio_Sam00

    Zio_Sam00 Utente

    Medaglie:

    Messaggi:
    159
    Mi piace ricevuti:
    14
    @Rattlyy ok, ho capito dal progetto cosa pensi che si potrebbe fare. Ma perchè un webserver? Premetto che parlo da web developer, e che so non sono un game developer (non ho mai lavorato con Minecraft). Ho visto che ce un bot telegram per fare i ticket, che sono gli stessi ticket che si possono fare in game. Non si può fare un sistema analogo?
     
    #14
  15. GreenWolk

    GreenWolk Utente fisso

    Medaglie:

    Messaggi:
    1.454
    Mi piace ricevuti:
    110
    GreenWolk
    APPROVO!
     
    #15
  16. GreenWolk

    GreenWolk Utente fisso

    Medaglie:

    Messaggi:
    1.454
    Mi piace ricevuti:
    110
    GreenWolk
    Concordo!
     
    #16
Stato della discussione:
Chiusa ad ulteriori risposte.