There are no checks on email address at the moment for test purposes. You can use any random or dummy email like firstname.lastname@example.org . But password must be same if you login again the next time with the same email.
The main thinking was to make best use of features of SendAnyWhere SDK such as no sign up, secure and timed transfer. Based on these features, I began to wonder what field can best use these features. The obvious one was citizens and personnel in conflict zones or those under stress or duress.
How it works
Based on these observations, the app allows 2 types of login.
Non Governmental Organisations(NGOs) - who sign up with their email.
Citizens, those who want to report - Anonymous sign up.(Just press the button, "Do You want to Report". Does not need or read or use or process any information in the email, password or organisation fields, when this button is pressed).
To test use at least 2 devices. On one sign up as a NGO with a email and password. And on second sign up Anonymously.
After signing in, NGOs see list of all messages they have received. Select one message to communicate with the user, in case they are still logged in.
After Sign up, Anonymous users, see the list of NGOs. Select the NGO they are interested in sharing information with. They can message and chat with those individuals in charge of the NGO account.
The messaging feature is real-time, and instant. The sent and received messages are presented in a list and in different colours. To share a file, they have to tap on the Upload Button on the top right of the screen.
On tapping it opens, the file selection dialog. Once the anonymous user, selects the file, the user is back in the chat screen. The app then contacts the NGO.
If the app of NGO account is in the background, the app creates a notification to inform.
Once the NGO is in chat screen with the anonymous user, they receive a dialog either to accept or reject the file the user has decided to share.
If they reject the download, the user is sent a message that it has been rejected.
If they accept yes, the app begins the process of transferring the file. Once downloaded, they are informed of the location of the file. The NGO can access the list of files sent to them by selecting the "Files Received" option in the menu on the top right of the screen. At the moment it only shows the location of the files, in future would take them to the file.
Challenges I ran into
1) The main was designing the app user experience, so that I can use the secure file sharing that worked in NGO use case.
Accomplishments that I'm proud of
1) Creating an almost fully functional Real time chat app with secure file sharing. 2) Putting anonymous messaging to a real use case.
What I learned
New technologies for being able to develop solutions based on messaging applications.
What's next for AnonReport
1) Add email verification for logged in users such as NGOs as an important step.
2)If there is demand for the app, I would like to set up a technical process to verify NGOs.
3) Detect incoming messages in the background even when the app is closed.(Currently, it works when the app is the background but app should not be closed).
4) Web version of the app.