0301.配置文件

由 jafucong 发布

配置文件

FreeSWITCH™ 配置数据以 XML 格式存储。这些文件位于 FreeSWITCH™ 安装目录下的 conf 目录中。

FolderDescription
autoload_configs这些配置文件会自动加载到 FreeSWITCH。它们包含几乎所有核心​​模块的配置信息。
dialplan这是您设置拨号方案的地方。有一些示例说明如何配置您的拨号方案。
directory该目录包含所有可以注册和使用 freeswitch 作为他们的 PBX 的用户。
jingle_profilesJingle 是 FS 用来处理 XMPP 的 mod。配置文件告诉 FS 如何使用该协议。每个配置文件都有自己的 IP 端口。
lang告诉 FS 如何用不同的语言说货币等
mrcp_profilesMRCP 用于允许 FreeSWITCH 使用语音识别和 TTS
sip_profiles告诉 FS 如何运行 sip。每个配置文件都有自己的端口。

默认值

vars.xml

/etc/freeswitch/vars.xml 用于定义系统范围的变量。

重要变量

vars.xml 中定义的重要变量包括:

  • outbound_caller_name - 拨打电话时电话中显示的姓名
  • outbound_caller_number - 拨打外线电话时手机中显示的号码
  • domain - 用户目录中的条目注册的 IP 地址或 DNS 名称。这通常是 FreeSWITCH 本身。
  • external_rtp_ipexternal_sip_ip - 此 FreeSWITCH 系统的公共 IP 地址。最安全的是使用 IP 地址而不是 DNS,以防设备无法解析域。

autoload_configs

autoload_configs 是许多 freeswitch 配置所在的目录。该目录位于 conf/autoload_configs 中。默认的 freeswitch.xml 文件将加载 conf/autoload_configs/*.xml 匹配的所有XML文件。

modules.conf.xml

modules.conf.xml 告诉 freeswitch 要加载哪些模块。操作需要某些模块,因此除非您知道要添加或删除特定模块,否则不应编辑此文件。 有关modules.conf.xml 的示例,请参阅 modules。

pre_load_modules.conf.xml

需要配置一些自 FreeSWITCH 1.10 起无法设置的核心模块 modules.conf.xml ,例如 mod_pgsql .
例如将核心Core配置为使用pgsql数据库,由于Core启动与modules.conf.xml所有模块加载之前,所以需要单独的预加载模块配置文件。

sofia.conf.xml

mod_sofia用于在 FreeSWITCH 中创建 SIP 端点。
该sofia.conf.xml文件包含一个指令,该指令包括定义一个或多个“SIP 配置文件”X-PRE-PROCESS的其他 XML 文件(默认情况下,在conf/sip_profiles/内)。SIP Profile 是一个 SIP UA(用户代理或端点),它与其他 SIP 端点进行通信。
实际上,与您的服务提供商对话的文件应该位于conf/sip_profiles/external/,命名为provider_name.com.xml.
“用户代理”(“UA”)是用于运行特定网络协议的应用程序。Sofia 用户代理使用 SIP 协议。
有关示例,请参见 Sofia 配置文件sofia.conf.xml。

SIP 配置文件

SIP 配置文件允许您定义可能存在于网络内部或外部的设备或运营商的路径。FreeSWITCH 配置文件被定义为 IP 地址和端口号的唯一组合。您可以为内部网络设置 SIP 配置文件,或为内部网络的每个子网设置多个配置文件,甚至可以将完全不同的协议(如 IPv6)作为配置文件定义。这有助于 FreeSWITCH 在必要时确定如何路由不同类型的呼叫,并让您可以灵活地根据呼叫的来源或目的地定制拨号方案。

在 Vanilla 示例配置中,有两个默认类别用于 SIP 配置文件可以驻留的位置,名为“内部”和“外部”,每个类别都服务于广泛的通用目的。

  • 外部 SIP 配置文件(External SIP profile)通常用于与您的 PSTN 网关或“SIP 中继”服务提供商进行通信,例如 移动、联通 或通过 SIP 向您提供电话服务的落地运营商公司。
  • 内部 SIP 配置文件(Internal SIP profile)用于与本地网络上注册 FS 的设备进行通信。

    配置文件名称“内部”和“外部”纯粹是任意的,仅作为示例提供。您可以将配置文件命名为任何便于管理 FreeSWITCH 安装的名称。
Internal配置

文件位置:conf/sip_profiles/internal.xml

此配置文件通常是指注册在您的内部网络上的设备。这些设备将继承您设置的内部配置文件中的所有配置选项。这通常是带有分机的内部电话。默认情况下,这些设备必须使用 SIP 身份验证。

内部(以前称为“default”)SIP 配置文件配置为在端口 5060(默认 SIP 端口)上侦听机器的主 IP 地址(除非您在中设置$${domain}了其他内容)。vars.xml在大多数情况下,内部 SIP 配置文件对呼叫进行身份验证,不适合配置中继到提供商或外部电话。使用外部配置文件配置中继到供应商或外部电话。

如果您打算处理 SIP 客户端(即 SIP 注册器)的注册,则应使用内部配置文件。

此配置文件的经过身份验证的用户通常设置(通过变量)使用默认上下文中user_context定义的拨号方案 。

请参阅 默认配置。 conf/sip_profiles/

External配置

文件位置:conf/sip_profiles/external.xml

此配置文件通常是指位于您的网络之外的设备或网关。通常,这是您定义外部中继/VoIP 运营商/等的地方。同样,这些设备将继承您设置的外部配置文件中的所有配置选项。

外部(以前称为“outbound”)配置文件处理到 SIP 提供商的出站注册。SIP 提供商向您发送呼叫,您通过外部配置文件向您的提供商发送呼叫。外部配置文件允许匿名呼叫,这是必需的,因为您的提供商永远不会向您进行身份验证以向您发送呼叫。

为了保护您的 FreeSWITCH,明智的做法是将您的出站配置文件链接到“默认”以外的拨号方案上下文,默认配置中放置经过身份验证的用户。请参阅 默认配置中 的安全说明的conf/sip_profiles/公共上下文。

外部连接的默认端口是 5080。这意味着如果您尝试将远程电话连接到您的 FreeSWITCH 盒子,您必须将其设置为连接到端口 5080,或者更改您的端口。

Directory

该目录包含将注册到 FreeSWITCH(最常见的用户)的 SIP 端点的身份验证凭据。目录配置默认配置为通过 freeswitch.xml 加载conf/directory/*.xml 中的 conf/directory/default/*.xml 包含的配置来处理。
这可能看起来令人困惑,但默认值在大多数情况下都可以使用。

Dialplan

FreeSWITCH 拨号方案是一种全功能的、基于 XML 的呼叫路由机制。(还支持类似 Asterisk 的拨号方案,以及真正花哨的实时和/或后端数据库驱动的拨号方案)。

开始学习 FreeSWITCH 拨号方案的最佳位置是 wiki 上的拨号方案 页面。它讨论了 FreeSWITCH 拨号方案的基础知识。如果您需要 XML 入门,请查看 Basic_XML 页面上的信息,这将使您找到正确的方向。您可以通过其他两个重要资源了解有关拨号方案的更多信息:

  • 小但不断增长的 Dialplan_Recipes 页面
  • 标准 FreeSWITCH 安装附带的 默认拨号方案。
    建议您使用默认配置编译 FreeSWITCH,并在开始进行自定义之前确保它可以正常工作。请注意,默认配置文件,包括 default.xml 拨号方案,经常会更新。

将自定义拨号方案条目放入 conf/dialplan 下的extensions 子目录是有意义的 。您可以在此子目录中创建一个或多个 XML 文件,由于 default.xml 文件中的“include”指令,所有这些文件都将包含在拨号计划中。通过将自定义扩展与 default.xml 分开,您将能够更新 default.xml,而无需重新输入自定义扩展。


暂无评论

发表评论