首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FreeSWITCH & OpenSIPS --如何避免在多个FreeSWITCH服务器中复制扩展?

FreeSWITCH & OpenSIPS --如何避免在多个FreeSWITCH服务器中复制扩展?
EN

Server Fault用户
提问于 2010-07-27 15:33:40
回答 2查看 1.7K关注 0票数 7

我想用FreeSWITCH代替星号,因为它的性能与星号相比。我知道FreeSWITCH可以是一个完整的PBX,或者只运行部件(模块),只做我想要它做的事情。但我不知道OpenSIPS是否适合这个方程。假设我有5台FreeSWITCH服务器来处理语音呼叫(入站和出站)和我的用户的语音信箱。我可以拥有OpenSIPS路由器中的所有扩展并使用它对呼叫进行身份验证,然后将它们交给FreeSWITCH吗?

如果是这样的话,我是否必须在FreeSWITCH中为我的用户提供任何扩展信息?我试图避免有5个FreeSWITCH服务器与重复的扩展在每个!

EN

回答 2

Server Fault用户

回答已采纳

发布于 2011-01-19 04:05:28

Opensips用于创建高度可伸缩的SIP信令路由器。因此,可以使用OpenSIPS和载波路线模块对对等点进行身份验证,并将调用路由到FreeSWITCH框。

票数 5
EN

Server Fault用户

发布于 2023-04-17 13:06:47

为了避免在多个FreeSWITCH服务器中重复扩展,可以使用OpenSIPS作为SIP来处理呼叫路由和分发。可以将OpenSIPS配置为向多个FreeSWITCH服务器负载平衡流量,并根据特定条件路由调用。

这里有一个使用OpenSIPS和FreeSWITCH的示例配置:

OpenSIPS配置:

代码语言:javascript
复制
# Define the FreeSWITCH servers
# Replace 192.168.1.10 and 192.168.1.11 with the IP addresses of your FreeSWITCH servers
dynamic_route("freeswitch", "load_balance") {
    if (uri == "sip:extension@192.168.1.10") {
        seturi("sip:extension@192.168.1.10");
        t_on_failure("1");
    } else if (uri == "sip:extension@192.168.1.11") {
        seturi("sip:extension@192.168.1.11");
        t_on_failure("1");
    }
}

# Define the load balancing algorithm
load_balance {
    # Replace 192.168.1.10 and 192.168.1.11 with the IP addresses of your FreeSWITCH servers
    group("freeswitch", "hash");
    # Define the hashing algorithm (e.g. "source", "destination", "random")
    hash_load_factor("1");
}

FreeSWITCH配置:

代码语言:javascript
复制
# Define the extension
<extension name="extension">
    <condition field="destination_number" expression="extension">
        <action application="bridge" data="sofia/gateway/OpenSIPS/extension"/>
    </condition>
</extension>

# Define the SIP gateway
<gateway name="OpenSIPS">
    <param name="username" value="username"/>
    <param name="password" value="password"/>
    <param name="realm" value="opensips.example.com"/>
    <param name="from-user" value="freeswitch"/>
    <param name="from-domain" value="freeswitch.example.com"/>
    <param name="expire-seconds" value="300"/>
    <param name="retry-seconds" value="60"/>
    <param name="register" value="true"/>
    <param name="register-transport" value="udp"/>
    <param name="register-proxy" value="opensips.example.com"/>
    <param name="caller-id-in-from" value="true"/>
</gateway>

在此配置中,OpenSIPS被配置为向两个IP地址为192.168.1.10和192.168.1.11的FreeSWITCH服务器负载平衡通信量。负载平衡算法使用散列算法在服务器之间平均分配通信量。

FreeSWITCH配置定义了一个扩展,该扩展使用SIP“sofia/网关/ OpenSIPS / extension”将调用连接到OpenSIPS网关。OpenSIPS网关配置了必要的SIP凭据和注册信息。

使用此配置,您可以在FreeSWITCH配置中定义扩展,而不必在多个FreeSWITCH服务器上重复它们。OpenSIPS处理呼叫路由和分发,确保根据负载平衡算法将呼叫路由到适当的服务器。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/164502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档