2013-04-13 14 views
1

在涉及Kannel的時刻做了一些項目,但是我遇到了問題。Kannel只發送153個字符

當我向長途網關發送一長串短信時,它收到短信的第一部分,然後使用get-url發送我的php腳本以添加到網站。然後第二部分被髮送併發生相同的事情。

有沒有辦法將完整的短信發送到網站?

非常感謝您的幫助。以下是我附加的kannel.conf

group = core 
admin-port = <snip> 
admin-password = <snip> 
status-password = <snip> 
smsbox-port = <snip> 
wdp-interface-name = "*" 
log-file = "/var/log/kannel/bearerbox.log" 
log-level = 0 

group = smsc 
smsc = at 
modemtype = auto 
device = /dev/ttyUSB1 
speed = 9600 
connect-allow-ip = 127.0.0.1 

group = smsbox 
bearerbox-host = 127.0.0.1 
sendsms-port = <snip> 
sendsms-chars = "-" 
log-file = "/var/log/kannel/smsbox.log" 
log-level = 0 
access-log = "/var/log/kannel/access.log" 
global-sender = <snip> 
sms-length = 500 

group = sendsms-user 
username = <snip> 
password = <snip> 
concatenation = true 

group = modems 
id = huawei_e220 
name = "Huawei_E220" 
detect-string = "huawei" 
message-storage = sm 
speed = 9600 

group = sms-service 
keyword = 
catch-all = 1 
max-messages = 0 
# trying this below 
#assume-plain-text = true 
concatenation = true 
get-url = "http://<snip>.net/inbound.php?phone=%p&text=%t" 

# Ends 

回答

0

它可能與您的GSM調制解調器有關。如果我嘗試使用真正的SMSC進行非常類似的配置,則會正確重組消息。另外,您的sms-service組的get-url組不正確 - %t是消息時間戳,如果您想要整個消息內容,則應使用%a。 (至少在Kannel 1.5.0中就是這樣。)

+0

非常感謝pilsetnieks爲您的答覆。我會做更多的研究。 關於退出代碼,我很抱歉我正在測試/正在使用退出代碼,並且當時設置了時間戳 - 現在又回到了%a。 – DeepRiverBass

+0

很可能你的Kannel配置沒問題,但調制解調器沒有正確配置,並且正在對消息中的UDH做某些事情,所以Kannel不知道應該重新組合。 – pilsetnieks

+0

經過大量的咖啡和重新閱讀手冊後,最終得到它的工作...將在下面回答,但是,感謝pilsetnieks幫助這個線程! – DeepRiverBass

0

所以,這個問題本身就是關於從bearerbox到smsc和smsbox的消息路由。基本上我必須定義一個指向smsbox的smsc,它似乎可以修復它。然而,我現在還沒有與我的代碼一起發佈,對於任何有此問題的人 - 請檢查您的smsc設置。

0

嘗試以下設置添加到核心組MO SM從部分組合:

group = core 
... 
sms-combine-concatenated-mo = 1 
sms-combine-concatenated-mo-timeout = 600 

如果這不會幫助 - 記錄添加到您的SMSC部分與調試級別(日誌級別= 0)查看Kannel的診斷信息。