【发布时间】:2014-11-11 21:38:52
【问题描述】:
我正在尝试使用 Kannel 发送短信。阅读我遇到的这一行的文档:
要设置 SMS 网关,除了运行 Kannel 的机器之外,您还需要访问(运营商的)SMS 中心,或者可能访问多个。
有人知道要获得此访问权限吗?
http://www.kannel.org/download/kannel-userguide-snapshot/userguide.html
【问题讨论】:
我正在尝试使用 Kannel 发送短信。阅读我遇到的这一行的文档:
要设置 SMS 网关,除了运行 Kannel 的机器之外,您还需要访问(运营商的)SMS 中心,或者可能访问多个。
有人知道要获得此访问权限吗?
http://www.kannel.org/download/kannel-userguide-snapshot/userguide.html
【问题讨论】:
如果您只想做一些开发而不花费时间/金钱来建立 SMSC 连接,您也可以使用带有 GSM 调制解调器(带有 SIM 卡)的 Kannel 来发送/接收 SMS 消息。
【讨论】:
您可以将 Kannel 用作 SMS 网关。为此,您需要在 kannel.conf 文件中添加 smsc 详细信息。 您需要在“group = smsc”部分中提及 smsc 详细信息。
例如,
**group = smsc
smsc = http
#smsc-id = smsc1 // you can uncomment it if you have multiple smscs
#allowed-smsc-id = smsc1
#denied-smsc-id = smsc2 // if any
system-type = kannel
port = 80
host = www.abc.com // the hostname of your operator, can be asked from the operator
smsc-username = abc
smsc-password = ******* // operator will give you all the details
send-url = "http://www[dot]abc[dot]com:8080/sendsms"
**
要使用所需的 smsc,只需在链接中提及 smsc-id 即可发送消息。 "http://localhost:13000/cgi-bin/sendsms?smsc=smsc1&...."
【讨论】:
您需要直接连接到您需要向其发送消息的运营商 - 这是一件昂贵的事情,此外您可能需要能够确定收件人号码的所有权,即路由哪个运营商消息。
更简单的选择是在 Google 上搜索 SMS 网关,其中有很多,但当然您需要为发送的每条消息付费。
如果您的流量较小,最便宜的选择是获取一张 SIM 卡并将手机或 GSM 调制解调器连接到您的服务器,然后通过它发送消息(Kannel 有此功能。)但是,您的吞吐量将非常有限,如果您以这种方式发送过多消息,您的运营商可能会阻止您。
【讨论】:
出于开发目的,您可以使用假 SMSC 或模拟 SMSC(具有 SMPP 功能)配置。
最新版本的 Kannel 捆绑了一个假 SMSC 程序,您可以使用该程序进行快速验证(查看 Kannel 用户指南,了解如何使用假 smsc 设置和运行测试 --- http://www.kannel.org/userguide.shtml)。
您还可以使用 SMSC(具有 SMPP 功能)模拟器软件来模拟(具有一些随机性)真实的 SMSC 服务器。例如 Selenium Software SMPPSim (http://www.seleniumsoftware.com/downloads.html) 或 Mobicents/Telestax SMSCGateway (https://code.google.com/p/smscgateway/) 软件。
根据经验,我发现 SMPPSim 更易于设置、配置和运行。
【讨论】: