Set scheduled event dynamically

  1. Store the trigger records in DynamoDB - multiple triggers means multiple records, each with a different execution time.
  2. Enable Time To Live in DynamoDB and configure that table such that when the execution time is reached, the record will be deleted.
  3. Create a lambda that listens to DynamoDB deletion events. When it detects that an event should be triggered, it does so, using the data sent from dynamo.