RR to Manthan transfer of behavior data
Introduction
View, purchase and Customer Preference behavioral data that is generated in the RichRelevance system for client users will be transferred to the Manthan systems.
This data will be used to deliver an end-to-end algorithmic customer experience marketing solution that includes the leading business-to-consumer Customer Data Platform, Retail Marketing & Merchandising Solution, and Real-time Personalization Platform with advanced data science.
A RichRelevance component service named log-jsonifier is used to convert the behavior data generated in the RichRelevance systems to a json format and then use kafka data stream processing to transfer that data to systems at Manthan.
Currently, log-jsonifier is configured to convert and transfer the following data types: 1) view, 2) purchase and 3) Customer Preference. This component is configurable to convert and transfer data for specific Algonomy sites.
Parameters for the json format:
Name | Description | Additional Information and Options |
---|---|---|
datetime | An epoch timestamp for the event. | |
viewGuid | guid generated by RR to assign a unique id to the event | |
channelId | The internal RR method that generated the event. What channel did the event come from (online, mobile sdk, offline). Generally this will be generated from a server-side api or a client-side p13n call. | Values: recsForPlacement, TBD |
site.id | The RR internal database id for the site | |
site.apiKey |
The RR api_key created for the site. This value is known to the client and is used for server-side api calls. It is also known for p13n calls. |
|
site.externalId | The corresponding Manthan id for site. This allows mapping from the RR site id to the Manthan site id. | |
visitor.deviceId | The Manthan guid that is passed to RR instrumentation, or the guid generated by RR for the user. | |
visitor.deviceIdFirstView | Is the deviceId newly generated? | Values: true, false |
visitor.userId | The user id assigned by client site and passed in the RR behavior event. TBD what about evnets with no userId? | |
visitor.sessionId | The session id assigned by the site in the RR behavior event. | |
visitor.siteDenotedUserId |
TBD - unclear what sites use this this in what situations. still looking for examples of where it is used. Will usually not be included. |
|
visitor.segmentIds |
The segment ids that were assigned to this user. | |
visitor.userAttributes |
Data map with a name to value set of attributes associated with user | |
visitor.ip | ip address of the client user | |
visitor.browser |
information about the browser/device used by the client: osName => operating system used by the client user browserVersion => version of the browser flashVersion => flash version used by the browser userAgent => device charastics from the userAgent attribute clientDeviceType => TBD - what are the known values |
|
visitor.languageId | If provided, the language id from the client user | |
page.type | The type of view (click). One of home, brand, error, category, product, search, landing, cart, cartadd, purchase, email, ensemble, registry, registryadd | |
page.referrer | The url of the referrering page assuming it was from outside the site | |
page.brand | The brand of page. It could be on any page, but usually just on product and brand pages. | |
page.refinements | Any additional refining information for the page. | |
page.contextAttributes | Any additional context information for the page. TBD - what are the values | |
search.page | page.searchTerm - The term that was searched for. | |
registry.page |
page.list - The name of the list, registry or wishlist | |
registryadd.page | page.list - The name of the list, registry or wishlist | |
purchase.page | page.order number => the order number products => the ordered products and information about them channel => the order channel emailHash => a hash of the users email cardHash => a hash of the credit card paymentMethod => self expanatory storeId => if physical store, the id of that store couponCode => self explanatory couponValue => how much the coupon reduced the price by totalPrice => price paid shippingCost => total shipping cost of order taxes => total taxes on order |
|
category.page | page.categories => for now just ids mapped to empty objects, but in future may contain more infromation about categories |
|
product.page | page.products => ids and information about products | |
registry.page | page.products => ids and information about products | |
cart.page | page.products => ids and information about products | |
registry.page | page.products => ids and information about products | |
cart.page | page.products => ids and information about products | |
cart_add.page | page.products => ids and information about products | |
registryadd.page | page.products => ids and information about products | |
|
Example: json format for rr_behavior topic data to send to Manthan:
1) Example data for a VIEW: { "datetime": 1582245108338, "viewGuid": "0ac1fbd6-74c8-4162-2299-7b5c19022801", "channelId": "recsUsingStrategy", "site": { "id": 1825, "apiKey": "7e34192c3ac1c51e", "externalId": "manthanexternal" }, "visitor": { "deviceId": "0ac0fbd6-74c8-4162-2299-7b5c19022801", "deviceIdFirstView": true, "userId": "9990220_10", "sessionId": "dEKaJ_IneiCe_Fj5VEqO1LsgR6L0220_10", "siteDenotedUserId": "0ac0fbd6-74c8-4162-2299-7b5c19022801", "ip": "4.7.9.150", "browser": { "osName": "Mac OS X", "browserVersion": "Chrome 8", "flashVersion": "11.5.31", "userAgent": "\u0006(\fIntel \u001C_13_6) AppleWebKit/537.36 \u0013\u001080.0.3987.116\u0014537.36", "clientDeviceType": "STANDARD" } }, "page": { "type": "product", "products": [{ "id": "380" }] } } 2) Example data for a PURCHASE: { "datetime": 1582245281306, "viewGuid": "0ac4fbd6-74c8-4162-2299-7b5c19022801", "channelId": "recsUsingStrategy", "site": { "id": 1825, "apiKey": "7e34192c3ac1c51e", "externalId": "manthanexternal" }, "visitor": { "deviceId": "0ac3fbd6-74c8-4162-2299-7b5c19022801", "deviceIdFirstView": true, "userId": "9990220_10", "sessionId": "dEKaJ_IneiCe_Fj5VEqO1LsgR6L0220_10", "siteDenotedUserId": "0ac3fbd6-74c8-4162-2299-7b5c19022801", "ip": "4.7.9.150", "browser": { "osName": "Mac OS X", "browserVersion": "Chrome 8", "userAgent": "\u0006(\fIntel \u001C_13_6) AppleWebKit/537.36 \u0013\u001080.0.3987.116\u0014537.36", "clientDeviceType": "STANDARD" } }, "page": { "type": "purchase", "order": { "number": "100010", "products": [{ "id": "380", "quantity": 1, "price": 501, "type": "Product" }] } } } 3) Example data for a Customer Preference: { "datetime": 1582245281306, "viewGuid": "0ac4fbd6-74c8-4162-2299-7b5c19022801", "site": { "id": 1825, "apiKey": "7e34192c3ac1c51e", "externalId": "manthanexternal" }, "visitor": { "deviceId": "0ac3fbd6-74c8-4162-2299-7b5c19022801", "deviceIdFirstView": true, "userId": "9990220_10", "sessionId": "dEKaJ_IneiCe_Fj5VEqO1LsgR6L0220_10", } }, "preference": { "action": "like", "target": "product", "targetIds": [ "V_18367017" ] } }