Kannel 中的 TLV 参数

TLV Parameters in Kannel

我的 SMS 服务提供商要求我在通过 SMPP 连接到他时设置以下 TLV 参数:

如何在 Kannel 中配置相同的内容,因为这是我第一次使用此 SMPP 客户端应用程序,我在 Kannel.conf 文件中设置了以下数据,但是当我 pushed/sent 一条消息时,网关没有感觉到我设置的TLV

group = smpp-tlv
name = PRICEPOINT
tag = 0x1400
type = integer
length = 4
smsc-id = SMSC01

group = smpp-tlv
name = PRODUCT
tag = 0x1401
type = integer
length = 4
smsc-id = SMSC01

group = smpp-tlv
name = PARTNERROLEID
tag = 0x1402
type = integer
length = 4
smsc-id = SMSC01

但在实时 TCP 跟踪中,我没有找到它:

你的配置是正确的,但它只是通知 Kannel SMSC 存在哪些可能的 TLV 参数。

要实际使用它们,您必须在格式如下的 meta-data 参数中设置 sendsms 调用中的值 ?smsc-type?key1=value1&key2=value2&key3=value3... 您必须考虑到在构建此字符串时,smsc-类型、键和值必须进行 urlencode,然后整个结果字符串必须再次进行 urlencode。

在你的情况下它看起来像这样:http://host:port/cgi-bin/sendsms?username=user&password=password&to=recipientphone&from=senderphone&text=content&smsc=smsc&meta-data=%3Fsmpp%3FPRICEPOINT%3D1%26PRODUCT%3D2%26PARTNERROLEID%3D3.

例子中的%3Fsmpp%3FPRICEPOINT%3D1%26PRODUCT%3D2%26PARTNERROLEID%3D3是urlencoded ?smpp?PRICEPOINT=1&PRODUCT=2&PARTNERROLEID=3.

这是文档中的相关部分:http://kannel.org/download/1.4.4/userguide-1.4.4/userguide.html#AEN6370