User Tools

Site Tools


education_survey_tool_android_app_systems_administrator_manual

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
education_survey_tool_android_app_systems_administrator_manual [2023/11/17 16:55] – [Pacific EMIS Education Survey Tool Android App Systems Administrator Guide] ghacheyeducation_survey_tool_android_app_systems_administrator_manual [2023/11/17 16:57] (current) – old revision restored (2023/11/17 10:17) ghachey
Line 1: Line 1:
-====== Pacific EMIS Education Survey Tool Android App Configuration ======+====== Pacific EMIS Education Survey Tool Android App Systems Administrator Guide ======
  
-The configuration of the Pacific EMIS Education Survey Tool Android App is done centrally using Firebase at https://console.firebase.google.com/u/2/. 
  
-The configuration is a JSON file. The values supported are detailed below: 
- 
-Here the options are detailed: 
- 
-  * **emis_folder**: This is a Google Service Account GUID to a folder where all files for this app are stored. It is a remnants of the time when a single Google Service Account was shared for many countries. Now each instance has it's own Google Service Account but the parent folder remains. 
-  * **operating_mode**: Whether the app is in Development mode or Production mode. 
-  * **app_title**: The title that will show up on the home screen of the app. 
-  * **deleting_cloudfile_also_deletes_on_tablet**:  Whether deleting a file from the table will also delete it from the cloud (use with extreme care, better to not activate at all for now). 
-  * **can_export_to_excel**:  Whether an export to excel feature is enable for the survey data from within the app. 
-  * **contact**: The contact person that will show up on in the app for users. 
-  * **master_password**: the app's master password to access settings and other more sensitive features. 
-  * **logo_url**: The URL to the desired logo that will show up on the home screen of the app. 
-  * **prod_cert**: OBSOLETE, superseded by service_account_key_prod. 
-  * **service_account_key_prod**: The crypto key to access the Google Service Account to sync files in Production mode. 
-  * **service_account_key_dev**: The crypto key to access the Google Service Account to sync files in Development mode. 
-  * **emis_url**: The Pacific EMIS' deployed instance API URL. 
-  * **emis_user**: The Pacific EMIS' deployed instance API user. 
-  * **emis_password**: Pacific EMIS' deployed instance API password. 
- 
-   
- 
-A sample file would something like this. 
- 
-<code json> 
-{ 
-  "parameters": { 
-    "emis_folder": { 
-      "defaultValue": { 
-        "value": "\"{A_GUID_STRING}\"" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "operating_mode": { 
-      "defaultValue": { 
-        "value": "{\"force\":false,\"value\":\"Development\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "emis_password": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"some-password\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "app_title": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"Pacific EMIS Education Survey Tool\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "deleting_cloudfile_also_deletes_on_tablet": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":false}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "service_account_key_prod": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"a-long-cryptographic-string\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "prod_cert": { //OBSOLETE 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"a-long-cryptographic-string\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "emis_user": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"some-email-address\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "can_export_to_excel": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":false}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "contact": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"some-email-address\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "master_password": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"some-password\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "logo_url": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"url-link\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "emis_url": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"url-link-to-api\"}" 
-      }, 
-      "valueType": "STRING" 
-    }, 
-    "service_account_key_dev": { 
-      "defaultValue": { 
-        "value": "{\"force\":true,\"value\":\"a-long-cryptographic-string\"}" 
-      }, 
-      "valueType": "STRING" 
-    } 
-  }, 
-  "version": { 
-    "versionNumber": "a-digit", 
-    "updateTime": "last-updated-datetime", 
-    "updateUser": { 
-      "email": "last-updated-by-user" 
-    }, 
-    "updateOrigin": "CONSOLE", 
-    "updateType": "INCREMENTAL_UPDATE" 
-  } 
-} 
-</code> 
- 
-A word on the Google Service Account. There are several different Google Service account in use (different countries, production, development, testing, etc.) 
- 
-Generally this is the list. 
- 
-  * **Pacific EMIS Development**: the default Google Service Account to use when the source code is clone and run in development without changing the key. 
-  * **Pacific EMIS Production**: the Google Service Account to use for the official PAcific EMIS demo (demo not operational yet). 
-  * **Country EMIS Test**: the Google Service Account to use for the demo/test version of a country's deployment (e.g. FEDEMIS-TEST, MIEMIS-TEST, etc.). 
-  * **Country EMIS Production**: the Google Service Account to use for the production version of a country's deployment (e.g. FEDEMIS, MIEMIS, etc.). 
- 
-A key will look something like this. By looking at the "the-id-of-the-project" and the "the-id-of-the-key" you can see clearly see which deployment (i.e. Pacific EMIS, FedEMIS, MIEMIS, etc.) and which mode (i.e. Production, Development, Test). 
- 
-<code json> 
-{ 
- "type": "service_account", 
- "project_id": "the-id-of-the-project", 
- "private_key_id": "a-short-guid-string", 
- "private_key": "-----BEGIN PRIVATE KEY-----\na-long-crypto-private-key\n-----END PRIVATE KEY-----\n", 
- "client_email": "the-id-of-the-key@the-id-of-the-project.iam.gserviceaccount.com", 
- "client_id": "a-short-id-string", 
- "auth_uri": "https://accounts.google.com/o/oauth2/auth", 
- "token_uri": "https://oauth2.googleapis.com/token", 
- "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs", 
- "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/the-id-of-the-key%40the-id-of-the-project.iam.gserviceaccount.com" 
-} 
-</code> 
-As these keys need to be kept secure they are not published with the source code and kept in a safe place. Developers participating to the project will need to request the keys. 
 ===== Setting up the Tablet ===== ===== Setting up the Tablet =====
  
Line 305: Line 155:
  
 <note tip>You rarely need to change those.</note> <note tip>You rarely need to change those.</note>
 +
 +Details of the configuration can be found at [[Pacific EMIS Education Survey Tool Android App Configuration]]
 +
  
 ===== Troubleshooting ===== ===== Troubleshooting =====
education_survey_tool_android_app_systems_administrator_manual.1700240119.txt.gz · Last modified: 2023/11/17 16:55 by ghachey