External Applications

Applications are the end-points for of data transmission in the Fautore data traffic process. Data is initiated from an external application, processed through Fautore and passed to another external application. Fautore stores data only while it is in transmission between end-points. External applications can only make use of Fautore from within the Personal Operations Domain (POD). Making full use of the application is a 2 step process:

  1. Register application initiating an osaAppReg call from the application
  2. Approve application for use from within the OCE

An application is registered, at a minimum, once for every device on which it will run. Depending on application architecture it may also need to be registered for every member that uses it on the device, but that is considered an edge case.

Diagram PNG illustrating the data flow of regisering an application and subsequently enrolling in it's use.

Application registration

Application registration is the process of making an application available for use in the Fautore OCE. After registration an Application Manager must enable the application for use through the Fautore configuation mangement screens before it can be used by OCE members. Even the registering member is unable to use the application until it is approved.

  • Registration occurs through the API osaAppReg call issued from the application
  • All registration data specific to the application is collected by the registering application and passed to Fautore via the JSON described on the osaAppReg page.
    • Application descriptive information such as application name, description and data directionality is stored to the "RegApps" table
    • Data descriptors for application specific data to be collected at enrollment time are stored to the "AppSpecs" table
    • Default data to be displayed for the application at enrollment and used if no value is provided is stored to "AppSpecData" with a Tribe Member (user) value of "Default."

Instructions

Applications are incorporated into Fautore instructions along wil additional filtering information such as "data source" and "sending tribe member" to form a routing instruction. When data comes into Fautore from an application it is stored to the staging table and applicable instructions are triggered based on filtering criteria to route the data to a destination application.

  • Standard application enrollments data stored in "AppEnrollments" is used to gain access to the external application.
  • Information from the AppSpecData data table is used to augment the AppEnrollments data as necessary if it exists.
  • Once Fautore establishes connectivity a JSON message containing the data to be passed as a package is sent to the application.

Current Applications

Applications fall into two classifications of "app" and "agent" that are loosely based on directionlity. An app can be thought of as a small program that sends data into Fautore. An agent then is a small program that send data from Fautore into the application. There is a lot of room or grey areas, such as if a program handles data in both directions. The default is to consider somthing an "app" unless its function is strictly to send data outward from fautore.

Application type Description
email app (On Hold) Used to collect emails from a specified account and pass the data into Fautore via a standard OSA message
fauSMTP app Currenlt used email processing program that uses OSA/OCE as the distribution mechanism.
fauSendFile app Used to pull data from a designated directory structure and pass it to Fautore via a standard JSON message.