reasonableframework/helper/twilio.api.php

77 lines
2.3 KiB
PHP
Raw Normal View History

2019-04-08 06:57:38 +00:00
<?php
/**
* @file twilio.api.php
* @date 2019-04-08
* @author Go Namhyeon <gnh1201@gmail.com>
* @brief Twilio REST API interface module
* @documentation https://www.twilio.com/docs/sms/send-messages
*/
2019-04-15 06:18:52 +00:00
if(!check_function_exists("twilio_get_config")) {
2019-05-20 08:19:05 +00:00
function twilio_get_config() {
$config = get_config();
2019-04-16 07:16:11 +00:00
2019-05-20 08:19:05 +00:00
return array(
"sid" => get_value_in_array("twilio_sid", $config, ""),
"token" => get_value_in_array("twilio_token", $config, ""),
"from" => get_value_in_array("twilio_from", $config, ""),
);
}
2019-04-15 06:18:52 +00:00
}
2019-04-10 11:29:53 +00:00
if(!check_function_exists("twilio_send_message")) {
2019-05-20 08:19:05 +00:00
function twilio_send_message($message, $to) {
$response = false;
2019-04-10 11:28:40 +00:00
2019-05-20 08:19:05 +00:00
$cnf = twilio_get_config();
2019-04-15 07:05:25 +00:00
2019-05-20 08:19:05 +00:00
if(loadHelper("webpagetool")) {
$request_url = sprintf("https://api.twilio.com/2010-04-01/Accounts/%s/Messages.json", $sid);
$response = get_web_json($request_url, "post", array(
"headers" => array(
"Content-Type" => "application/x-www-form-urlencoded",
"Authentication" => array("Basic", $cnf['sid'], $cnf['token']),
),
"data" => array(
"Body" => $message,
"From" => $cnf['from'],
"To" => $to,
)
));
}
2019-04-16 07:16:11 +00:00
2019-05-20 08:19:05 +00:00
return $response;
}
2019-04-10 11:28:40 +00:00
}
2019-04-10 11:29:53 +00:00
if(!check_function_exists("twilio_send_voice")) {
2019-05-20 08:19:05 +00:00
function twilio_send_voice($message="", $to) {
$response = false;
2019-04-15 07:05:25 +00:00
2019-05-20 08:19:05 +00:00
$cnf = twilio_get_config();
$url = "http://demo.twilio.com/docs/voice.xml";
2019-04-16 07:16:11 +00:00
2019-05-20 08:19:05 +00:00
var_dump($cnf);
2019-04-15 07:05:25 +00:00
2019-04-10 11:28:40 +00:00
2019-05-20 08:19:05 +00:00
if(loadHelper("webpagetool")) {
$request_url = sprintf("https://api.twilio.com/2010-04-01/Accounts/%s/Calls.json", $cnf['sid']);
$response = get_web_page($request_url, "post.cmd", array(
"headers" => array(
"Content-Type" => "application/x-www-form-urlencoded",
"Authentication" => array("Basic", $cnf['sid'], $cnf['token']),
),
"data" => array(
"Url" => $url,
"From" => $cnf['from'],
"To" => $to,
),
));
var_dump($response);
2019-04-16 07:16:11 +00:00
2019-05-20 08:19:05 +00:00
}
2019-04-16 07:16:11 +00:00
2019-05-20 08:19:05 +00:00
return $response;
}
2019-04-10 11:28:40 +00:00
}