Skip to content
This repository has been archived by the owner on Mar 20, 2019. It is now read-only.

Whenbot UI app outline

redronin edited this page Feb 28, 2012 · 2 revisions

Whenbot UI app

A simple ifttt.com clone for single user. Allows the creation, configuration and running of user-defined 'Triggers' and 'Publishers'. To use, clone the ui app repo, add and configure whenbot strategies, and deploy to your own Heroku instance.

Suggested Architeture

  • Heroku-based single dyno web service
  • rails/sinatra based
  • pg backend
  • use simple omni-auth based user authentication (twitter/fb/google) or http_authentication
  • twitter bootstrap UI
  • new relic monitoring

Suggested Features

  • ability to create a new 'Action', which consists of a Trigger, trigger settings, a Publisher, and publishing settings.
  • A trigger is an instance of a whenbot strategy trigger, which can be either a Polling type trigger, or a Webhook/callback type trigger.
  • A publisher is an instance of a whenbot strategy publisher.
  • When creating an 'action':
    • user must select a trigger from the list of defined triggers (they are defined in the configuration of the repo)
    • user must authenticate against the service using their credentials (token stored in the action)
    • user must select from the trigger's defined events how the trigger will be fired
    • user will select some optional parameters that will affect what constitutes an event
    • user must select a publisher from the list of defined publishers to publish the results to
    • user must authenicate against the publisher with their crendentials (which are stored in the action)
    • user will select from optional parameters on how the data will be published
  • liquid should be used allow some manipulation/processing of the data before being published
  • user should be able to turn on/off any 'Action'
  • user should be able to list all actions
  • user should edit/delete any action
  • there should be a log of all past trigger and publishing events