Learn how to automate your workflow using Twilio's REST API and Twilio SMS. This example app is a vacation rental site, where the host can confirm a reservation via SMS.
-
You will need to configure Twilio to send requests to your application when SMS are received.
You will need to provision at least one Twilio number with sms capabilities so the application's users can make property reservations. You can buy a number right here. Once you have a number you need to configure your number to work with your application. Open the number management page and open a number's configuration by clicking on it.
Remember that the number where you change the SMS webhook must be the same one you set on the
TwilioPhoneNumber
setting.To start using
ngrok
in our project you'll have to execute to the following line in the terminal.ngrok http 3000
Keep in mind that our endpoint is:
http://<your-ngrok-subdomain>.ngrok.io/reservations/handle
-
This sample application stores data in a MongoDB database using Mongoose. You can download and run MongoDB yourself (OS X, Linux, Windows).
On OS X, maybe the easiest way to get MongoDB running locally is to install via Homebrew.
brew install mongodb
You should then be able to run a local server with:
mongod
-
Clone this repository and
cd
into it.git clone git@github.com:TwilioDevEd/airtng-node.git cd airtng-node
-
Install the dependencies.
npm install
-
Copy the sample configuration
.env.example
to.env
, and then edit.env
to match your configuration.
cp .env.example .env
You can find your TWILIO_ACCOUNT_SID
and TWILIO_AUTH_TOKEN
in your
Twilio Account Settings.
You will also need a TWILIO_PHONE_NUMBER
, which you may find here.
Once you have edited the .env
file, if you are using a UNIX operating system, just use the source command to load the variables into your environment:
source .env
- Run the application.
npm start
- Check it out at http://localhost:3000
That's it!
To let our Twilio Phone number use the callback endpoint we exposed, our development server will need to be publicly accessible. We recommend using ngrok to solve this problem.
You can run the tests locally by typing
npm test
- No warranty expressed or implied. Software is as is. Diggity.
- MIT License
- Lovingly crafted by Twilio Developer Education.