Stavo pensando che a mio avviso ci sono a grandi linee tre modi per far arrivare le notifiche del forum alla chat:
A) Ogni tot minuti un plugin del bot scarica la home del sito, parsa l'elenco degli ultimi topic aggiornati, e confrontandolo con la versione scaricata alla volta precedente stabilisce in quali sono presenti nuovi post, quindi ne scrive i link in chat. La soluzione forse più "rozza" ma non richiede alcun intervento al sito.
B) Simile al precedente, ma invece che fare scraping della home lato sito si fa un'API apposita che ritorna l'elenco dei post più recenti inseriti con relativi timestamp e link ai topic in formato xml o json.
C) Soluzione nettamente diversa: è il sito a notificare al bot l'inserimento di un nuovo post. Si aggiunge al bot un piccolo server HTTP che resta in ascolto su una porta, e ogni volta che viene inserito un post il sito fa una richiesta ad esso (ad esempio con curl per php) specificando tramite parametri POST il link al topic ed eventualmente altre informazioni come il nick dell'utente che ha postato. Questo consentirebbe di avere le notifiche in tempo reale, ma potrebbe creare qualche problema, ad esempio, se il server del bot per qualche motivo non risponde si creano rallentamenti nella generazione della pagina che segnala all'utente sul sito che il post è stato inserito correttamente (si potrebbe ovviare con un timeout basso), e inoltre il server che ospita il bot deve avere una porta aperta.
Non so, questi sono i miei 2 cent, fatemi sapere cosa ne pensate
|