Pronto Flatnuke, aggiornamenti per me?

E' fuori di dubbio che, utilizzando quotidianamente un certo software, si trovi assai utile essere avvisati automaticamente quando viene rilasciata una nuova versione. Che sia una versione con un sacco di nuove caratteristiche, piuttosto che invece porti la correzione di pericolosi bug, poco importa: l'utente vuole essere sempre aggiornato.

Ecco allora che, da un'idea nata in ML-dev, ho iniziato a pensare al metodo più semplice da implementare in Flatnuke.

Ho subito scartato, per questioni di accessibilità, la soluzione Javascript, come anche ho evitato di addentrarmi in inclusioni di file remoti in quanto azioni quasi sempre bloccate dai servizi hosting gratuiti.
Ad essere sinceri mi sarebbe piaciuto provare a costruire un WSDL, soprattutto per soddisfare il desiderio di esplorare qualcosa di nuovo: anche in questo caso ho lasciato perdere, dato che avrei dovuto utilizzare un framework non così leggero; non era proprio lo strumento adatto.

Alla fine l'illuminazione: XML-RPC [8)]

[continua]

La base è un file XML in cui è contenuta la lista di tutte le versioni di Flatnuke; in più viene indicata l'ultima versione pubblica, ed una lista di versioni che hanno sofferto di problemi di sicurezza. Un esempio vale più di mille parole:

< current >2.7< /current >
< officials >
< version >2.5.8< /version >
< version >2.6< /version >
< version >2.6.1< /version >
< version >2.6.2< /version >
< version >2.7< /version >
< /officials >
< warnings >
< version >0< /version >
< version >2.5.8< /version >
< version >13< /version >
< /warnings >
A questo punto, ho creato il server che risiederà direttamente su http://flatnuke.org; una volta inizializzato, restituirà un codice in base all'informazione ricevuta dal client, secondo la seguente legenda:
[NULL]    = Error, no version specified by the client
[UNKNOWN] = The client is using an unknown version
[WARNING] = The client is using an old and bugged version
[OLD] = The client is using an old version
[CURRENT] = The client is using the latest official version
[DEVEL] = The client is using a beta version
Infine, il client.
Effettua la chiamata al server tramite XML-RPC e, utilizzando l'API get_fn_version(), passa la versione in uso sul sito: in base al return code, quindi, si potranno effettuare tutte le segnalazioni volute.

Il codice si trova nella solita sezione "Download - Flatnuke", in ogni caso sarà incluso nella prossima versione ufficiale.

Precedente Prossimo