Skip to content

Commit c61f3f0

Browse files
committed
Gave separate events within an ecommerce transaction different transaction IDs (snowplow#89)
1 parent 03553bb commit c61f3f0

3 files changed

Lines changed: 4 additions & 13 deletions

File tree

CHANGES.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
Version 0.4.0 (2014-05-xx)
22
--------------------------
3+
Gave separate events within an ecommerce transaction different transaction IDs (#89)
34
Added https support for tracker (#81)
45
Added callbacks for flushing (#78)
56
Added Python-logging (#76)

snowplow_tracker/test/integration/test_integration.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,8 +100,7 @@ def test_integration_ecommerce_transaction(self):
100100
for key in expected_fields:
101101
self.assertEquals(from_querystring(key, querystrings[-1]), expected_fields[key])
102102

103-
for key in ["dtm", "tid"]:
104-
self.assertEquals(from_querystring(key, querystrings[-3]), from_querystring(key, querystrings[-2]))
103+
self.assertEquals(from_querystring("dtm", querystrings[-3]), from_querystring("dtm", querystrings[-2]))
105104

106105
def test_integration_screen_view(self):
107106
t = tracker.Tracker(default_consumer, default_subject)

snowplow_tracker/tracker.py

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,7 @@ def complete_payload(self, pb):
137137
:type pb: payload
138138
:rtype: tracker | int
139139
"""
140+
pb.add("tid", Tracker.get_transaction_id())
140141
pb.add_dict(self.standard_nv_pairs)
141142
if "co" in pb.nv_pairs or "cx" in pb.nv_pairs:
142143
pb.add("cv", self.context_vendor)
@@ -165,8 +166,6 @@ def track_page_view(self, page_url, page_title=None, referrer=None, context=None
165166
pb.add("refr", referrer)
166167
pb.add("evn", DEFAULT_VENDOR)
167168

168-
tid = Tracker.get_transaction_id()
169-
pb.add("tid", tid)
170169
dtm = Tracker.get_timestamp(tstamp)
171170
pb.add("dtm", tstamp)
172171
pb.add_json(context, self.encode_base64, "cx", "co")
@@ -177,7 +176,7 @@ def track_page_view(self, page_url, page_title=None, referrer=None, context=None
177176
def track_ecommerce_transaction_item(self, order_id, sku, price, quantity,
178177
name=None, category=None, currency=None,
179178
context=None,
180-
tstamp=None, tid=None):
179+
tstamp=None):
181180
"""
182181
This is an internal method called by track_ecommerce_transaction.
183182
It is not for public use.
@@ -210,7 +209,6 @@ def track_ecommerce_transaction_item(self, order_id, sku, price, quantity,
210209
pb.add("ti_qu", quantity)
211210
pb.add("ti_cu", currency)
212211
pb.add("evn", DEFAULT_VENDOR)
213-
pb.add("tid", tid)
214212
pb.add("dtm", tstamp)
215213
pb.add_json(context, self.encode_base64, "cx", "co")
216214

@@ -260,8 +258,6 @@ def track_ecommerce_transaction(self, order_id, total_value,
260258
pb.add("tr_cu", currency)
261259
pb.add("evn", DEFAULT_VENDOR)
262260

263-
tid = Tracker.get_transaction_id()
264-
pb.add("tid", tid)
265261
dtm = Tracker.get_timestamp(tstamp)
266262
pb.add("dtm", dtm)
267263
pb.add_json(context, self.encode_base64, "cx", "co")
@@ -272,7 +268,6 @@ def track_ecommerce_transaction(self, order_id, total_value,
272268

273269
for item in items:
274270
item["tstamp"] = dtm
275-
item["tid"] = tid
276271
item["order_id"] = order_id
277272
item["currency"] = currency
278273
item_results.append(self.track_ecommerce_transaction_item(**item))
@@ -329,8 +324,6 @@ def track_struct_event(self, category, action, label=None, property_=None, value
329324
pb.add("se_va", value)
330325
pb.add("evn", DEFAULT_VENDOR)
331326

332-
tid = Tracker.get_transaction_id()
333-
pb.add("tid", tid)
334327
dtm = Tracker.get_timestamp(tstamp)
335328
pb.add("dtm", tstamp)
336329
pb.add_json(context, self.encode_base64, "cx", "co")
@@ -359,8 +352,6 @@ def track_unstruct_event(self, event_vendor, event_name, dict_, context=None, ts
359352

360353
dtm = Tracker.get_timestamp(tstamp)
361354
pb.add("dtm", tstamp)
362-
tid = Tracker.get_transaction_id()
363-
pb.add("tid", tid)
364355
pb.add_json(context, self.encode_base64, "cx", "co")
365356

366357
return self.complete_payload(pb)

0 commit comments

Comments
 (0)