The Why

As technology progresses, the majority are carried along, but some are left behind. Regardless of the reason, choosing not to engage with modern technology shouldn't exclude you from its benefits. Take social media, for instance: it became the preferred method for staying in touch with friends upon its inception. However, it represented a significant shift, causing many to abandon the journey of progress at that point. We aim to provide an alternative.

The What

As implied by its name, this voice assistant is designed to facilitate meetups for those who may not wish to or cannot, use social media. By simply pressing a button and speaking to the assistant, you will be connected with others nearby who share your interests. Once a match is found, you will receive the landline numbers of the other participants to arrange the details. If no existing event matches your specified time, a new one will be created, and other interested individuals will be directed to your event.

The How

  1. The Hardware The system is made up of a server and one Raspberry Pie computer per User. The Raspberrys are equipped with a microphone, speaker, screen, and button. A Python script is permanently running on the pies. Upon holding the button the pie starts recording, letting go results in an audio file that is then sent to the OpenAI API. If some necessary info (Date, Time, Activity) is not given in the request, the assistant asks about the missing date/activity, etc.

  2. The Webapp Although the device is fully operational with a single button, it requires an initial setup to input essential data for matchmaking. Upon first connecting the mini computer, it will create a Wi-Fi network that allows access to the configuration panel. Here, one can input their address, name, and landline number, and log into a nearby Wi-Fi network for internet connectivity. This information is then transmitted to the database (3) with each request.

  3. The Database The hub of the operation is the database. It collects the data of every Client and adds their request to the corresponding tables. Using the provided addresses and the Google Maps API the database will determine if two users are within travel distance of one another, additionally, OpenAI API is used to determine if two activities are similar enough to match up their users (for example "Kartenspielen" und "Schafkopfen"). If both conditions are met the users are matched and added as such to the database. Every few seconds the Raspberry Pie requests an update from the server, if there is a change for the client, the Raspberry displays it on the screen.

    Challenges we ran into

    Working with hardware is always tedious as the number of possible error points increases with each added module. In our case out of the 5 speakers we brought only two to work consistently but with bad sound quality, while another has good quality, but has a tendency to abruptly stop working.

Accomplishments that we're proud of

The interaction with the Assistant seems very natural, and it operates intuitively as designed. The communication between the client and server is seamless, and the APIs are quick enough to provide an impression of immediacy.

What's next for Senior Citizen Activity Matchmaker

Like many products, this one could be expanded indefinitely in theory. It is already designed to support an unlimited number of users, with scalability built into the code. A significant forthcoming advancement would be to include English as an input/output language. Given that the assistant depends on natural spoken language, integrating multiple languages presents a considerable challenge.

Share this project:

Updates