Skip to content

Commit

Permalink
Merge pull request #13 from stape-io/fix-logs-event-name
Browse files Browse the repository at this point in the history
fix logs event name
  • Loading branch information
Bukashk0zzz authored Oct 5, 2023
2 parents 758f77d + 3996f81 commit 11ac509
Show file tree
Hide file tree
Showing 3 changed files with 126 additions and 66 deletions.
2 changes: 2 additions & 0 deletions metadata.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
homepage: "https://stape.io/"
versions:
- sha: d493f9ad8418ad6883b6a95345393ed434c18027
changeNotes: Fix logs eventName.
- sha: a2c51bc3260b8d359a90261ecc136aac0aee1de0
changeNotes: Add GTM MSR check.
- sha: cf992a5bc61037372fdf07a7246721be115ae9ba
Expand Down
95 changes: 62 additions & 33 deletions template.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ if (url) {
const apiVersion = '1.3';
const postUrl =
'https://business-api.tiktok.com/open_api/v' + apiVersion + '/event/track/';
const eventName = getEventName(eventData, data);
let postBody = mapEvent(eventData, data);

if (isLoggingEnabled) {
Expand All @@ -50,7 +51,7 @@ if (isLoggingEnabled) {
Name: 'TikTok',
Type: 'Request',
TraceId: traceId,
EventName: postBody.event,
EventName: eventName,
RequestMethod: 'POST',
RequestUrl: postUrl,
RequestBody: postBody,
Expand Down Expand Up @@ -89,7 +90,7 @@ sendHttpRequest(
Name: 'TikTok',
Type: 'Response',
TraceId: traceId,
EventName: postBody.event,
EventName: eventName,
ResponseStatusCode: statusCode,
ResponseHeaders: headers,
ResponseBody: body,
Expand Down Expand Up @@ -117,7 +118,7 @@ sendHttpRequest(
function mapEvent(eventData, data) {
let eventSource = data.eventSource || 'web';
let mappedData = {
event: getEventName(eventData, data),
event: eventName,
event_time: getEventTime(eventData),
};

Expand Down Expand Up @@ -201,17 +202,21 @@ function hashDataIfNeeded(mappedData) {
function addPropertiesData(eventData, mappedData) {
mappedData.properties = {};

if (eventData.content_type) mappedData.properties.content_type = eventData.content_type;
if (eventData.content_type)
mappedData.properties.content_type = eventData.content_type;
else mappedData.properties.content_type = 'product';

if (eventData.currency) mappedData.properties.currency = eventData.currency;

if (eventData.value) mappedData.properties.value = eventData.value;
else if (eventData['x-ga-mp1-ev']) mappedData.properties.value = eventData['x-ga-mp1-ev'];
else if (eventData['x-ga-mp1-tr']) mappedData.properties.value = eventData['x-ga-mp1-tr'];
else if (eventData['x-ga-mp1-ev'])
mappedData.properties.value = eventData['x-ga-mp1-ev'];
else if (eventData['x-ga-mp1-tr'])
mappedData.properties.value = eventData['x-ga-mp1-tr'];

if (eventData.query) mappedData.properties.query = eventData.query;
if (eventData.description) mappedData.properties.description = eventData.description;
if (eventData.description)
mappedData.properties.description = eventData.description;
if (eventData.order_id) mappedData.properties.order_id = eventData.order_id;
if (eventData.shop_id) mappedData.properties.shop_id = eventData.shop_id;

Expand Down Expand Up @@ -250,32 +255,40 @@ function addUserData(eventData, mappedData, eventSource) {
mappedData.user = {};

if (getType(eventData.user_data) === 'object') {
userEventData = eventData.user_data || eventData.user_properties || eventData.user;
userEventData =
eventData.user_data || eventData.user_properties || eventData.user;
}

if (eventData.email) mappedData.user.email = eventData.email;
else if (eventData.email_address) mappedData.user.email = eventData.email_address;
else if (eventData.email_address)
mappedData.user.email = eventData.email_address;
else if (userEventData.email) mappedData.user.email = userEventData.email;
else if (userEventData.email_address) mappedData.user.email = userEventData.email_address;
else if (userEventData.email_address)
mappedData.user.email = userEventData.email_address;

if (eventData.phone) mappedData.user.phone = eventData.phone;
else if (eventData.phone_number) mappedData.user.phone = eventData.phone_number;
else if (eventData.phone_number)
mappedData.user.phone = eventData.phone_number;
else if (userEventData.phone) mappedData.user.phone = userEventData.phone;
else if (userEventData.phone_number) mappedData.user.phone = userEventData.phone_number;
else if (userEventData.phone_number)
mappedData.user.phone = userEventData.phone_number;

if (eventSource === 'web') {
if (ttclid) mappedData.user.ttclid = ttclid;
else if (eventData.ttclid) mappedData.user.ttclid = eventData.ttclid;
else if (userEventData.ttclid) mappedData.user.ttclid = userEventData.ttclid;
else if (userEventData.ttclid)
mappedData.user.ttclid = userEventData.ttclid;

if (ttp) mappedData.user.ttp = ttp;
else if (eventData.ttp) mappedData.user.ttp = eventData.ttp;
else if (userEventData.ttp) mappedData.user.ttp = userEventData.ttp;

if (eventData.external_id) mappedData.user.external_id = eventData.external_id;
if (eventData.external_id)
mappedData.user.external_id = eventData.external_id;
else if (eventData.user_id) mappedData.user.external_id = eventData.user_id;
else if (eventData.userId) mappedData.user.external_id = eventData.userId;
else if (userEventData.external_id) mappedData.user.external_id = userEventData.external_id;
else if (userEventData.external_id)
mappedData.user.external_id = userEventData.external_id;

if (eventData.ip_override) mappedData.user.ip = eventData.ip_override;
else if (eventData.ip_address) mappedData.user.ip = eventData.ip_address;
Expand All @@ -295,12 +308,14 @@ function addUserData(eventData, mappedData, eventSource) {
else if (userEventData.gaid) mappedData.user.gaid = userEventData.gaid;

if (eventData.att_status) mappedData.user.att_status = eventData.att_status;
else if (userEventData.att_status) mappedData.user.att_status = userEventData.att_status;
else if (userEventData.att_status)
mappedData.user.att_status = userEventData.att_status;
}

if (eventSource === 'web' || eventSource === 'app') {
if (eventData.locale) mappedData.user.locale = eventData.locale;
else if (userEventData.locale) mappedData.user.locale = userEventData.locale;
else if (userEventData.locale)
mappedData.user.locale = userEventData.locale;
}

if (data.userDataList) {
Expand Down Expand Up @@ -380,7 +395,8 @@ function determinateIsLoggingEnabled() {
function addEventId(mappedData, eventData) {
if (data.eventId) mappedData.event_id = data.eventId;
else if (eventData.event_id) mappedData.event_id = eventData.event_id;
else if (eventData.transaction_id) mappedData.event_id = eventData.transaction_id;
else if (eventData.transaction_id)
mappedData.event_id = eventData.transaction_id;

return mappedData;
}
Expand All @@ -398,7 +414,8 @@ function addPageData(mappedData, eventData) {
};

if (data.pageReferrer) mappedData.page.referrer = data.pageReferrer;
else if (eventData.page_referrer) mappedData.page.referrer = eventData.page_referrer;
else if (eventData.page_referrer)
mappedData.page.referrer = eventData.page_referrer;
else if (eventData.referrer) mappedData.page.referrer = eventData.referrer;

return mappedData;
Expand All @@ -413,7 +430,8 @@ function addAppData(mappedData, eventData) {
else if (eventData.app_name) mappedData.app.app_name = eventData.app_name;

if (data.appVersion) mappedData.app.app_version = data.appVersion;
else if (eventData.app_version) mappedData.app.app_version = eventData.app_version;
else if (eventData.app_version)
mappedData.app.app_version = eventData.app_version;

let adEventData = {};
mappedData.ad = {};
Expand All @@ -425,26 +443,37 @@ function addAppData(mappedData, eventData) {
if (adEventData.callback) mappedData.ad.callback = adEventData.callback;
else if (eventData.callback) mappedData.ad.callback = eventData.callback;

if (adEventData.campaign_id) mappedData.ad.campaign_id = adEventData.campaign_id;
else if (eventData.campaign_id) mappedData.ad.campaign_id = eventData.campaign_id;
if (adEventData.campaign_id)
mappedData.ad.campaign_id = adEventData.campaign_id;
else if (eventData.campaign_id)
mappedData.ad.campaign_id = eventData.campaign_id;

if (adEventData.ad_id) mappedData.ad.ad_id = adEventData.ad_id;
else if (eventData.ad_id) mappedData.ad.ad_id = eventData.ad_id;

if (adEventData.creative_id) mappedData.ad.creative_id = adEventData.creative_id;
else if (eventData.creative_id) mappedData.ad.creative_id = eventData.creative_id;
if (adEventData.creative_id)
mappedData.ad.creative_id = adEventData.creative_id;
else if (eventData.creative_id)
mappedData.ad.creative_id = eventData.creative_id;

if (adEventData.is_retargeting) mappedData.ad.is_retargeting = adEventData.is_retargeting;
else if (eventData.is_retargeting) mappedData.ad.is_retargeting = eventData.is_retargeting;
if (adEventData.is_retargeting)
mappedData.ad.is_retargeting = adEventData.is_retargeting;
else if (eventData.is_retargeting)
mappedData.ad.is_retargeting = eventData.is_retargeting;

if (adEventData.attributed) mappedData.ad.attributed = adEventData.attributed;
else if (eventData.attributed) mappedData.ad.attributed = eventData.attributed;

if (adEventData.attribution_type) mappedData.ad.attribution_type = adEventData.attribution_type;
else if (eventData.attribution_type) mappedData.ad.attribution_type = eventData.attribution_type;

if (adEventData.attribution_provider) mappedData.ad.attribution_provider = adEventData.attribution_provider;
else if (eventData.attribution_provider) mappedData.ad.attribution_provider = eventData.attribution_provider;
else if (eventData.attributed)
mappedData.ad.attributed = eventData.attributed;

if (adEventData.attribution_type)
mappedData.ad.attribution_type = adEventData.attribution_type;
else if (eventData.attribution_type)
mappedData.ad.attribution_type = eventData.attribution_type;

if (adEventData.attribution_provider)
mappedData.ad.attribution_provider = adEventData.attribution_provider;
else if (eventData.attribution_provider)
mappedData.ad.attribution_provider = eventData.attribution_provider;

if (data.adDataList) {
data.adDataList.forEach((d) => {
Expand Down
Loading

0 comments on commit 11ac509

Please sign in to comment.