U-Report Application

First Vector Graphic
01
U-Report Application Data Flow
  • The whole system is based on 3 major components. RapidPro server, U-Report Offline server, and the U-Report Application.
  • RapidPro server(s) are used to add Surveyor flows, which in turn will run on U-Report Application.
  • U-Report Offline server process and converts flow run data from RapidPro into U-Report format.
  • U-Report Application syncs data both U-Report Offline and RapidPro server. The application also runs the survey from RapidPro.
App
02
App
U-Report Offline Flow Life Cycle
  • The life cycle of flow begins at the RapidPro server when a user creates a Surveyor flow. Then the U-Report Application fetches the flow from RapidPro Server. After a user completes a survey then it is submitted back to RapidPro.
  • Afterward, U-Report Offline server checks for updates from RapidPro periodically to check for new data. If any new data is found it converts it into U-Report format and serves it to U-Report application as Result or U-Report Offline data.
03

U-Report Offline Flow Life Cycle

App App
04
App App
Application Update
  • There are two types of update options available for the application. First one is a mandatory update, which holds the launching of the application without an update. The other one is optional or non-mandatory update, this one does not hold the application but shows an update icon on the application dashboard.
05

Dashboard Activity

06

Story List Activity

App App
07

Story Details Activity

App App
08

Result List ( U-report Offline List Activity )

App App
09
Result Details ( U-report Offline Details Activity )
  • The result details page shows the summary of flow runs in a similar view to U-Report results. To use the full potential of the result detail view, RapidPro flows must be made in a specific way.
App
10

U-Report Offline Flow Life Cycle

App App
11
App
Flow Run Activity
  • Flow run activity is an inherited part of the RapidPro surveyor application. The activity runs flow for the user to complete a survey.
  • In this implementation, there are some slight improvements from the original Flow Run activity.
  • It supports quick-response and media contents such as image, audio, video. All the contents are made offline beforehand, so it requires no internet at the runtime.
12
Settings Activity
  • From the settings page, users can change app-wide language preference. Also, there are sound and vibration enabling and disabling functionality. Users can log out of the workspace from the settings page.
App

U-Report Offline Flow Life Cycle

There are few additional documents which are relevant to this documentation and might help you understand this document better. They are listed below:

Assets from UNICEF

RapidPro Surveyor:https://github.com/rapidpro/surveyor

This was the base for the user opinion collection system.

RapidPro API:https://rapidpro.io/api/v2/explorer

RapidPro API was used to read user survey responses.

Used Libraries

OkHTTP:https://square.github.io/okhttp/

This library was used to download contents from U-Report Application Server and RapidPro server.

Retrofit:https://square.github.io/retrofit/

Retrofit was used to get an API response from Server.

Room Database:https://developer.android.com/reference/androidx/room/RoomDatabase

Room was used to store data locally.

Google GSON:https://github.com/google/gson

GSON was used to convert JSON data for use in the application.