帳號
密碼
.................(忘記密碼?



 

  .NET Framework 簡訊API 2011-05-26  

文章出處
MVP 2010 

(Visual C# 2010)

Nobel12 (軋延油)

http://www.dotblogs.com.tw/nobel12/archive/2011/05/25/26117.aspx

前言

最近在玩 Windows Form 來傳送簡訊,看了很多家,其中目前以價格上來說,簡訊王 ( www.kotsms.com.tw ) 單一封簡訊價格最便宜,不到一塊錢的價格,另外,對於國外簡訊也能發送,比起其他家的簡訊有很大的利基點。當然,在傳送的效率上也挺快的,於是,小弟我就去研究了該公司的 API。 當然,直接引用 API 使用時,要使用到 HttpWebRequest / HttpWebResponse 類別進行處理,另外,還要注意到其 Encode 編碼的處理,索性在諸多因緣巧合結合下,就來寫個 DLL 檔,一來省下那些麻煩事,二來也讓愛用簡訊王發簡訊的朋友,可以拿此 DLL 檔去開發自己想要的 Windows Form 程式囉!  如此一來,可以說是簡單又方便。

 

 

自製 DLL檔案之參數使用說明

在本 Dll 檔案,我把他命名為 KOT_SMSAPI 的類別名稱 ,而在此名稱中有下列屬性:

 

※ 屬性 一覽及說明

- username使用者帳號  [*必要欄位]  / string 型別

- password使用者密碼  [*必要欄位]  / string 型別

- dstaddr欲傳送之門號  [*必要欄位]  / string 型別

- smbody簡訊內容  [*必要欄位]  / string 型別

- dlvtime傳送時間  / string 型別

- vldtime有效時間  / string 型別

- response回報網址  / string 型別

- SMSEncode編碼格式  /  EncodingbyApp (enum)

※ 上述屬性其相對應可參考  簡訊王線上 API  的說明。

 

 

※ 方法 一覽及說明

- SendSMSNow() :   [*必要方法]

  >> 傳送簡訊主要方法  /  無參數。

 

- getSMSResult( string IdResult ) :  [ 必要方法 ]

  >> 把經 SendSMSNow() 方法取得回來後之結果進行解析  /  參數 IdResult 為 SendSMSNow() 回傳之字串內容 (即 Kmsgid 值)

 

- GetTimeFormate( int year, int month, int day, int hour, int min, int sec ) :  [ 必要方法 ]

  >> 此方法可以代為處理日期格式,只需分別代入各參數值,其參數皆為 int (整數) 型態。 /  參數:年、月、日、時、分、秒

 

 

 

 

範例程式說明

 

Step 1.  建立一個新的專案,選好的語言後(本範例使用 Visual C# ),並選擇 Windows Form 應用程式,然後自行設定名稱 (本例為: WA_KOTAPISample )

image

 

 

 

Step 2. 建立如下的 UI 介面 ( 細節可下載本範例檔案參考)

image

 

 

 

Step 3. 加入參考 ( 把 Dll 檔案加入 ),如畫面出現 KOTAPI  即表加入成功!

image

 

< 如下選取 KOTAPI.dll 檔案,再按下 確定 即可 >

image

 

 

 

Step 4. 加入 using 參照 ( 如下黃線處 )

image

 

 

 

Step 5. Form Load 事件中加上 rbImmediately. Checked = true; 代表 即時發送 項目被選取

image

 

< 如下圖,可分為 即時發送 與 預約發送 >

---

 

 

 

Step 6. 處理 即時發送 選項之 Checked 狀態改變時的程式碼:

image

 

 

 

Step 7. 處理 黃色區段輸入狀態 之圖示 (如下圖)  的程式碼:

image

image

 

 

 

Step 8. 此為按下 發送按鈕 時之圖示 (如下圖) 及 程式碼:

---

 

image

image

 1. 上述相關 API 內容對照可參閱 簡訊王 線上 API 之說明 ( http://www.kotsms.com.tw/index.php?selectpage=pagenews&kind=4&viewnum=238 )

2. 此自製 API 之 Dll 檔適用於 .NET Framework 開發平台,也就是說只要在 .NET Framework 基礎下開發者即適用!

3. 預約發送機制是直接送至電信業者,不再經過簡訊王的平台,故無法再行修改,此點在運用預約發送簡訊上要特別注意!

4. 所以透過簡訊王的 API 機制發送的簡訊幾乎不再經由簡訊王的平台而是直接送至電信業者,故像類似 簡訊王網站中特有之 "黑名單、預約發送...等功能" 皆無法運用,在使用上請特別注意!

 

 

MVP 2010
(MVP  C#- 2010-)

※ 最後更新日期: 2011.05.27

1.   因為有網友提到在 Big5 預設編碼模式 下,關於Escape character (脫逸字元) 的問題,在新的版本 ( DLL 檔) 中 額外增加了驗證及處理機制! 讓您在使用上一樣是只要 using 這個 DLL 就好,連驗證及處理都不用喲! 因為我都在 DLL 檔案中幫你處理掉了! 所以,如果你以前有下載舊版的,請記得再重新下載本次新版來使用喲!

     
 
簡訊王數位媒體有限公司 統一編號:28321094 地址:台北市內湖區新明路298巷10號8樓 電話:02-2792-3939 傳真:02-2792-6262
Copyright © by SMS King Digital Media Co., Ltd.  Designed by SMS King