From 2e11c94a1a51c2fd5e25783c71e177a4a43b3376 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Valent=C3=ADn=20Moreno?= Date: Wed, 10 Feb 2016 17:30:49 +0100 Subject: [PATCH 1/6] adding support for phone verification --- messagebird/client.py | 10 ++++++++ messagebird/verify.py | 56 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 messagebird/verify.py diff --git a/messagebird/client.py b/messagebird/client.py index 3ee04ca..9c946b4 100644 --- a/messagebird/client.py +++ b/messagebird/client.py @@ -14,6 +14,7 @@ from messagebird.message import Message from messagebird.voicemessage import VoiceMessage from messagebird.lookup import Lookup +from messagebird.verify import Verify ENDPOINT = 'https://rest.messagebird.com' CLIENT_VERSION = '1.1.1' @@ -104,3 +105,12 @@ def lookup_hlr(self, phonenumber, params={}): def lookup_hlr_create(self, phonenumber, params={}): """Perform a new HLR lookup.""" return HLR().load(self.request('lookup/' + str(phonenumber) + '/hlr', 'POST', params)) + + def verify(self, id): + """Retrieve the information of a specific message.""" + return Verify().load(self.request('verify/' + str(id))) + + def verify_create(self, originator, phonenumber, params={}): + """Create a new verification.""" + params.update({ 'originator' : originator, 'recipient' : phonenumber }) + return Verify().load(self.request('verify', 'POST', params)) diff --git a/messagebird/verify.py b/messagebird/verify.py new file mode 100644 index 0000000..ae0840f --- /dev/null +++ b/messagebird/verify.py @@ -0,0 +1,56 @@ +from messagebird.base import Base +from messagebird.recipient import Recipient +from messagebird.message import Message + +class Verify(Base): + def __init__(self): + self.id = None + self.href = None + self.type = None + self.originator = None + self.reference = None + self.template = None + self.timeout = None + self.tokenLength = None + self.voice = None + self.language = None + self.status = None + self._createdDatetime = None + self._validUntilDatetime= None + self._recipient = None + self._messages = None + + + @property + def createdDatetime(self): + return self._createdDatetime + + @createdDatetime.setter + def createdDatetime(self, value): + self._createdDatetime = self.value_to_time(value) + + + @property + def validUntilDatetime(self): + return self._validUntilDatetime + + @svalidUntilDatetime.setter + def validUntilDatetime(self, value): + self._validUntilDatetime = self.value_to_time(value) + + @property + def recipient(self): + return self._recipient + + @recipient.setter + def recipient(self, value): + self._recipient = Recipient().load(value) + + @property + def messages(self): + return self._messages + + @messages.setter + def messages(self, value): + value['items'] = [Message().load(r) for r in value['items']] + self._messages = value From 9e514a4e17f9b331cb1f52754e66ce2b30ad0b4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Valent=C3=ADn=20Moreno?= Date: Wed, 10 Feb 2016 17:48:03 +0100 Subject: [PATCH 2/6] adding typo --- messagebird/verify.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/messagebird/verify.py b/messagebird/verify.py index ae0840f..f31beff 100644 --- a/messagebird/verify.py +++ b/messagebird/verify.py @@ -34,7 +34,7 @@ def createdDatetime(self, value): def validUntilDatetime(self): return self._validUntilDatetime - @svalidUntilDatetime.setter + @validUntilDatetime.setter def validUntilDatetime(self, value): self._validUntilDatetime = self.value_to_time(value) From b615bce7bb9fcdab8d3c364e459d7ce516665feb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Valent=C3=ADn=20Moreno?= Date: Wed, 10 Feb 2016 18:00:42 +0100 Subject: [PATCH 3/6] fix on messages type --- messagebird/verify.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/messagebird/verify.py b/messagebird/verify.py index f31beff..f6c1fa6 100644 --- a/messagebird/verify.py +++ b/messagebird/verify.py @@ -52,5 +52,5 @@ def messages(self): @messages.setter def messages(self, value): - value['items'] = [Message().load(r) for r in value['items']] + value = [Message().load(r) for r in value] self._messages = value From 5940d70a912e78221bc2de6928454762daebdfea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Valent=C3=ADn=20Moreno?= Date: Wed, 10 Feb 2016 18:05:35 +0100 Subject: [PATCH 4/6] remove iterator on messages parameter --- messagebird/verify.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/messagebird/verify.py b/messagebird/verify.py index f6c1fa6..b4628ce 100644 --- a/messagebird/verify.py +++ b/messagebird/verify.py @@ -52,5 +52,4 @@ def messages(self): @messages.setter def messages(self, value): - value = [Message().load(r) for r in value] - self._messages = value + self._messages = Message().load(value) From 700c3c85b55e6f4436cf5d5c963833b6d2fd8d6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Valent=C3=ADn=20Moreno?= Date: Wed, 10 Feb 2016 18:08:56 +0100 Subject: [PATCH 5/6] remove recipient complex object parsing --- messagebird/verify.py | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/messagebird/verify.py b/messagebird/verify.py index b4628ce..6817ebd 100644 --- a/messagebird/verify.py +++ b/messagebird/verify.py @@ -15,9 +15,9 @@ def __init__(self): self.voice = None self.language = None self.status = None + self.recipient = None self._createdDatetime = None self._validUntilDatetime= None - self._recipient = None self._messages = None @@ -38,14 +38,6 @@ def validUntilDatetime(self): def validUntilDatetime(self, value): self._validUntilDatetime = self.value_to_time(value) - @property - def recipient(self): - return self._recipient - - @recipient.setter - def recipient(self, value): - self._recipient = Recipient().load(value) - @property def messages(self): return self._messages From 8b8fe1672338107a6211856e47325b526b51161f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Valent=C3=ADn=20Moreno?= Date: Wed, 10 Feb 2016 18:15:56 +0100 Subject: [PATCH 6/6] adding token to verify method --- messagebird/client.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/messagebird/client.py b/messagebird/client.py index 9c946b4..a456795 100644 --- a/messagebird/client.py +++ b/messagebird/client.py @@ -106,9 +106,9 @@ def lookup_hlr_create(self, phonenumber, params={}): """Perform a new HLR lookup.""" return HLR().load(self.request('lookup/' + str(phonenumber) + '/hlr', 'POST', params)) - def verify(self, id): + def verify(self, id, token): """Retrieve the information of a specific message.""" - return Verify().load(self.request('verify/' + str(id))) + return Verify().load(self.request('verify/' + str(id), params={'token': token})) def verify_create(self, originator, phonenumber, params={}): """Create a new verification."""