Header Ads Widget

Hướng dẫn tích hợp API tổng đài SMS

Hỗ trợ tích hợp SMS API theo nhiều ngôn ngữ lập trình khác nhau (PHP, .NET, Java, Python, NodeJS, Ruby). Bộ thư viện gồm nhiều hàm API chuyên dụng và có bộ code demo giúp coder tiết kiệm được rất nhiều thời gian và công sức.

huong dan lap trinh tich hop api dau so sms

Yêu cầu kết nối thông qua API: khách hàng phải có đội ngũ IT và đã xây dựng hệ thống xử lý các giao dịch. Sau đó liên hệ để được cung cấp tài liệu kết nối với tổng đài SMS để gửi tin nhắn xuống cho ngươi dùng.

Các yêu cầu lập trình thường có

  • Lập trình gửi tin nhắn ngay lập tức.
  • Gửi tin nhắn theo thời gian cho trước, hẹn giờ gửi tin.
  • Gửi tin nhắn theo dữ liệu trích xuất từ database.
  • Nhận tin nhắn 2 chiều và trả lời tự động.
  • Và nhiều những yêu cầu khác.

Cơ chế hoạt động hệ thống API SMS

Kết nối thông qua Webservice: POST/Get,SOAP, Restful.

Xác thực: các request của bạn sẽ được hệ thống xác thực thông qua API Keyword và SecretKey, 2 key này sẽ được cấp sau khi bạn đăng ký tài khoản.

Tài liệu API SMS

Tiến hành sử dụng các hàm API bằng cách gọi thực thi các URL, chi tiết thông tin các hàm tham khảo.

Cách dễ nhất để viết webservices là anh dùng dạng GET như sau:

http://doitac.com/vtddsms/?id=0&phone=84938877236&shortcode=xxxx&gateway=vtlxxxx&sms=454e4249454e20313233343536&checksum=c404225e8cee5468aa8c257b4ce7268f

Trong đó:

  • Id: là message_id là số định danh cho 1 tin nhắn lên của khách hàng (id=0 là tin nhắn test từ hệ thống)
  • Phone: là số điện thoại khách hàng
  • Shortcode: là đầu số mà khách hàng nhắn lên
  • Gateway: là định danh cho nhà mạng Sms: là nội dung tin nhắn của khách hàng nhắn lên. Tin nhắn phải được mã hóa hexa để loại trừ các trường hợp trong tin nhắn có ký tự đặc biệt không gửi qua webservices được.
  • Checksum: là trường để tăng tính bảo mật cho web services. Hai bên thỏa thuận với nhau 1 key ví dụ “xxxxxxxxxx”. Công thức tính checksum là:
    • checksum = MD5("xxxxxxxxxx "+Id+Phone+Shortcode+sms).
    • Khi truyền tham số qua, cần kiểm tra lại.
    • checksum có hợp lệ không trước khi xử lý.

Demo code java tham khảo:

<%@page import="Utils.process"%><%
    String id = request.getParameter("id");
    String phone = request.getParameter("phone");
    String shortcode = request.getParameter("shortcode");
    String sms = request.getParameter("sms");
    String gateway = request.getParameter("gateway");
    String checksum = request.getParameter("checksum");
    String server_checksum = process.md5("User key vtdd cap" + id + phone + shortcode + sms );
    // Luu DB
    if(checksum.equals(server_checksum)){
        // Kiem tra ID ton tai trong he thong chua
        String unhexsms = process.convertHexToString(sms);
        // Xu ly sms
        
        // Xuat noi dung tra cho khach hang
        out.println("Noi dung tra cho khach hang");
    }
    else{
        // Co loi xay ra
        out.println("Noi dung tra cho khach hang");
    }
    // Update Db
%>

Demo Code PHP tham khảo:

<?php 
$id = $_GET['id'];
$phone = $_GET['phone'];
$shortcode = $_GET['shortcode'];
$gateway = $_GET['gateway'];
$sms = $_GET['sms'];
$checksum = $_GET['checksum'];
// Luu DB
if(isset($id) && isset($phone) && isset($shortcode) && isset($gateway) && isset($sms) && isset($checksum)){
//echo hextobin($sms).'<br/>';
$userkey = '';// lien he de cung cap
$tong = $userkey . $id . $phone . $shortcode . $sms;
$server_checksum = md5($tong);
//echo $server_checksum.'<br/>';
//echo $checksum;
// Kiem tra id co trung khong
echo 'Noi dung can tra cho khach hang';
}else{
echo 'LOI';
}
// Hex to String
function hextobin($hexstr) 
$n = strlen($hexstr); 
$sbin="";   
$i=0; 
while($i<$n) 
{       
$a =substr($hexstr,$i,2);           
$c = pack("H*",$a); 
if ($i==0){$sbin=$c;} 
else {$sbin.=$c;} 
$i+=2; 
return $sbin; 
}
?>

SMS API ứng dụng

Cảnh báo, xác thực chính hãng, bảo hành điện tử, thông báo, otp: SMS API đươc tích hợp vào hệ thống tài chính như ngân hàng, chứng khoán , bảo hiểm,..

Ứng dụng quản lý doanh nghiệp: CRM, ERP, HRM,…

Tích hợp vào các hệ thống cảnh báo server, thiết bị, website,…


Xem bài viết Xác thực OTP bằng tổng đài SMS Gateway


Đăng nhận xét

0 Nhận xét