VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

如何傳送簡訊?

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
Ruey



註冊時間: 2003-03-12
文章: 1698
來自: tunglo

第 1 樓

發表發表於: 星期一 八月 04, 2003 10:01 am    文章主題: 如何傳送簡訊? 引言回覆

如何傳送簡訊?
國內電信業者: 台哥大/中華/遠傳/和信/泛亞/東信/PHS
大陸電信業者: 8613xxxxxxxxx

您必須先到台灣簡訊 www.twsms.com 網站註冊一組帳
號, 您可以藉由這組帳號與密碼從 API 的介面上發送
您的簡訊內容.



台灣簡訊 http://www.twsms.com/index.php?page=mod_api.htm

下載簡訊發送軟體 http://www.twsms.com/dl/SMSSender.exe

前言


什麼是 TwSMS API 介面 ?

台灣簡訊提供有足夠能力自行開發設計程式的網站或
中小企業用戶 API 的使用介面,您可以自己設計簡訊
發送網站, 再發送的時候將簡訊訊息藉由我們的 API
發送方式送過來就可以了, 好處是您可以自己擁有會
員資料庫, 也可以讓網站看起來更一致性.


如何才能使用 API 介面 ?

您必須先到台灣簡訊(www.twsms.com)網站註冊一組帳
號, 您可以藉由這組帳號與密碼從 API 的介面上發送
您的簡訊內容.


規格說明


簡訊發送介面

1.1 傳送網址與網址規格

沒有加密傳送
Server Name: http://api.twsms.com/SendSMS.php
Server Port: 80(HTTP)

採用 SSL 加密傳送
Server Name: https://api.twsms.com/SendSMS.php
Server Port: 443(HTTPS)
(您的 Client 必須採用 SSL 加密連結)

Server Protocol: TCP

Data SendType: POST or GET

1.2 傳送內容規格

. CID (發送帳號)
. CPW (發送密碼)
. P (設定POPUP方式)
. L (設定語言)
. N (手機號碼)
. M (訊息內容)


1.2.1 欄位說明

* 發送帳號與密碼 (CID and CPW)

你必須先到台灣簡訊(http://www.twsms.com)申請一組帳號與密碼, 然後以這組帳號密碼發送.

* 設定POPUP方式 (P)

P = P 設定訊息為 POPUP 方式(直接顯示,不存入手機)顯示
P = Null 設定訊息一般方式(先存入手機)顯示(預設值)

* 設定語言 (L)

L = E 設定訊息為英文, 訊息長度 160 個字元(設定為英文之後,不可以有中文字喔)
L = Null(空值) 設定訊息為中文, 訊息長度為 70 個中文字(英文也算一個字, 這是預設值)

* 手機號碼 (N)

手機門號的範圍限於台灣六大系統業者, 手機號碼發送請使用這樣的格式, 例如: 0920222111
如果是多通傳送, 中間請使用逗號 (,) 隔開, 例如: 0920222111,0920111222


* 訊息內容 (M)

如果你的語言 (L) 設定為 E 就只能輸入英文 160 個字元, 如果使用預設值則可輸入中英文
70 個字元, 注意: 請將內容以 urlencode 編碼後在進行傳送.


1.3 回傳碼

00: 發送完成, 後面會有一組傳回的 ID , 這組 ID 之後可以用來查詢發送狀態

01: 發送失敗

20: 帳號或密碼錯誤

22: L 設定語言錯誤

23: N 手機號碼錯誤

24: M 訊息內容錯誤 (字元超過或者空白)

27: P 設定 POPUP 錯誤

30: 帳戶沒有通數可以發送

31: 電話號碼多筆傳送大於 80 筆

32: 手機號碼格式錯誤

33: 帳戶的通數不足, 無法發送

99: 系統錯誤, 請聯絡台灣簡訊



預約簡訊介面

2.1 傳送網址與網址規格

沒有加密傳送
Server Name: http://api.twsms.com/SendTimeSMS.php
Server Port: 80(HTTP)

採用 SSL 加密傳送
Server Name: https://api.twsms.com/SendTimeSMS.php
Server Port: 443(HTTPS)
(您的 Client 必須採用 SSL 加密連結)

Server Protocol: TCP

Data SendType: POST or GET

2.2 傳送內容規格

. CID (發送帳號)
. CPW (發送密碼)
. T (預約時間)
. D (刪除/檢查預約簡訊)
. ID (刪除/檢查簡訊的 ID)
. P (設定POPUP方式)
. L (設定語言)
. N (手機號碼)
. M (訊息內容)


2.2.1 欄位說明

* 發送帳號與密碼 (CID and CPW)

你必須先到台灣簡訊(http://www.twsms.com)申請一組帳號與密碼, 然後以這組帳號密碼發送.

* 預約時間 (T)

T = 後面帶入預約的時間, 格式為 YYYYMMDDHHII (24 小時制, II單位以每 5 分鐘為一單位), 例如: 200211081530

* 刪除預約簡訊 (D)

D = Y 設定刪除預約簡訊(必須配合 ID 參數)
D = C 設定檢查預約簡訊(必須配合 ID 參數)
D = Null(空值) 預設為發送預約簡訊

* 刪除/檢查簡訊的 ID (ID)

ID = 後面帶入當初預約簡訊的回傳值, 注意, 此參數必須 D=Y or D=C 時才為有效值

* 設定POPUP方式 (P)

P = P 設定訊息為 POPUP 方式(直接顯示,不存入手機)顯示
P = Null 設定訊息一般方式(先存入手機)顯示(預設值)

* 設定語言 (L)

L = E 設定訊息為英文, 訊息長度 160 個字元(設定為英文之後,不可以有中文字喔)
L = Null(空值) 設定訊息為中文, 訊息長度為 70 個中文字(英文也算一個字, 這是預設值)

* 手機號碼 (N)

手機門號的範圍限於台灣六大系統業者, 手機號碼發送請使用這樣的格式, 例如: 0920222111
如果是多通傳送, 中間請使用逗號 (,) 隔開, 例如: 0920222111,0920111222


* 訊息內容 (M)

如果你的語言 (L) 設定為 E 就只能輸入英文 160 個字元, 如果使用預設值則可輸入中英文
70 個字元, 注意: 請將內容以 urlencode 編碼後在進行傳送.


2.3 回傳碼

00: 發送完成, 後面會有一組傳回的 ID , 這組 ID 之後可以用來查詢發送狀態

01: 發送失敗

20: 帳號或密碼錯誤

21: 沒有設定預約簡訊的時間

22: L 設定語言錯誤

23: N 手機號碼錯誤

24: M 訊息內容錯誤 (字元超過或者空白)

25: 找不到刪除紀錄

26: 預約的時間(T)長度不正確 (正常為 12 個位元)

27: 預約的時間格式錯誤

30: 帳戶沒有通數可以發送

31: 電話號碼多筆傳送大於 80 筆

32: 手機號碼格式錯誤

33: 帳戶的通數不足, 無法發送

34: P 設定 POPUP 錯誤

35: 預約簡訊尚未發送

99: 系統錯誤, 請聯絡台灣簡訊



檢查發送狀態介面

1.1 傳送網址與網址規格

沒有加密傳送
Server Name: http://api.twsms.com/CheckSMS.php
Server Port: 80(HTTP)

採用 SSL 加密傳送
Server Name: https://api.twsms.com/CheckSMS.php
Server Port: 443(HTTPS)
(您的 Client 必須採用 SSL 加密連結)

Server Protocol: TCP

Data SendType: POST or GET

1.2 傳送內容規格

. CID (發送帳號)
. CPW (發送密碼)
. ID (回傳碼)


1.2.1 欄位說明

* 發送帳號與密碼 (CID and CPW)

你必須先到台灣簡訊(http://www.twsms.com)申請一組帳號與密碼, 然後以這組帳號密碼發送.

* 回傳碼 (P)

ID = 填入發送(SendSMS)時所得到的 MSGID


1.3 回傳碼

成功回傳碼(回傳分第一階段及第二階段):

MSGID: 回傳碼
STATUS: 共五個參數, 參數之間以逗號隔開

第一參數=手機門號
第二參數=第一階段回傳碼
第三參數=接收時間
第四參數=第二階段傳送狀態,0=成功,-1=失敗
第五參數=第二階段傳送文字說明
例如: STATUS=0922161529,208217564,2003/05/22 13:48:50,0,DELIVRD

OK: 成功筆數
FAIL: 失敗筆數
WAIT: 正在等待第二階段回傳的筆數

錯誤回傳碼:

20: 帳號或密碼錯誤
21: 找不到回傳碼紀錄
99: 系統錯誤, 請聯絡台灣簡訊



範例


發送簡訊程式範例 For PHP

<?
$msg = "CID=test&CPW=test&N=0922111222&M=".urlencode("測試API簡訊");
$num = strlen($msg);

// 打開 API 閘道
$fp = fsockopen ("api.twsms.com", 80);
if ($fp) {
$MSGData = $MSGData."POST /SendSMS.php HTTP/1.1\r\n";
$MSGData = $MSGData."Host: api.twsms.com\r\n";
$MSGData = $MSGData."Content-Length: ".$num."\r\n";
$MSGData = $MSGData."Content-Type: application/x-www-form-urlencoded\r\n";
$MSGData = $MSGData."Connection: Close\r\n\r\n";
$MSGData = $MSGData.$msg."\r\n";
fputs ($fp, $MSGData);

// 取出回傳值
while (!feof($fp)) $Tmp[]=fgets ($fp,128);

// 關閉閘道
fclose ($fp);

// 顯示回傳值
$Respone = split(":",$Tmp[9]);
$Res["Number"] = $Respone[0]; // 傳回碼
$Res["OrderID"] = $Respone[1]; // 如果傳回碼是 00 成功, 才會有 OrderID 產生
echo $Res["Number"];
echo $Res["OrderID"];
}
?>


預約簡訊程式範例 For PHP

<?
$msg = "CID=test&CPW=test&T=200211081530&N=0922111222&M=".urlencode("測試API預約簡訊");
$num = strlen($msg);

// 打開 API 閘道
$fp = fsockopen ("api.twsms.com", 80);
if ($fp) {
$MSGData = $MSGData."POST /SendTimeSMS.php HTTP/1.1\r\n";
$MSGData = $MSGData."Host: api.twsms.com\r\n";
$MSGData = $MSGData."Content-Length: ".$num."\r\n";
$MSGData = $MSGData."Content-Type: application/x-www-form-urlencoded\r\n";
$MSGData = $MSGData."Connection: Close\r\n\r\n";
$MSGData = $MSGData.$msg."\r\n";
fputs ($fp, $MSGData);

// 取出回傳值
while (!feof($fp)) $Tmp[]=fgets ($fp,128);

// 關閉閘道
fclose ($fp);

// 顯示回傳值
$Respone = split(":",$Tmp[9]);
$Res["Number"] = $Respone[0]; // 傳回碼
$Res["OrderID"] = $Respone[1]; // 如果傳回碼是 00 成功, 才會有 OrderID 產生
echo $Res["Number"];
echo $Res["OrderID"];
}
?>
發送簡訊程式範例 For ASP

<%
Option Explicit

smsURL = "http://api.twsms.com/SendSMS.php?"
smsArgs = "CID=test&CPW=test&N=0922111222&M=" & Server.URLEncode("測試API簡訊");

set xmlHTTP = Server.CreateObject("Microsoft.XMLHTTP")
set XMLDocument = Server.CreateObject("Microsoft.XMLDOM")

xmlHTTP.open "GET",smsURL & smsArgs ,False
xmlHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlHTTP.send

XMLStr = xmlHTTP.ResponseText
set xmlHTTP = nothing
set XMLDocument = nothing

if instr(XMLStr,"00:") = 0 then
result="send error"
else
result="send ok"
end if
response.end
%>


預約簡訊程式範例 For ASP

<%
Option Explicit

smsURL = "http://api.twsms.com/SendSMS.php?"
smsArgs = "CID=test&CPW=test&T=200211081530&N=0922111222&M=" & Server.URLEncode("測試API預約簡訊");

set xmlHTTP = Server.CreateObject("Microsoft.XMLHTTP")
set XMLDocument = Server.CreateObject("Microsoft.XMLDOM")

xmlHTTP.open "GET",smsURL & smsArgs ,False
xmlHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlHTTP.send

XMLStr = xmlHTTP.ResponseText
set xmlHTTP = nothing
set XMLDocument = nothing

if instr(XMLStr,"00:") = 0 then
result="send error"
else
result="send ok"
end if
response.end
%>
發送簡訊程式範例 For JSP

<%@ page contentType="text/html; charset=Big5" %>
<%@ page import = "java.net.*" %>
<%@ page import = "java.io.*" %>

<%!
String strOnlineSend;
String thisLine;
URL u;
URLConnection uc;
%>

<%
strOnlineSend = "http://api.twsms.com/SendSMS.php?CID=test&CPW=test&N=0922111222&M="+URLEncoder.encode("測試API簡訊");
u = new URL(strOnlineSend);
try {
uc = u.openConnection();
BufferedReader theHTML = new BufferedReader(new InputStreamReader(uc.getInputStream()));
thisLine = theHTML.readLine();
if (thisLine.substring(0, 3).equalsIgnoreCase("00:") ) {
%>
MSGID: <%=thisLine.substring(3)%>
<%
}
else {
%>
錯誤代碼: <%=thisLine.substring(0, 2)%>
<%
}
}
catch(Exception e) {
%>
無法連結網站 <%=e.getMessage()%>
<%
}
%>


預約簡訊程式範例 For JSP

<%@ page contentType="text/html; charset=Big5" %>
<%@ page import = "java.net.*" %>
<%@ page import = "java.io.*" %>

<%!
String strOnlineSend;
String thisLine;
URL u;
URLConnection uc;
%>

<%
strOnlineSend = "http://api.twsms.com/SendTimeSMS.php?CID=test&CPW=test&&T=200211081530&N=0922111222&M="+URLEncoder.encode("測試API預約簡訊");
u = new URL(strOnlineSend);
try {
uc = u.openConnection();
BufferedReader theHTML = new BufferedReader(new InputStreamReader(uc.getInputStream()));
thisLine = theHTML.readLine();
if (thisLine.substring(0, 3).equalsIgnoreCase("00:") ) {
%>
MSGID: <%=thisLine.substring(3)%>
<%
}
else {
%>
錯誤代碼: <%=thisLine.substring(0, 2)%>
<%
}
}
catch(Exception e) {
%>
無法連結網站 <%=e.getMessage()%>
<%
}
%>

_________________
#############################
快樂媽咪系列幸福宅配,喝十全雞湯~原來幸福那麼簡單!!

學會VFP使用者社區的搜尋,Code才會更有趣~
#############################
回頂端
檢視會員個人資料 發送私人訊息
Ruey



註冊時間: 2003-03-12
文章: 1698
來自: tunglo

第 2 樓

發表發表於: 星期一 八月 04, 2003 6:28 pm    文章主題: 引言回覆

紅狐網站 elleryq 提共

我就記得以前好像有看過
剛剛去找了一下
這裡啦
http://hiair.hinet.net/air_notify.htm
http://web2air.hinet.net/Sns/Sns_help.htm
自行參考一下 vb 的那個範例
我想應該可以吧

這邊也有 solution
http://sms.abiconet.com.tw/company.asp 好像要錢錢
http://www.mtnsms.com/ 國外的,國內不知道收不收的到

_________________
#############################
快樂媽咪系列幸福宅配,喝十全雞湯~原來幸福那麼簡單!!

學會VFP使用者社區的搜尋,Code才會更有趣~
#############################
回頂端
檢視會員個人資料 發送私人訊息
elleryq



註冊時間: 2007-06-21
文章: 768


第 3 樓

發表發表於: 星期二 八月 05, 2003 9:23 am    文章主題: 引言回覆

我忘記我有 post 過這篇耶
真的是我嗎??
Razz
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
CPS0204



註冊時間: 2014-08-24
文章: 441


第 4 樓

發表發表於: 星期六 八月 29, 2015 2:11 pm    文章主題: 引言回覆

請問在vfp 9 中要如何使用此api?
謝謝
回頂端
檢視會員個人資料 發送私人訊息
ezpos



註冊時間: 2011-04-20
文章: 323


第 5 樓

發表發表於: 星期二 九月 01, 2015 8:17 pm    文章主題: 引言回覆

參考這個
http://vfp.sunyear.com.tw/viewtopic.php?t=6337&highlight=xmlHTTP

_________________
ezPos收銀機 簡單好用低成本 http://www.ezpos.info
全新美觀的POS收銀機.POS軟硬體耗材.
軟體客制化.網站規劃....能賺錢的都可以找我

http://www.twelife.com 台灣生活網
回頂端
檢視會員個人資料 發送私人訊息 參觀發表人的個人網站
aforangel



註冊時間: 2010-05-24
文章: 117


第 6 樓

發表發表於: 星期二 九月 08, 2015 11:48 am    文章主題: 引言回覆

只想知怎發WHATAPPS
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作