• 沒有找到結果。

簡訊特碼伺服器(

N/A
N/A
Protected

Academic year: 2022

Share "簡訊特碼伺服器("

Copied!
9
0
0

加載中.... (立即查看全文)

全文

(1)

簡訊特碼伺服器(SNS)應用程式說明文件

94/01/20

(2)

文件目錄

介紹

...3

SNS傳送格式

...3

發訊P

ROTOCOL

格式

...4

收訊P

ROTOCOL

格式及回傳結果說明

...5

EMOME

代碼轉換須知

...8

(3)

介紹

SNS 伺服器提供用戶使用 TCP/IP 方式與 GSM 手機做雙向訊息傳遞功能。

目前 SNS 的 IP 及 Port 分別為 IP:203.66.172.133 Port:8001

本文件提供用戶程式與SNS溝通之資料傳遞格式,假使用戶程式與emome認

證主機介接時,則需參考

emome代碼轉換須知

,以了解如何讓SNS能傳

訊息到相對emome代碼的手機。最後有關範例程式則不列在本文件,有需求 的用戶請到 http://203.66.172.129/sns/sns_help.htm 自行下載參考

SNS 傳送格式

Data structure and Definition

#define MAX_ID_LEN 8

#define MAX_PASSWD_LEN 8

#define MAX_MSISDN_LEN 12

#define MAX_MESSAGEID_LEN 8

#define MAX_MSG_LEN 159

#define ORDERTIME_LEN 12

#define SERV_CHECK 0 // used for sSendMsg.type

#define SERV_EDIT_PASSWD 1 // used for sSendMsg.type

#define SERV_SEND 2 // used for sSendMsg.type

#define SERV_QUERY 3 // used for sSendMsg.type

#define SERV_GET 4 // used for sSendMsg.type

#define SERV_LINK 5 // for compliant port 3481

#define SERV_SEND_WITH_UDHI 6

#define SERV_EXPRESS_SEND 7

#define SERV_SEND_MULTI_SM 8

#define SERV_SEND_WITH_SUBNO 10 // Subno send msg to Msisdn

#define SERV_SEND_WITH_RECV_SUBNO 11 // Msisdn send msg to Subno

#define SERV_SEND_WITH_ALL_SUBNO 12 // Subno send msg to Subno

#define SERV_QUERY_WITH_SUBNO 13

#define SERV_QUERY_WITH_RECV_SUBNO 14

#define SERV_QUERY_WITH_ALL_SUBNO 15

#define SEND_NOW 100 // used for sSendMsg.tran_type

#define SEND_ORDER 101 // used for sSendMsg.tran_type

#define SM_UDHI_ENABLE 0x01

(4)

#define SM_PCLID_ENABLE 0x04

發訊 Protocol 格式

struct sSendMsg {

unsigned char type;

unsigned char coding;

unsigned char length;

unsigned char tran_type;

char pchID[MAX_ID_LEN+1];

char pchPasswd[MAX_PASSWD_LEN+1];

char pchMsisdn[MAX_MSISDN_LEN+1];

char pchMessageID[MAX_MESSAGEID_LEN+1];

char pchMessage[MAX_MSG_LEN+1];

char pchSendTime[ORDERTIME_LEN+1];

};

Member Description Used in type Indicate request type Everywhere

pchID Checking ID type = SERV_CHECK

pchPasswd Checking password type = SERV_CHECK

SERV_EDIT_PASSWD

coding 1 is available type = SERV_SEND

length Short message length type = SERV_SEND

tran_type 立即/預約傳送 type = SERV_SEND

pchMsisdn Destination msisdn type = SERV_SEND SERV_QUERY

pchMessage Sending message Calling number Calling Wappie 代碼

type = SERV_SEND type = SERV_QUERY

type = SERV_QUERY_WITH_SUBNO

type = SERV_QUERY_WITH_ALL_SUBNO

pchSendTime

(yymmddhhmm00)

type = SERV_SEND && tran_type = SEND_ORDER

pchMessageID 1.Returned message id if sending successfully

2.付費方之號碼須洽詢長通公

司 有 無 該 使 用 權

(0937123456->37123456) 3. 付費方之 eomome 用戶代碼 (前面 9 碼,由左算起)

4. 以帳號起始之任意號碼須洽 詢長通公司有無該使用權(123 為帳號,則為 123???…)

type = SERV_QUERY type = SERV_SEND

type = SERV_SEND_WITH_SUBNO

type = SERV_SEND_WITH_ALL_SUBNO

擴 充 功 能 ( 使 用 pchID 欄位)

PchID[0] -> Expired hour PchID[1] -> Expired miniute

適用於重送簡訊的各種 type pchID[2]:bit 0 UDHI

(5)

PchID[2] -> Flag indication PchID[4] -> Pclid

p.s. 訊 息 重 送 的 期 限 為 ( 分 鐘)=pchID[0]*60+pchID[1]

bit 2:Pclid

For getting data from server, you should only fill type=SERV_GET 當傳送簡訊(非 Login 時),擴充 sSendMsg.pchID 為額外簡訊控制

sSendMsg.pchID[0]->Expired Hour sSendMsg.pchID[1]->Expired Min.

Expired Time 由 Expired Hour 及 Expired Min.組合,此值代表簡訊進 入簡訊中心最長的 Retry time.(不可超過系統 default 值【24 hours】)

若 Expired time 沒設,則用系統預設值 sSendMsg.pchID[2]為 functional flag

Bits 7 6 5 4 3 2 1 0 Meaning

1 Set UDHI【0x01】

1 Set PclId【0x04】

Set UDHI 主要是用在傳送圖鈴下載等應用上,也因此當欲傳 送圖鈴時,可以 enable 此 bit,而仍可以用 SERV_SEND,而 不須改用 SERV_SEND_WITH_UDHI

Set PclID 時,sSendMsg.pchID[4]表示新的 PclId

收訊 Protocol 格式及回傳結果說明

struct sRecvMsg

{

unsigned char code;

unsigned char coding;

unsigned char length;

char send_msisdn[MAX_MSISDN_LEN+1];

char recv_msisdn[MAX_MSISDN_LEN+1];

char buffer[MAX_MSG_LEN+1];

};

Member Description

code Return code

coding Coding scheme of short message

length Short message length

send_msisdn Sender msisdn

recv_msisdn Receiver msisdn

buffer Return description

(6)

帳號/密碼確認(type = SERV_CHECK)

Code Buffer

0 ID/Password check successful 1 Password error or no this account 2 Can not send from this IP

3 System error, try again 4 This account is forbidden

修改密碼(type = SERV_EDIT_PASSWD)

Code Buffer

0 Modify password successfully 1 Modify password error

2 Can not send from this IP 傳送訊息(type = SERV_SEND)

Code Buffer 0 Message id

1 Can not send character

2 Message sending failure(Reason) 3 Ordered time beyond 48 hours 4 Send binary to pager

5 Code transfer fail

10 Short message send successfully 31 Prepaid account has no more value 32 Prepaid system has no such account

33 Prepaid account expired, need value-added again 34 Protocol type error

35 System error(reason) 36 Prepaid system locked 37 Prepaid account is locked 查詢結果(type = SERV_QUERY)

Code Buffer

0 Successful:yyyymmddHHMMSS 1 Message is processing

2 System contains no data

3 Message can not send to GSM/Pager:

yyyymmddHHMMSS

4 System error

(7)

5 Message status unknown 6 Message is not complete 7 Message is submitted to SMSC 8 SIM card memory full

9 Destination number is unavailable 31 Message is submitting

32 Message send to SMSC fail: yyyymmddHHMMSS

yyyymmddHHMMSS 為訊息傳送成功或是失敗之時間

接收訊息(type = SERV_GET)

Code Buffer 0 Short message

1 No data

2 Get data error

3 Can not use Get(ps 指該帳號沒有 Get 之權限) Global error

Code Buffer

10 Server too busy

11 Connection number too many 12 Format error(display error part) 13 ID/Password has not been checked 14 Need fill calling number(when user can

change calling number to send message)

15 Calling number(subno) format

error(display error part)

16 System can not transform subno into msisdn

17 Subscriber number not found 18 You can’t send long short message

20 Server shutdown

21 System Error

(8)

emome 代碼轉換須知

發訊方為 emome 的 Subscriber number,受訊方為行動電話號碼 sendMsg.type = 10

sendMsg.pchMessageID = 發訊方之 Subscriber number(僅填前面 9 碼,

由左算起)

sendMsg.pchMsisdn =受訊方之行動電話號碼 發訊方為行動電話號碼,受訊方為行動電話號碼

sendMsg.type = 2

sendMsg.pchMessageID = 發訊方之行動電話號碼(後面 8 碼;

0937123456->37123456)

sendMsg.pchMsisdn = 受訊方之行動電話號碼

發訊方為 emome 的 Subscriber number,受訊方為 emome 的 Subscriber number

sendMsg.type = 12

sendMsg.pchMessageID = 發訊方之 Subscriber number (僅填前面 9 碼,

由左算起)

sendMsg.pchMsisdn = 受訊方之 Subscriber number (僅填前面 9 碼,由左 算起)

查詢發訊方為 emome 的 Subscriber number,受訊方為行動電話號碼 sendMsg.type = 13

sendMsg.pchMessageID = return Message id

sendMsg.pchMessage = 發訊方之 Subscriber number (僅填前面 9 碼,由 左算起)

sendMsg.pchMsisdn = 受訊方之行動電話號碼

查詢發訊方為行動電話號碼,受訊方為行動電話號碼 sendMsg.type = 3

sendMsg.pchMessageID = return Message id

sendMsg.pchMessage = 發訊方之行動電話號碼(10 碼) sendMsg.pchMsisdn = 受訊方之行動電話號碼

查詢發訊方為 emome 的 Subscriber number,受訊方為 emome 的 Subscriber number

(9)

sendMsg.type = 15

sendMsg.pchMessageID = return Message id

sendMsg.pchMessage = 發訊方之 Subscriber number (僅填前面 9 碼,由 左算起)

sendMsg.pchMsisdn = 受訊方之 Subscriber number (僅填前面 9 碼,由左 算起)

欲傳送 Ringtone, Icon 等 Smart Message 時,請 pchID[2] = 1(見 SNS 文件說明紅字部分)

其餘與 SNS 介接方法皆與 SNS 說明相同

參考文獻

相關文件

§ Online store value systems rely on prepayments, debit cards, or checking accounts to create value in an account that can be used for e -commerce shopping. Current

[r]

[r]

次 項目 提出單位 103 下 104 上 104 下 說明. 19 教科書

2.本年度起外師英會課程鐘點費每節課經設算應加收 335 元,擬 由上課學生每節負擔 150

2.新增"中華電信 1G/600M 光纖專線一條"為原有 100Mb 光纖專線速度的 10 倍,主要是 因校內目前資訊應用於教學之需求倍增,如 Youtube、均一、Google

[r]

3/3 ORIGINAL CLEAN SHIPPED ON BOARD BILLS OF LADING MARKED FREIGHT PREPAID, CONSIGNED TO ORDER HSBC BANK USA.. BENEFICIARY‘S COMMERCIAL INVOICES, PLUS