1
- from pubnub .models .consumer .message_type import PNMessageType
2
-
3
-
4
1
class PNHistoryResult (object ):
5
2
def __init__ (self , messages , start_timetoken , end_timetoken ):
6
3
self .messages = messages
@@ -66,14 +63,15 @@ def __str__(self):
66
63
return "Fetch messages result for range %d..%d" % (self .start_timetoken , self .end_timetoken )
67
64
68
65
@classmethod
69
- def from_json (cls , json_input , include_message_actions = False , include_message_type = False , include_space_id = False ,
70
- start_timetoken = None , end_timetoken = None ):
66
+ def from_json (cls , json_input , include_message_actions = False , include_message_type = False , include_type = False ,
67
+ include_space_id = False , start_timetoken = None , end_timetoken = None ):
71
68
channels = {}
72
69
73
70
for key , entry in json_input ['channels' ].items ():
74
71
channels [key ] = []
75
72
for item in entry :
76
- message = PNFetchMessageItem (item , include_message_actions , include_message_type , include_space_id )
73
+ message = PNFetchMessageItem (item , include_message_actions , include_message_type , include_type ,
74
+ include_space_id )
77
75
channels [key ].append (message )
78
76
79
77
return PNFetchMessagesResult (
@@ -89,7 +87,7 @@ class PNFetchMessageItem(object):
89
87
timetoken = None
90
88
actions = None
91
89
92
- def __init__ (self , item , include_message_actions , include_message_type , include_space_id ):
90
+ def __init__ (self , item , include_message_actions , include_message_type , include_type , include_space_id ):
93
91
self .message = item ['message' ]
94
92
self .timetoken = item ['timetoken' ]
95
93
@@ -106,9 +104,13 @@ def __init__(self, item, include_message_actions, include_message_type, include_
106
104
self .actions = {}
107
105
108
106
if include_message_type :
109
- self .message_type = PNMessageType .from_response (
110
- message_type = item ['type' ] if 'type' in item .keys () else None ,
111
- pn_message_type = item ['message_type' ])
107
+ if 'message_type' in item :
108
+ self .message_type = str (item ['message_type' ]) if item ['message_type' ] is not None else '0'
109
+ else :
110
+ self .message_type = None
111
+
112
+ if include_type :
113
+ self .type = item ['type' ] if 'type' in item .keys () else None
112
114
113
115
if include_space_id :
114
116
self .space_id = item ['space_id' ]
0 commit comments