Voice SMS

Voice SMS

Prerequisites

  • Voice SMS 서비스를 사용하기 위해서는 ToBeText 가입이 필요합니다.
  • ToBeText 가입 시 API 의 사용이 가능하도록 Cid 및 token 을 발급하여 드립니다.
  • 회원 가입 시 제공되는  소량의 Credit 으로 Voice SMS 서비스를 테스트 할 수 있습니다.
  • Voice SMS  웹 응용프로그램을 사용 할 수 있는 웹 호스트가 필요합니다.

Post Method

  • ToBeText 의 연동 API 는 POST 방식을 사용하여 메시지를 전달 합니다.

Base URL

  • ToBeText API Base URL
    • http://api-dev.tbnws.com/voice (no SSL)
    • http://api-dev.tbnws.com:18443/voice (SSL)
  • ToBeText API Backup URL
    • http://api2-dev.tbnws.com/voice (no SSL)
    • Backup URL 은 평시에는 전송 불가하며, 비상/장애 발생 및 테스트 등의 필요 시 활성화 가동 될 수 있음.
    • Backup URL 의 경우 SSL 인증 제공되지 않음.

Required Parameters

Name Description Remarks
Ckey 고객의 메시지 ID (고객사 메시지 ID 고유번호), 결과값 전송시 해당 메시지의 식별 값으로 전달 되는 값 (CKey, MsgId) 고객사 전달 값
RecvNum 수신자 번호 고객사 전달 값
SendNum 송신자 번호 / 해외 경우 지정된 번호로 자동 변경, 국내 경우 전달된 번호로 전송 고객사 전달 값
Lan 음성 언어 선택을 위한 언어 코드 (Language Codes 참조) 고객사 전달 값
PCode Chat On 인증코드 (4~6자리) 고객사 전달 값
Cid 고객사 고유 번호 (ToBe Networks 제공값) ToBe 제공 값
token 고객사 인증을 위한 토큰값 (ToBe Networks 제공값) ToBe 제공 값

Optional Parameters

Name Description Remarks
Appid 고객사 그룹 ID (다중 유저 사용시) 고객사 전달 값
callback 결과 수신을 위한 URL 고객사 전달 값

Language Codes

Language Code Language Code
Arab ar Japanese jp
Bengali bn Korean ko
Burmese(Myanmar) my Mongolian mn
Cambodian kn Nepali ne
Chinese zh Norwegian no
ChineseCantonese(HongKong) hk Perian pr
Czech cs Polish pl
Danish da Portuguese pt
Dutch nl Romanian ro
English en Russian ru
Filipino fl Spanish es
French fr Srilanka lk
German de Swedish sv
Greek el Thai th
Hebrew iw Turkish tr
Hindi hi Urdu ur
Indonesian in Uzbek uz
Italian it Vietnamese vi

Voice SMS Sample Codes

Java
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

import javax.net.ssl.HttpsURLConnection;

public class ToBeText {

	public static void main(String[] args) throws Exception {

		ToBeText tobe = new ToBeText();
		tobe.sendACS();
	}

	private void sendACS() throws Exception {

		String USER_AGENT = "Mozilla/5.0";
		String url = http://api-dev.tbnws.com/voice";
		URL obj = new URL(url);
		HttpURLConnection conn = (HttpURLConnection) obj.openConnection();
		// HttpsURLConnection conn = (HttpsURLConnection) obj.openConnection();// SSL connection
		conn.setRequestMethod("POST");
		conn.setRequestProperty("User-Agent", USER_AGENT);
		conn.setRequestProperty("Accept-Language", "en-US,en;q=0.5");

		StringBuffer urlParameters = new StringBuffer();
		urlParameters.append("Ckey=메시지 ID");
		urlParameters.append("&RecvNum=수신전화번호력");
		urlParameters.append("&SendNum=발신전화번호");
		urlParameters.append("&Lan=음성변환 언어코드 ex)en");
		urlParameters.append("&PCode=인증코드 4~6자리 ");
		urlParameters.append("&Cid=ToBeText에서 발급받은 고객님의 Cid");
		urlParameters.append("&token=ToBeText에서 발급받은 고객님의 token");
		urlParameters.append("&callback= 상태 값 Callback URL");

		System.out.println("Request to URL : " + url);
		System.out.println("\n\nParameters : " + urlParameters);

		// Send post request
		conn.setDoOutput(true);
		DataOutputStream ostream = new DataOutputStream(conn.getOutputStream());
		ostream.writeBytes(urlParameters.toString());
		ostream.flush();
		ostream.close();

		int responseCode = conn.getResponseCode();
		System.out.println("\n\nResponse Code : " + responseCode);

		BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
		String inputLine;
		StringBuffer response = new StringBuffer();
		while ((inputLine = in.readLine()) != null) {
			response.append(inputLine);
		}

		in.close();

		System.out.println("\n\nResponse : " + response.toString());
	}
}
Curl
curl -X POST http://api-dev.tbnws.com/voice  
-d 'Ckey=메시지ID' 
-d 'RecvNum=국가번호 수신전화번호 입력' 
-d 'SendNum=발신전화번호 입력'  
-d 'Lan=음성변환 언어코드 ex)en' 
-d 'PCode=인증코드 4~6자리' 
-d 'Cid=ToBeText 발급 받은 Cid' 
-d 'token=ToBeText 발급 받은 token'
-d 'callback=전송결과 상태 Callback URL'
php
<?php
	$url = 'http://api-dev.tbnws.com/voice'; 

	$post_data["Ckey"] = "메시지ID";
	$post_data["RecvNum"] = "수신전화번호";
	$post_data["SendNum"] = "발신전화번호";
	$post_data["Lan"] = "음성변환 언어코드";
	$post_data["PCode"] = "인증코드 4~6자리";
	$post_data["Cid"] = "ToBeText에서 발급 받은 고객님의 Cid";
	$post_data["token"] = "ToBeText에서 발급 받은 고객님의 token";
	$post_data["callback"] = "전송결과 상태 Callback URL";

	$curlsession = curl_init ();
	curl_setopt ($curlsession, CURLOPT_URL, $url);
	curl_setopt ($curlsession, CURLOPT_POST, 1);
	curl_setopt ($curlsession, CURLOPT_POSTFIELDS, $post_data);
	curl_setopt ($curlsession, CURLOPT_RETURNTRANSFER, 1);
	$res = curl_exec ($curlsession);

	var_dump($res); //결과값 출력
	curl_close($curlsession);
?>

Error Codes

Error Code Description Remarks
200 Success 전송성공
410 Authentication Failed, 인증 실패, Cid 및 token 값 확인 전송실패
2001 CKey 값 오류 전송실패
2002 CCode 값 오류 전송실패
2004 SendNum 값 오류 전송실패
2005 Body field 값 오류 전송실패
2006 Cid (고객사 ID) 값 오류 전송실패
2007 Token 값 오류 전송실패

Response Sample

<ToBeTextResult>
<Status>Success</Status>
<MsgId>41aa33709703dea382c10a057823ffdc</MsgId>
<SendNum>821012341234</SendNum>
<RecvNum>821012341234</RecvNum>
<ErrorCode>200</ErrorCode>
<ErrorMsg>Message successfully sent</ErrorMsg>
</ToBeTextResult>

Status Callback

  • SMS 전송 결과를 주기적으로 전송. (전송후 약 3분 ~ 30분 이내)
  • 메시지 전송 시 입력한 Callback URL 로 회신.

Status Callback URL

  • ACS 전송 시 callback Parameter로 전달되는 URL.
    예) http://yourdomain.com/recv/
    ※ http:// 를 포함한 Full Address

Parameters

Name Description Remarks
CKey 고객의 메시지 ID (고객사 메시지 ID 고유번호), 결과값 전송시 해당 메시지의 식별 값으로 전달 되는 값 (CKey, MsgId)
Status 전송 결과 값
MsgId ToBe Networks 고유 메시지 ID 값  Char 34 bytes
SendNum 송신자 전화 번호 / 해외 경우 지정된 번호로 자동 변경, 국내 경우 전달된 번호로 전송
RecvNum 수신자 전화 번호
ErrorCode 고객사 전달용 에러 코드
ErrorMsg 고객사 전달용 에러 메시지

Error Codes

Error Code Description Remarks
200 Success 전송성공
400 Failed 전송실패
411 내부 오류 전송실패
412 기타 전송실패
Contact Us

We're not around right now. But you can send us an email and we'll get back to you, asap.

Not readable? Change text. captcha txt