aboutsummaryrefslogtreecommitdiffstats
path: root/pushover.py
diff options
context:
space:
mode:
authorThibaut Horel <thibaut.horel@gmail.com>2014-10-26 15:15:34 -0400
committerThibaut Horel <thibaut.horel@gmail.com>2014-10-26 15:15:34 -0400
commitbc6dab7ff3899af3ba8e46d3a3ccd07fb43f620d (patch)
tree5833a684ecc57917b71176739b0a6a50e97099e5 /pushover.py
parent4a8fc29aa1181824c57b28e701b9a436a3a8240b (diff)
parent8c9c32f9a72b0e49e67e4e5bd7cfcb3565c87597 (diff)
downloadpython-pushover-bc6dab7ff3899af3ba8e46d3a3ccd07fb43f620d.tar.gz
Merge pull request #12 from filipl/poll_fix
Fix consistency in MessageRequest.poll
Diffstat (limited to 'pushover.py')
-rw-r--r--pushover.py22
1 files changed, 12 insertions, 10 deletions
diff --git a/pushover.py b/pushover.py
index a62609f..b670266 100644
--- a/pushover.py
+++ b/pushover.py
@@ -129,10 +129,12 @@ class MessageRequest(Request):
self.receipt = None
if payload.get("priority", 0) == 2:
self.receipt = self.answer["receipt"]
- self.parameters = ["expired", "called_back", "acknowledged"]
- for parameter in self.parameters:
- setattr(self, parameter, False)
- setattr(self, parameter + "_at", 0)
+ self.parameters = {"expired": "expires_at",
+ "called_back": "called_back_at",
+ "acknowledged": "acknowledged_at"}
+ for param, when in self.parameters.iteritems():
+ setattr(self, param, False)
+ setattr(self, when, 0)
def poll(self):
"""If the message request has a priority of 2, Pushover will keep
@@ -147,18 +149,18 @@ class MessageRequest(Request):
acknowledged, so that a typical handling of a priority-2 notification
can look like this::
- request = client.send_message("Urgent notification", priority=2)
- while not request.poll():
+ request = client.send_message("Urgent notification", priority=2,
+ expire=120, retry=60)
+ while request.poll():
# do something
time.sleep(5)
"""
if (self.receipt and not any(getattr(self, parameter)
for parameter in self.parameters)):
request = Request("get", RECEIPT_URL + self.receipt + ".json", {})
- for parameter in self.parameters:
- setattr(self, parameter, request.answer[parameter])
- setattr(self, parameter + "_at",
- request.answer[parameter + "_at"])
+ for param, when in self.parameters.iteritems():
+ setattr(self, param, bool(request.answer[param]))
+ setattr(self, when, request.answer[when])
return request