Skip to content

Instantly share code, notes, and snippets.

View digitalbase's full-sized avatar

Gijs Nelissen digitalbase

View GitHub Profile
Computer Information:
Manufacturer: Apple
Model: MacBookPro14,3
Form Factor: Laptop
No Touch Input Detected
Processor Information:
CPU Vendor: GenuineIntel
CPU Brand: Intel(R) Core(TM) i7-7920HQ CPU @ 3.10GHz
CPU Family: 0x6
<section class="section section--tight section--quote">
<blockquote> We're not just an ecommerce software, Shopify is the best ecommerce platform that has everything you
need to sell online, on social media, or in person. </blockquote>
<hr class="press-quote__separator">
<p class="press-quote__content gutter-bottom">Shopify is the leading omni-channel commerce platform. Merchants use
Shopify to design, set up, and manage their stores across multiple sales channels, including mobile, web, social
media, marketplaces, brick-and-mortar locations, and pop-up shops.</p>
<p class="press-quote__content">The platform also provides merchants with a
powerful back-office and a single view of their business, from payments to shipping. The Shopify platform was
@digitalbase
digitalbase / track.js
Created April 21, 2020 07:41
CRM change - Tracking
// spec @ https://segment.com/docs/connections/spec/track/
analytics.track('Deal Status Won', {
dealSize: 5400
dealCurrency: 'euro'
dealPeriod: 'annual'
});
// spec @ https://segment.com/docs/connections/spec/identify/
analytics.identify(userId, {
dealStatus: 'won',
// Once a noteworthy source is identified we fire a tracking call
// spec @ https://segment.com/docs/connections/spec/track/
analytics.track('Visitor Origin Identified`, {
{
"referrer": {
type: "email",
client: "gmail",
from: "https://mail.google.com/",
link: "http://blog.intercom.io/churn-retention-and-reengaging-customers/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+contrast%2Fblog+%28The+Intercom+Blog%29"
},
const serverless = require('serverless-http');
const express = require('express');
const app = express();
app.post('/hello', function (req, res) {
res.status(200).send(`Hi. Awesome guide. Keep reading @ https://medium.com/solving-marketing-attribution`);
});
module.exports.handler = serverless(app);
service: solving-marketing-attribution
provider:
name: aws
runtime: nodejs10.x
stage: dev
region: eu-west-1
functions:
hello:
handler: handler.hello
events:
> http POST https://[URL]/dev/hello
HTTP/1.1 200 OK
Connection: keep-alive
Content-Length: 82
Content-Type: text/html; charset=utf-8
Date: Wed, 22 Apr 2020 19:29:44 GMT
Via: 1.1 d1f9689a3caeb0a19dffbc049d2b2141.cloudfront.net (CloudFront)
X-Amz-Cf-Id: WNTlEGv7ihx7UStbvc1-c2xAsyjFIzjDlRgw7enBP1IWGR27-Enliw==
X-Amz-Cf-Pop: LHR61-C2
service: solving-marketing-attribution
custom:
# sma = Solving Marketing Attribution
tableIdentify: 'sma-identify-${self:provider.stage}'
tableTrack: 'sma-event-track-${self:provider.stage}'
provider:
name: aws
runtime: nodejs10.x
const serverless = require('serverless-http');
const bodyParser = require('body-parser');
const express = require('express');
const app = express();
const AWS = require('aws-sdk');
const IDENTIFY_TABLE = process.env.IDENTIFY_TABLE;
const TRACK_TABLE = process.env.TRACK_TABLE;
const dynamoDb = new AWS.DynamoDB.DocumentClient( {
// ensures empty values (userId = null) are converted
{
"anonymousId": "f1ef0f8d-68d2-4fbc-a7e6-cade9d42f3aa",
"context": {
"ip": "8.8.8.8",
"library": {
"name": "analytics.js",
"version": "3.11.4"
},
"locale": "pt-BR",
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36"