Sto cercando di utilizzare l’API di Discourse per fornire risposte sciocche in un forum. Ad esempio, se qualcuno dice “Linux” in un thread, Discobot risponderà “Intendi GNU/Linux?”.
Funziona, a meno che qualcuno non risponda con la stessa frase, quindi ricevo un sacco di risposte 429 o vuote per due minuti (sono quasi esattamente due minuti), dopodiché l’API ricomincerà a gestire le risposte normalmente.
Ad esempio:
Linux
FOSS
dotNET
Java
Linux
Questo funzionerà correttamente. Tuttavia:
Linux
FOSS
dotNET
Linux
Linux
Questo si romperà.
Hai qualche idea a cosa si riferisca la finestra di due minuti? Abbiamo giocato con le impostazioni di app.yml e modificato i limiti di frequenza dell’API. Non sembra aver avuto alcun effetto.
Ciò significa che sei limitato nella frequenza delle richieste. Se vuoi tenere traccia dei nuovi post, il pooling in questo modo è molto inefficiente. Posso suggerire di usare i webhook? In questo modo puoi reagire ai nuovi post, invece di fare il pooling anche quando non sta succedendo nulla.
Sai come disabilitare i limiti di frequenza delle risposte? Credo che ne abbiamo già modificati alcuni in app.yml, tutto ciò che riguardava l’API da questo link:
È qualcosa di specifico in Nginx che dobbiamo esplorare?
C’è un template nginx che viene aggiunto per impostazione predefinita. Sarà una delle primissime righe dell’app.yml. Potresti voler rimuovere quello sui limiti di frequenza e ricostruire affinché abbia effetto.