|
|
|
สอบถาม JSON กับ PHP หน่อยครับผมต้องการเขียนเพื่อส่ง sms |
|
|
|
|
|
|
|
ตัวอย่างสำหรับการส่งผ่านเว็บครับ เอาไปใส่ในเว็บเซริฟเวอร์แล้วก็แก้ไขในส่วน username และ password (ตอนสมัคร infobip เขาจะให้มา)
แก้ไขเสร็จ ก็ลองคีย์ข้อมความที่จะส่ง กด submit
Code (PHP)
<?php
//api.infibip.com API user and pass
$username = "xxxxxxxxxxxxxxxx";
$password = "xxxxxxxxxxxxxxxx";
//if (isset($_POST['toInput'])) {
if(isset($_POST['submit'])){
$message= rawurlencode($_POST['message']);
//$message="Hello Test";
$FromoPhone="081xxxxxx";
$ToPhone="41793026727";
//$ToPhone=$_POST['phone'];
// URL for sending request
$postUrl = "https://api.infobip.com//sms/1/text/single";
// creating an object for sending SMS
$destination = array("messageId" => $messageId, "to" => $ToPhone);
// $message = array("from" => $FromoPhone,
// "destinations" => array($destination),
// "text" => $message,
// "notifyUrl" => $notifyUrl,
// "notifyContentType" => $notifyContentType,
// "callbackData" => $callbackData);
$message = array("from" => $FromoPhone, "destinations" => array($destination),"text" => $message);
$postData = array("messages" => array($message));
// encoding object
$postDataJson = json_encode($postData)
$ch = curl_init();
$header = array("Content-Type:application/json", "Accept:application/json");
curl_setopt($ch, CURLOPT_URL, $postUrl);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_MAXREDIRS, 2);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postDataJson);
// response of the POST request
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$responseBody = json_decode($response);
curl_close($ch);
}
//if ($httpCode >= 200 && $httpCode < 300) {
// $logs = $responseBody->results;
// foreach ($logs as $log) {
// echo "<tr>";
// echo "<td>" . $log->messageId . "</td>";
// echo "<td>" . $log->to . "</td>";
// echo "<td>" . $log->from . "</td>";
// echo "<td>" . $log->text . "</td>";
// echo "<td>" . $log->status->groupName . "</td>";
// echo "<td>" . $log->status->description . "</td>";
// // format the date
// $formattedSentAt = date("M d, Y - H:i:s P T", strtotime($log->sentAt));
// echo "<td>" . $formattedSentAt . "</td>";
// echo "</tr>";
// }
//}
?>
<form action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>" method="POST">
Phone: <input type="text" name="phone"><br>
Message: <input type="text" name="message"><br>
<input type="submit" name="submit" value="sent">
</form>
หากต้องการส่งค่ามาจาก Netword Device ก็ commect ตรง If(){-----) ให้มันข้ามไป
และไม่ต้องการใช้ Form ก็ตัดออกให้เหลือเฉพาะ php ก็ได้
ดูรายละเอียดจากผู้ให้บริการได้
- https://www.infobip.com/en/blog/step-by-step-sms-api-php-tutorial-create-your-new-web-app
- https://github.com/infobip/infobip-api-php-tutorial
|
ประวัติการแก้ไข 2017-07-27 23:52:53 2017-07-27 23:56:51 2017-07-28 00:53:51
|
|
|
|
Date :
2017-07-27 18:46:14 |
By :
ccjpn |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|