File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1313from messagebird .message import Message , MessageList
1414from messagebird .mms import MMS
1515from messagebird .voice_webhook import VoiceWebhook , VoiceWebhookList
16- from messagebird .voicemessage import VoiceMessage
16+ from messagebird .voicemessage import VoiceMessagesList , VoiceMessage
1717from messagebird .lookup import Lookup
1818from messagebird .verify import Verify
1919from messagebird .http_client import HttpClient , ResponseFormat
@@ -241,6 +241,11 @@ def voice_message(self, id):
241241 "Retrieve the information of a specific voice message."
242242 return VoiceMessage ().load (self .request ('voicemessages/' + str (id )))
243243
244+ def voice_message_list (self , limit = 10 , offset = 0 ):
245+ "Retrieve the information of a list of voice messages."
246+ query = self ._format_query (limit , offset )
247+ return VoiceMessagesList ().load (self .request ('voicemessages?' + query , 'GET' , None ))
248+
244249 def voice_message_create (self , recipients , body , params = None ):
245250 """Create a new voice message."""
246251 if params is None :
Original file line number Diff line number Diff line change 11from messagebird .base import Base
2+ from messagebird .base_list import BaseList
23from messagebird .recipient import Recipient
34
5+ class VoiceMessagesList (BaseList ):
6+ def __init__ (self ):
7+ super (VoiceMessagesList , self ).__init__ (VoiceMessage )
8+ self .perPage = None
9+ self .currentPage = None
10+ self .pageCount = None
11+ self ._pagination = None
12+
13+ @property
14+ def data (self ):
15+ return self .items
16+
17+ @property
18+ def pagination (self ):
19+ return {
20+ "totalCount" : self .totalCount ,
21+ "pageCount" : self .pageCount ,
22+ "currentPage" : self .currentPage ,
23+ "perPage" : self .perPage
24+ }
25+
26+ @pagination .setter
27+ def pagination (self , value ):
28+ if isinstance (value , dict ):
29+ self .totalCount = value ['totalCount' ]
30+ self .pageCount = value ['pageCount' ]
31+ self .currentPage = value ['currentPage' ]
32+ self .perPage = value ['perPage' ]
33+ self .limit = self .perPage * self .currentPage
34+ self .offset = self .perPage * (self .currentPage - 1 )
35+
36+ @data .setter
37+ def data (self , value ):
38+ if isinstance (value , list ):
39+ self .count = len (value )
40+ self .items = value
41+
442
543class VoiceMessage (Base ):
644 def __init__ (self ):
You can’t perform that action at this time.
0 commit comments