Wiki source code of External application integration
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | (% class="box warningmessage" id="H5BDraft5D" %) | ||
2 | ((( | ||
3 | **This is a draft** | ||
4 | ))) | ||
5 | |||
6 | The goal is to give collab editors a way to add external apps in the Collabs they are managing. To do so, the user should have access to a list of available apps. This is the **Application Catalogue** and it is publicly available and should be crawlable by search engines. | ||
7 | |||
8 | To feed the catalogue, external application developers need to have access to an **Application Manager** where they can register apps. External app developers are registered users and have a specific role. Applications that need to have access to the Collaboratory APIs or to authenticate users have to create an OAuth client. | ||
9 | |||
10 | (% class="wikigeneratedid" %) | ||
11 | ((( | ||
12 | {{toc numbered="true"/}} | ||
13 | |||
14 | = External Application Requirements = | ||
15 | ))) | ||
16 | |||
17 | Application are embed in Iframe, external apps have to allow to be embedded under https:~/~/wiki.humanbrainproject.eu domain in their Content Security Policies. The Collaboratory gives the iframe a context parameter via a query string (?ctx={uuid}). The external app has then to handle it to perform further operations. | ||
18 | |||
19 | = Application Manager = | ||
20 | |||
21 | == Registering an application form == | ||
22 | |||
23 | * Title | ||
24 | * Description | ||
25 | * URL | ||
26 | * Category | ||
27 | * Visibility (public/private) - private option just hides the app in the list. There is no real visibility management. | ||
28 | |||
29 | == Search for existing apps == | ||
30 | |||
31 | * Same features as Application Catalogue | ||
32 | |||
33 | = Application Catalogue = | ||
34 | |||
35 | This is a list where Collab editors can choose an app. | ||
36 | |||
37 | * The editor adds a new document in the wiki. In the creation template list, there is a “Integrate External App” type that opens the External Application list, the user can search an app and pick one to associate its Collab. | ||
38 | |||
39 | * Applications in the list are | ||
40 | ** Displayed as a flat list, server side generated with all entries | ||
41 | ** Selectable | ||
42 | |||
43 | * Then the user can | ||
44 | ** Filter via a text input that provides autocompletion feature | ||
45 | ** Filter by categories (to be defined) | ||
46 | ** Sort by some criteria |