3

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

  • 价格点 (0x1400)
  • 产品 (0x1401)
  • 合作伙伴角色 ID (0x1402)

如何在 Kannel 中进行相同的配置,因为这是我第一次使用这个 SMPP 客户端应用程序,我在 Kannel.conf 文件中设置了以下数据,但是当我推送/发送消息时,网关没有感觉到 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 跟踪中,我没有找到它:

在此处输入图像描述

4

1 回答 1

4

您对配置做了正确的事情,但它所做的是它只是通知 Kannel 关于 SMSC 存在哪些可能的 TLV 参数。

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

在您的情况下,它看起来像这样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%3D3urlencoded ?smpp?PRICEPOINT=1&PRODUCT=2&PARTNERROLEID=3

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

于 2017-06-13T16:56:43.747 回答