TCASTSMS menyediakan routing SMS untuk SMS One Time Password, SMS Verifikasi, SMS Notifikasi untuk Two Step Verification keamanan Aplikasi Web dan Mobile Apps Anda dimana pada dokumen ini khusus untuk SMS identitas yang muncul dipenerima berupa Long Number Random.

SMS ini yang muncul di penerima berupa nomor HP GSM Random Indonesia (628xxxx), Anda dapat menggunakan 2 (dua) tipe koneksi yaitu HTTP API dan SMPP Client.  Sistem ini juga menyediakan Dashboard untuk melihat status laporan pengiriman SMS dan mendownload Laporan Pengiriman per bulannya dalam format Excel langsung.

Dibawah ini adalah Contoh Script, Dokumentasi HTTP API, dan Screenshoot Dashboard

Sample Script

<?php

function Send_SMS( $to, $text ) {
#example $to=”628xxxx,628xxxx”;

$to = str_replace(‘ ‘,”,$to);
$from = “”; //Sender ID or SMS Masking Name, if leave blank, it will use default from telco
$username = “xxxxxx”; //your username
$password = “xxxxxx”; //your password
$getUrl = “http://<ip-address>:<port>/sendsms?”;
$ch = curl_init();
$apiUrl = $getUrl.’account=’.$username.’&password=’.$password.’&numbers=’.$to.’&content=’.rawurlencode($text);

curl_setopt( $ch, CURLOPT_URL, $apiUrl);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array(
‘Content-Type: application/json’,
‘Accept:application/json’
)
);

$response = curl_exec( $ch );
$httpCode = curl_getinfo( $ch, CURLINFO_HTTP_CODE );
$responseBody = json_decode( $response, true );

if ($response) {
print_r($response);
}
curl_close($ch);
}

$to = “628xxxxx,628xxxx”;//masukkan nomor tujuan
$message = “test sms”;//masukkan isi pesan
Send_SMS( $to, $message );

?>

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;

public class SmsRestApiClient {
public static void main(String[] args) {
String tujuan = “628xxxx 628xxxx”;
String pesan = “Test sms java client”;
SmsRestApiClient smsClientRestApi = new SmsRestApiClient();
smsClientRestApi.sendSms(tujuan, pesan);
}

private void sendSms(String to, String content) {
String account = “xxxxx”;
String password = “xxxxx”;
try {

URL url = new URL(“http://<ip-address>:<port>/sendsms?”
+ “account=” + account
+ “&password=” + password
+ “&numbers=” + to.replaceAll(” “,””)
+ “&content=” + URLEncoder.encode(content, “UTF-8”).replaceAll(“\\+”, “%20”));
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod(“GET”);
conn.setRequestProperty(“Accept”, “application/json”);
if (conn.getResponseCode() != 200) {
throw new RuntimeException(“Failed : HTTP Error code : ”
+ conn.getResponseCode());
}
InputStreamReader in = new InputStreamReader(conn.getInputStream());
BufferedReader br = new BufferedReader(in);
String output;
while ((output = br.readLine()) != null) {
System.out.println(output);
}
conn.disconnect();

} catch (Exception e) {
System.out.println(“Exception in SmsRestApiClient:- ” + e);
}
}
}

<!doctype html>
<html lang=”en”>
<head>
<metacharset=”utf-8″>
<title>Tcast SMS</title>
<scriptsrc=”https://code.jquery.com/jquery-1.10.2.js”></script>
</head>
<body>
<div id=”response”></div>
<script>
(function() {
var username =”xxxxxx”;
var password =”xxxxxx”;
var destination =”628xxxxx”;
var content =”test send sms update”;
var baseUri =”http://<ip-address>:<port>/sendsms?”;
var tcastUri = baseUri +
“account=”+ username
+”&password=”+ password
+”&numbers=”+ destination
+”&content=”+encodeURIComponent(content);
$.getJSON( tcastUri)
.done(function( data ) {
document.getElementById(“response”).value= data;
});
})();
</script>
</body>
</html>
//Rextester.Program.Main is the entry point for your code. Don’t change it.
//Compiler version 4.0.30319.17929 for Microsoft (R) .NET Framework 4.5
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
namespace Rextester
{
publicclassDataObject
{
publicstringName { get; set; }
}
publicclassProgram
{
privateconststringURL=”http://<ip-address>:<port>/sendsms”;
//private static string urlParameters = System.Web.HttpUtility.UrlEncode(“account=xxxxx&password=xxxxx&numbers=628xxxxx&content=Test-Content-SMS”);
publicstaticvoidMain(string[] args)
{
varaccount=”xxxxxx”;
varpassword=”xxxxxx”;
vardest=”628xxxxx”;
varcontentMsg=System.Web.HttpUtility.UrlPathEncode(“test Ferdinan .Net”);
varfinalUrlParam=”?account=”+account
+”&password=”+password
+”&numbers=”+dest
+”&content=”+contentMsg;
HttpClientclient=newHttpClient();
client.BaseAddress=newUri(URL);
// Add an Accept header for JSON format.
client.DefaultRequestHeaders.Accept.Add(
newMediaTypeWithQualityHeaderValue(“application/json”));
// Console.WriteLine(“urlParameters {0}”, finalUrlParam);
// List data response.
HttpResponseMessageresponse=client.GetAsync(finalUrlParam).Result; // Blocking call! Program will wait here until a response is received or a timeout occurs.
if (response.IsSuccessStatusCode)
{
stringres=””;
using (HttpContentcontent=response.Content)
{
// … Read the string.
Task<string> result=content.ReadAsStringAsync();
res=result.Result;
Console.WriteLine(“{0}”, res);
}
}
else
{
Console.WriteLine(“{0} ({1})”, (int)response.StatusCode, response.ReasonPhrase);
}
//Make any other calls using HttpClient here.
//Dispose once all HttpClient calls are complete. This is not necessary if the containing object will be disposed of; for example in this case the HttpClient instance will be disposed automatically when the application terminates so the following call is superfluous.
client.Dispose();
}
}
}

Dokumen HTTP API

1. Get balance (Cek Saldo)
http://<ip-address>:<port>/getbalance?account=***&password=***
Respon: {“status”:0, “balance”:”<balance>“, “gift”:”0.000000″}

2. Send SMS (Kirim SMS)
http://<ip-address>:<port>/sendsms?account=***&password=***&numbers=***&content=***
Respon: {“status”:0, “array”:[[<numbers>,<ids>]], “success”:1, “fail”:0}

3. Get Report SMS (Laporan SMS Terkirim)
http://<ip-address>:<port>/getreport?account=***&password=***&ids=1,2
Respon: {“status”:0, “array”:[[<ids>,<numbers>,<date>,0]], “success”:1, “fail”:0, “unsent”:0, “sending”:0, “nofound”:0}

4. Get Inbox SMS (SMS Masuk Khusus Sim Hosting Dedicated)
http://<ip-address>:<port>/getsms?account=***&password=***
Respon: {“status”:0, “cnt”:2, “array”:[[1,10010,20171001123015, “********************************”],
[2,1008611,20171001123015, “********************************”]]}

Detail PARAMETER HTTP API

1. Get Balance (Cek Saldo SMS)

http://<ip-address>:<port>/getbalance?account=***&password=***

Respon: 

{"status":0, "balance":"499740.000000", "gift":"0.000000"}

2. Send SMS (Kirim SMS)

http://<ip-address>:<port>/sendsms?account=***&password=***&numbers=***&content=***

Respon: 

{"status":0, "array":[[6281210100055,1620443]], "success":1, "fail":0}

Input parameter:

Output parameter:

3. Get Report SMS (Laporan Pengiriman SMS)

http://<ip-address>:<port>/getreport?account=***&password=***&ids=1,2

Respon: 

{"status":0, "array":[[1620442,6281210100055,20180619101517,0]], "success":1, "fail":0, "unsent":0, "sending":0, "nofound":0}

Input parameter:

Output parameter:

4. Get Inbox SMS (SMS Masuk)

http://<ip-address>:<port>/getsms?account=***&password=***

Respon:

{"status":0, "cnt":2, "array":[[1,10010,20171001123015, "********************************"], 
[2,1008611,20171001123015, "********************************"]]}