Skip to content

Instantly share code, notes, and snippets.

@digitalbase
Created April 23, 2020 19:30
Show Gist options
  • Select an option

  • Save digitalbase/5bcd271de503729b207a6bd1a5ccdbb6 to your computer and use it in GitHub Desktop.

Select an option

Save digitalbase/5bcd271de503729b207a6bd1a5ccdbb6 to your computer and use it in GitHub Desktop.
const { unmarshallNewImageEvent } = require('./src/utils/dynamo_stream.util');
const dynamoDBFactory = require('./src/dynamodb.factory');
const { UserToAnonymousModel } = require('./src/models/UserToAnonymous');
const dynamoDb = dynamoDBFactory();
const model = new UserToAnonymousModel(dynamoDb);
module.exports.handler = async (event) => {
const eventData = event.Records[0];
const eventAddedUnmarshalled = unmarshallNewImageEvent(eventData);
const { type: eventType, userId, anonymousId } = eventAddedUnmarshalled;
// only handle dynamo INSERTS and events with type identify
if (eventData.eventName !== 'INSERT' || eventType !== 'identify') {
return;
}
try {
await model.storeMap(userId, anonymousId);
} catch (e) {
console.log(e.message)
}
return eventData.eventName;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment