Bonjour,
J'ai fait un programme en batch qui envoie pleins de messages, via la commande curl, a un webhook discord. Mais des fois, il y a cette erreur : {"global": false, "message": "The resource is being rate limited.", "retry_after": 0.3}
Voici mon script :
Ce script fait une boucle pour envoyer pleins de messages. J'aimerais que quand un message n'est pas envoyé (donc quand il y a le message d'erreur que j'ai mentionné en haut), au lieu de dire dans la console "webhook 1 envoyé", un autre message apparait et dit "limite de discord, message non envoyé" et même pourquoi pas ajouter "réessayage dans x secondes" et que la prochaine ligne soit exécuté dans les x millisecondes si c'est possible. Car je vois "retry_after": 0.3 dans les messages d'erreur. ça monte un peu près jusqu’à retry after 1.6.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if %webhooknb% GEQ 1 curl -H "Content-Type: application/json" -d "{\"username\": \"%name%\", \"content\":\"%message%\", \"tts\":\"%tts%\", \"avatar_url\":\"%avatar%\"}" %lien1% >nul & echo [%time:~0,2%h%time:~3,2%] Webhook 1 envoyé if %webhooknb% GEQ 2 curl -H "Content-Type: application/json" -d "{\"username\": \"%name%\", \"content\":\"%message%\", \"tts\":\"%tts%\", \"avatar_url\":\"%avatar%\"}" %lien2% >nul & echo [%time:~0,2%h%time:~3,2%] Webhook 2 envoyé if %webhooknb% GEQ 3 curl -H "Content-Type: application/json" -d "{\"username\": \"%name%\", \"content\":\"%message%\", \"tts\":\"%tts%\", \"avatar_url\":\"%avatar%\"}" %lien3% >nul & echo [%time:~0,2%h%time:~3,2%] Webhook 3 envoyé
Pour récapituler, je veux que la console renvoie "limite de discord, message non envoyé" et si c'est possible, que la prochaine ligne soit exécuter avec le nombre de secondes du message d'erreur.
Merci.
ps: le code en entier : https://github.com/steever38/discord...ook%20tool.bat
Partager