Inspiration

When the pandemic began, it was clear that the elderly would suffer disproportionately - not only are they the age group most at risk from the virus, but they are also the likeliest to be living alone, meaning they have to do their own groceries. Of course, supermarkets have shown to be transmission vectors for the virus, making a simple essential act like picking up weekly groceries something that can lead to catching Coronavirus. And this is of course, a much more dangerous move for the elderly, since the mortality rate increases exponentially with age. One could suggest online ordering as a solution, however this age group is likelier to be tech-illiterate, and hence conventional online ordering is less likely to draw them in, due to their unfamiliarity with it combined with confusing site layouts. That is why we built CommunityHero - a truly accessible online ordering solution, tailored to keep the most vulnerable parts of our population safe.

What we do

CommunityHero provides 3 main interfaces for online ordering - firstly, a smart Messenger chatbot which provides product images, helpful tips and uses Machine Learning to help parse each customer's shopping list. Secondly, we built an SMS interface for those not on Facebook/not on the Internet, with approximately the same functionality as the Messenger chatbot. Lastly, we built a webapp which works like traditional online ordering sites, albeit with a simpler layout.

Messenger SMS
messenger chatbot sms chatbot

All of these interfaces, each one designed to tailor to the needs of our target customer (an elderly person with little to no tech literacy), link to a web interface showing all pending orders. This is accessible by our “Community Heroes” - part of our volunteer delivery network. We currently plan to partner with local NGOs in every area we serve to help find a large number of Community Heroes quickly and efficiently.

delivery webapp

Community Heroes can log in on a web interface and see all of the orders available on a map and choose which ones to order. Upon choosing an order, they can claim it, so that they can see the full order details. The system will also then send a message to the original customer saying that their order has been claimed by someone. In order to further decrease the chances of infection between the community hero and the customer, we present the “Community Hero” a set of guidelines that they need to follow to ensure the process is safe, including provisions to wear PPE.

How we built it

We use an Android phone as the SMS gateway, which receives incoming SMS messages and forwards them to the backend, built using Django and hosted on Heroku. We use NLP to search for the products requested in the products available, and choose the best combination that minimizes price and distance. The searching is done by splitting all strings into N-grams and using the Jaccard Distance. Further, based on what products are most commonly in carts, we made a product weighting system, based on how popular each item is. For example, even though Soy milk and Skimmed milk would both be results to the search 'milk', the user is more likely to want skimmed milk. This is done automatically based on the collective current shopping carts of all users. This allows for trends to remain as trends (for example, hopefully, disinfectant products will not be so common in 2-3 years) Our chatbots are stateful - this means that the context from the previous messages is understood in order to find the state in which the conversation is. For example, the bot knows that the user is still completing his/her profile, so it understands that an incoming message containing 'Yes' is not something to search for, but rather an answer to a previous question. The frontend communicates with the backend RESTfully.

Demo

Instructions on how to run the demo are available here

Challenges

It was difficult to find a way to find a viable business model, since it is based on human interest for others, and volunteering, which may be difficult to promote. However, since we are in the middle of a global pandemic, it is a lot easier to get people to dedicate their time than before.

Currently, our business model relies on attaining revenue through small commissions stores will pay whenever a customer shops with them through our platform. This revenue will be used to help provide PPE (masks & gloves) and support to our Community Heroes, who we will source via local NGOs. The benefit to this approach is it allows us to scale faster than usual - NGOs are often more efficient when it comes to getting together a large number of volunteers, and we are certain that for a

A technical difficulty we had was the fact that for Facebook Messenger to accept our messages / to send us messages, it needed to be hosted over HTTPS. Therefore, it couldn't be tested locally without a domain name. Hence, every time we changed something in the code we needed to push to GitHub, and redeploy the whole backend, which took 2-3 minutes every time, no matter how small of a change we wanted to make.

Another thing that we were anxious about is the Facebook App Review. This is a process needed in order to make an app that uses the Facebook API live. However, this is a manual process that may take up to 2 weeks! We didn't expect the process to finish in time for the demo, so we also implemented a process through which anyone can send us their Facebook profile, and they would be added as testers. Fortunately, the process finished a few hours before the submission deadline, so even though it was already implemented, we don't need to use this long (and manual) process of adding testers, since our chatbot is now public.

Accomplishments

Awarded at the Greek Crowdpolicy Antivirus Hackathon amongst 50 teams!

We were able to make significant progress on the chatbot within the past 2 days.The idea was refined and revised multiple times, and we feel that the idea itself is quite unique - we certainly haven’t been able to find an equivalent alternative on the market. Even though there are a few similar ideas in the hackathon, with the same concept of crowd-delivery, we believe that our range of ordering methods adds significant value to our product.

What we learned

  • Make REST APIs
  • Use the FB Messenger API to send messages
  • Go through the FB verification process
  • Use, manage and launch WordPress WooCommerce site
  • Hosting on Heroku
  • Using NLP libraries

What's next

  • Partner with supermarkets
  • Build in navigation into deliverers web interface, make it into a cross-platform mobile app
  • Partner with local NGO to source first CommunityHeroes and bring product live ASAP

Who we are

We are a team of high school students from Cyprus interested in the social good and try to contribute, in whatever way we can, to as many people possible in these dire times we live

Any feedback is welcome here as a comment, or shoot us an email at feedback@mail.communityhero.live :)

Share this project:

Updates