0

我正在使用调度程序的 2 个或更多星号服务器配置 kamailio。我用 2 个星号服务器配置了调度程序表。

+----+-------+------------------------+-------+----------+---------------------------------------+-------------+
| id | setid | destination            | flags | priority | attrs                                 | description |
+----+-------+------------------------+-------+----------+---------------------------------------+-------------+
|  1 |     1 | sip:*.*.*.*:5160 |     2 |        1 | duid=ABC;maxload=0;my=XYZ             | sip 1       |
|  2 |     1 | sip:*.*.*.*:5160 |     2 |        1 | duid=DEF;weight=10;maxload=1;my=SRV02 | sip 2       |
+----+-------+------------------------+-------+----------+---------------------------------------+-------------+

在 kamailio.cfg 文件中我配置为

 ds_select_dst("1", "10");

我在连接星号时遇到问题。它给出错误并且它从调度表中获取第一个条目。

错误是:

ERROR: dispatcher [dispatch.c:1748]: ds_select_dst_limit(): no dst ID avp for load distribution - using first entry...

您能否告诉我 ds_select_dest() 中参数 10 的配置;我应该在“dstid_avp”中给出什么。

4

1 回答 1

1

参数dstid_avp必须设置为 AVP 变量的名称,并确保 AVP 不被分派器模块以外的任何其他东西使用。例如:

modparam("dispatcher", "dstid_avp", "$avp(dsdstid)")

如果$avp(dsdstid)没有在配置中的其他任何地方使用,那么一切都应该没问题。实际上,AVP 可以用来读取它的值,但不要删除或修改它。

作为额外说明,可能需要设置其他以 _avp 为后缀的调度程序参数例如,如果您想要重新路由失败),可以简单地从调度程序模块的 README 中获取示例并将其添加到 kamailio.cfg。

于 2015-06-13T20:12:27.707 回答