The addon consists of three components:
- taglib: tags and node functions to store the user input on the delivery machine and to retrieve the evaluated results
- submitter: periodically submits the user input from the delivery machine to the administration webapp
- ugc: an administration application that persists the user input, provides a web interface for administration and a JSON API for retrieving the results
Each submission of content by the user is handled asynchronously. I.e., when a user submits a comment on one of your deliveries, a JSON file is stored in the file system. Within the delivery webapp there is a thread, called the submitter, to check for newly created files. These files are read and submitted as a bundle to a backend application, which persists the submissions in a database. This application is called ugc-webapp.
The ugc-webapp has a web interface to manage the submitted content. The web interface can be accessed either by browser or by configuring browser tabs that allow the editors to access the administration interface in Sophora for just the document they have opened.
To access the stored information in your delivery there are tags and node functions. These will call the ugc-webapp and retrieve the user generated content via HTTP and JSON. Caching is supported and cache fragments will be deleted, if there are changes within the ugc-webapp related to that content.