短信Routing Logic

为了清楚起见,本节将定义路由逻辑,NowSMS使用此逻辑来确定应该使用哪个连接来路由SMS消息以进行出站传递。

当NowSMS路由邮件时,它首先会查看是否已为邮件提交指定了发件人地址(通常没有指定发件人地址,除非您通过HTTP提交了邮件并指定了一个“Sender=”参数)。如果指定了发件人地址,则NowSMS会检查该发件人地址是否与 “默认发件人地址” that is configured for any of the 短信服务中心 links (or the “Phone Number” associated with a GSM modem). If NowSMS finds a match, then it will route the message only via an 短信服务中心 connection with a matching sender address.

如果NowSMS在发件人地址上找不到匹配项,则它将评估收件人地址,并查看其是否在发件人地址中找到匹配项 “Preferred 短信服务中心 Connection for” 与任何SMSC连接关联的收件人地址掩码。 (这些收件人地址掩码可以是通配符,例如“+44*”与任何以开头的电话号码匹配“+44”。)如果NowSMS找到匹配项,则它将查找提供匹配项的最长掩码,并通过具有最长匹配掩码的连接路由消息。 (例如,如果您发送到+441624999999,并且您的一个连接的掩码为“+44*”, and another with “+441624*”,然后用的掩码连接“+441624*”将被使用,因为它比“+44*”.)

模式由电话号码字符串组成,并且可以包含通配符“*” and “?”. The “*”字符匹配任意数量的字符,并且“?”字符匹配任何单个字符。

如果收件人地址掩码上没有匹配项,则邮件将通过具有以下内容的任何连接进行路由“支持任何出站邮件流量” checked.

还应提及的是,如果NowSMS在发件人地址上找到多个匹配项,它将评估“Preferred 短信服务中心 Connection for”具有发件人地址匹配的每个连接的收件人地址掩码。

Beginning with the NowSMS 2007 release, an HTTP parameter setting has been added that can be used to explicitly route a message via a particular 短信服务中心, so that it is not necessary to always use the sender/recipient matching logic, if it is not appropriate for your configuration.

通过HTTP提交消息时,HTTP接口支持参数“&SMSC路线=xxxxxxx”,其中此设置的值可以是已定义的SMSC的名称(例如,“Bluetooth Modem” or “SMPP – a.b.c.d:xyz”)。或者,可以使用定义为与一个或多个SMSC关联的路由名称,而不是使用SMSC名称。要为SMSC定义路由名称,必须手动编辑SMSGW.INI,并在相应的节标题下(例如[调制解调器– 蓝牙调制解调器] or [SMPP –a.b.c.d:xyz]),添加RouteName = xxxxxx。多个SMSC可以共享相同的路由名称,这意味着如果通过HTTP使用“&SMSC路线=xxxxxxx” parameter, it will be routed outbound over the first available 短信服务中心 that is configured with the RouteName=xxxxx setting.