You are here

function sms_twilio_validate_incoming in Twilio SMS Integration 7.2

Validate incoming messages using Twilio SDK security methods

@todo Need better way to test, as a service such as ngrok won't work without specifying in $url. Perhaps allow a configurable debugging setup which accepts an alternative URL.

See also

http://www.twilio.com/docs/security

1 call to sms_twilio_validate_incoming()
sms_twilio_incoming in ./sms_twilio.module
Informs the SMS Framework of the incoming SMS

File

./sms_twilio.module, line 218
Adds support for sending SMS messages using the Twilio gateway.

Code

function sms_twilio_validate_incoming() {
  global $base_url;
  $url = $base_url . $_SERVER['REQUEST_URI'];
  $gateway = sms_gateways('gateway', 'twilio');
  $config = $gateway['configuration'];
  if (!class_exists('RequestValidator')) {
    require_once DRUPAL_ROOT . '/' . $config['sms_twilio_path'] . '/autoload.php';
  }
  $signature = $_SERVER["HTTP_X_TWILIO_SIGNATURE"];
  $token = $config['sms_twilio_api_auth_token'];
  $validator = new RequestValidator($token);
  return $validator
    ->validate($signature, $url, $_REQUEST);
}