From 047dcd408f81d087880080b770621d482bceec75 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Felix=20Sch=C3=A4fer?= <felix@thegcat.net>
Date: Sat, 5 Feb 2022 23:57:25 +0100
Subject: [PATCH] Respect retry after from RateLimitError #5

---
 pretix_matrix_inviter/tasks.py | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/pretix_matrix_inviter/tasks.py b/pretix_matrix_inviter/tasks.py
index 1a3f737..0756c20 100644
--- a/pretix_matrix_inviter/tasks.py
+++ b/pretix_matrix_inviter/tasks.py
@@ -63,7 +63,12 @@ def matrix_inviter_invite(
             )
         else:
             try:
-                self.retry()
+                if r.status_code == 429:
+                    response_dump = r.json()
+                    backoff = response_dump["retry_after_ms"] / 1000
+                    self.retry(countdown=backoff)
+                else:
+                    self.retry()
             except MaxRetriesExceededError:
                 order.log_action(
                     "pretix_matrix_inviter.error",
-- 
GitLab