質問

複数のSMSC SMPP接続を作成しました。

構成後、SMSを送信しましたが、SMSはランダムSMSCで送信されます。

Kannelを制御してSMSを送信して送信するにはどうすればよいですか。

役に立ちましたか?

解決

たとえば、Kannelサーバーへの送信で送信するSMSCを指定できます。

GET /cgi-bin/sendsms?smsc=$smsc&username=$user&password=$password&to=$receipient&text=$text&dlr-mask=$dlrMask&dlr-url=$dlrUrl

どこ $smsc Aが一致する必要があります smsc-id あなたはあなたのkannel.confにあります

ここのドキュメント, 、「表6-16。SMSプッシュ(SENDSMS)CGI変数」の下。

他のヒント

デフォルトでは、Kannelは、接続されたすべてのSMSC間のラウンドロビン方法でメッセージをルーティングします。

特定のSMSCへのルーティングを制御する3つのSMSCパラメーターがあります。

  • 拒否-SMSC-ID このリストのIDSのいずれかに等しいSMSC IDを持つSMSメッセージは、このSMSCにルーティングされることはありません。複数のエントリがセミコロンで分離されています( ';')

  • 許可-SMSC-ID このリストは以前とは反対です。このリストにSMSC IDを持つSMSメッセージのみがこのSMSCにルーティングされます。複数のエントリがセミコロンで分離されています( ';')

  • 優先-SMSC-ID このリストからSMSC IDを備えたSMSメッセージは、そのIDが望ましいIDなしでSMSCではなく、このSMSCに送信されます。複数のエントリがセミコロンで分離されています( ';')

これらの変数をジャグリングすることで、非常にシンプルなものから非常に複雑なルーティングシナリオから作成できます。

これが非常に基本的な例です:

2つのSMSCがあるとします。 smsc1smsc2 また、SMSメッセージを2つのSMSCのいずれかにルーティングしたいと考えています。カンネル構成ファイルでは、次の行を追加します。

group = smsc
smsc-id = smsc1
allowed-smsc-id = smsc1

group = smsc
smsc-id = smsc2
allowed-smsc-id = smsc2

これで、Kannel SendsMSインターフェイスへのリクエストで送信するSMSCを指定できます。

GET /kannel/sendsms?smsc=SMSC_ID&to=TO&text=TEXT

SMSC_IDはその1つになる可能性があります smsc1 また smsc2.

この例では、GETリクエストでSMSCを指定しない場合、SMSはのルールのいずれも一致しません smsc1 また smsc2 送信されません。これは、次のすべての発信メッセージで使用されるデフォルトのSMSCを設定することにより、これを回避できます。 sendsms-user グループ変数:

  • デフォルトSMSC 文字列http要求にsmsc idが指定されていない場合は、これをすべてのプッシュメッセージのデフォルトルートとして使用します。
group = sendsms-user
default-smsc = smsc1

別のオプションは、を使用することです denied-smsc-id 変数:

group = smsc
smsc-id = smsc1
denied-smsc-id = smsc2

group = smsc
smsc-id = smsc2
denied-smsc-id = smsc1

この構成により、HTTPリクエストでSMSCを指定すると、SMSはそのIDでSMSCにルーティングされますが、そうでない場合、Kannelはラウンドロビンに戻ります。 smsc1smsc2.

より高度な用途について:

Kannelのルーティングとより複雑なシナリオをより詳細に理解するには、このスレッドをチェックすることもできます。

http://old.nabble.com/Routing-of-Out-sms-td19723248.html

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top