diff --git a/pubnub/endpoints/fetch_messages.py b/pubnub/endpoints/fetch_messages.py index 1365c431..9f65e120 100644 --- a/pubnub/endpoints/fetch_messages.py +++ b/pubnub/endpoints/fetch_messages.py @@ -30,6 +30,7 @@ def __init__(self, pubnub): self._end = None self._count = None self._include_meta = None + self._include_uuid = None self._include_message_actions = None def channels(self, channels): @@ -59,6 +60,11 @@ def include_meta(self, include_meta): self._include_meta = include_meta return self + def include_uuid(self, include_uuid): + assert isinstance(include_uuid, bool) + self._include_uuid = include_uuid + return self + def include_message_actions(self, include_message_actions): assert isinstance(include_message_actions, bool) self._include_message_actions = include_message_actions @@ -76,6 +82,10 @@ def custom_params(self): if self._include_meta is not None: params['include_meta'] = "true" if self._include_meta else "false" + if self._include_uuid is not None: + params['include_uuid'] = "true" if self._include_uuid else "false" + + return params def build_path(self): @@ -104,6 +114,9 @@ def validate_params(self): if self._include_meta is None: self._include_meta = False + + if self._include_uuid is None: + self._include_uuid = False if self._include_message_actions is None: self._include_message_actions = False diff --git a/pubnub/endpoints/objects_v2/objects_endpoint.py b/pubnub/endpoints/objects_v2/objects_endpoint.py index ae559e41..01bf38c2 100644 --- a/pubnub/endpoints/objects_v2/objects_endpoint.py +++ b/pubnub/endpoints/objects_v2/objects_endpoint.py @@ -73,9 +73,9 @@ def custom_params(self): if self._page: if isinstance(self._page, Next): - params["start"] = self._page.hash() + params["start"] = self._page.hash elif isinstance(self._page, Previous): - params["end"] = self._page.hash() + params["end"] = self._page.hash else: raise ValueError() diff --git a/pubnub/models/consumer/history.py b/pubnub/models/consumer/history.py index 9f8d3b8f..ea3718f0 100644 --- a/pubnub/models/consumer/history.py +++ b/pubnub/models/consumer/history.py @@ -73,6 +73,9 @@ def from_json(cls, json_input, include_message_actions=False, start_timetoken=No if 'meta' in item: message.meta = item['meta'] + if 'uuid' in item: + message.uuid = item['uuid'] + if include_message_actions: if 'actions' in item: message.actions = item['actions'] @@ -89,11 +92,12 @@ def from_json(cls, json_input, include_message_actions=False, start_timetoken=No class PNFetchMessageItem(object): - def __init__(self, message, timetoken, meta=None, actions=None): + def __init__(self, message, timetoken, uuid=None, meta=None, actions=None): self.message = message self.meta = meta self.timetoken = timetoken self.actions = actions + self.uuid = uuid def __str__(self): return "Fetch message item with tt: %s and content: %s" % (self.timetoken, self.message)