Giter Site home page Giter Site logo

volunteer-dispatch's Introduction

Volunteer Dispatch

A bot which locates the closest volunteers to check-in on & run errands for vulnerable members of the community.

Made by Astoria Tech volunteers, for use by the Astoria Mutual Aid Network.

How it works

Astoria Mutual Aid Network’s volunteer dispatch works as follows:

  • People fill out a form to request help (https://astoriamutualaid.com/help) which feeds into Airtable
  • The bot (a node.js container) watches the Airtable sheet for new entries (every 15 seconds)
  • When a new entry is found, the request address is cross-referenced against the volunteer list to find the 10 closest volunteers who can fulfill the need, and posts them to a private dispatch channel on Slack (where we have trained dispatch volunteers coordinating with the field volunteers).

Software requirements

  • Make
  • Docker & Docker Compose

Integration requirements

Get the integration points setup:

And grab the API keys from each (and channel ID for Slack), and put them into the following enviornment variables:

  • AIRTABLE_API_KEY
  • AIRTABLE_BASE_ID - go to the Airtable API page, click your Volunteer Dispatch base, and the ID is there
  • AIRTABLE_REQUESTS_VIEW_URL - go to the Grid View of the Requests table in your Volunteer Dispatch base, and copy the URL (e.g. https://airtable.com/tblMSgCqcFR404rTo/viwgqR1sKrOdmB0dn)
  • AIRTABLE_VOLUNTEERS_VIEW_URL - go to the Grid View of the Volunteers table in your Volunteer Dispatch base, and copy the URL (e.g. https://airtable.com/tbl9xI8U5heH4EoGX/viwp51zSgXEicB3wB)
  • MAPQUEST_KEY
  • SLACK_XOXB - Slack bot token. To setup: create an app, add the OAuth chat:write bot scope, install the app to a channel, and grab the bot token
  • SLACK_CHANNEL_ID - Slack channel ID (e.g. C0107MVRF08)

How to run

  • Clone this repo and navigate to the project root in your terminal.
  • Set the environment variables documented above.
  • Run make develop and the bot will start running, processing records every 15 seconds.

Setting up data backend

We store our data on Airtable. You can see the data and make your own copy with a single click here: https://airtable.com/universe/expOp8DfPcmAPTSOz/volunteer-dispatch

How we have it deployed

We use a tool called Shipyard to deploy the bot. In short, it compiles the Docker Compose file to Kubernetes manifests and deploys to a managed cluster.

Shipyard will host the bot for free for any mutual aid or relief organizations. Send a message to [email protected] and they'll set you up with an account.

volunteer-dispatch's People

Contributors

ashryanbeats avatar bcosynot avatar belminf avatar covlllp avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.