Learn how to use Twilio to forward a series of phone calls to your state senators.
This project is built using the Express web framework, and runs on Node.
We recommend to install Node through nvm (when possible)
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash \ nvm install node --stable
And yarn through
npm install --global yarn
To run the app locally, follow these steps:
Clone this repository and
cd into it.
git clone https://github.com/TwilioDevEd/call-forwarding-node.git \ cd call-forwarding-node
Install the dependencies with:
Run the migrations:
yarn run migrate
Seed the database with data:
yarn run seed
This will load senators.json and US zip codes into your SQLite database. Please note: our senators dataset is likely outdated, and we've mapped senators to placeholder phone numbers that are set up with Twilio to read a message and hang up.
Expose your application to the internet using ngrok. In a separate terminal session, start ngrok with:
ngrok http 3000
Once you have started ngrok, update your TwiML application's voice URL setting to use your ngrok hostname. It will look something like this in your Twilio console:
Start your development server:
Once ngrok is running, open up your browser and go to your ngrok URL.