How can I respond to incoming Twilio calls and SMS messages using node.js?
When Twilio receives a call to your phone number, it will send an HTTP request to a URL you configure in the admin console:
What Twilio expects in return from this HTTP request is a set of XML instructions called TwiML that will tell Twilio what to do in response to the call. For example, let's say that you wanted to respond to a phone call by saying "thank you" and then playing a music file. If you wanted to do this in node, you might consider using this node library and the express framework to send a TwiML response:
var twilio = require('twilio'), express = require('express');// Create express app with middleware to parse POST bodyvar app = express();app.use(express.urlencoded());// Create a route to respond to a callapp.post('/respondToVoiceCall', function(req, res) { //Validate that this request really came from Twilio... if (twilio.validateExpressRequest(req, 'YOUR_AUTH_TOKEN')) { var twiml = new twilio.TwimlResponse(); twiml.say('Hi! Thanks for checking out my app!') .play('http://myserver.com/mysong.mp3'); res.type('text/xml'); res.send(twiml.toString()); } else { res.send('you are not twilio. Buzz off.'); }});app.listen(process.env.PORT || 3000);
Good luck - hope this is what you were looking for.