The ODK 2 Push Notifications project consists of two applications currently code-named "Skunkworks Parrot" and "Skunkworks Bat" that were written during last year's Google Summer of Code. Their purpose is to support sending messages from a desktop computer out to all phones running their ODK 2 app. “Parrot” is the desktop application, written in Java, that provides a user interface for writing messages, creating user groups to receive them, and sending those messages via the Firebase Cloud Messaging. “Bat” is the Android application that receives these messages via Firebase, checks the user credentials to see if the user is in the group that should receive this message, and displays the message to the user.
In this project, you would be taking these prototypes and improving them so that they can be fully released and integrated into the ODK 2 tool suite. This would involve:
- Fixing existing bugs and stabilizing performance
- Working with current ODK 2 users to beta test, record feedback, and implement improvements
- Creating documentation for using the tools
- Integrating with ODK Services and potentially other ODK 2 applications
These applications let administrators send instructions to field workers without using a third-party application. This is especially important for bigger organizations that might have a large and changing group of workers where the logistics of SMS might be difficult. You would be working directly with these administrators to ensure that these tools provide real value and are suitable for use in the field.
Note that this project is part of the ODK 2 Tool Suite. This is a new set of tools that handles more complex workflows than the ODK 1 Tools but is more complex itself. This project is not compatible with ODK Collect; it is compatible with ODK 2 Services, ODK 2 Tables, ODK 2 Survey, and the rest of the ODK 2 tool suite. You can read more about both suites here: https://opendatakit.org/software/
Requirements: Android, Java