From 961888071b4c8c7e3af0fe12025ecf2d136ad779 Mon Sep 17 00:00:00 2001 From: zhailimei Date: Thu, 11 Jan 2024 19:41:58 +0800 Subject: [PATCH 1/3] revise --- .../Modules/mod_httapi_3966423.mdx | 2 +- .../Modules/mod_rayo_3375450.mdx | 176 ++++++++++-------- 2 files changed, 95 insertions(+), 83 deletions(-) diff --git a/docs/FreeSWITCH-Explained/Modules/mod_httapi_3966423.mdx b/docs/FreeSWITCH-Explained/Modules/mod_httapi_3966423.mdx index 95f155e..0e9debd 100644 --- a/docs/FreeSWITCH-Explained/Modules/mod_httapi_3966423.mdx +++ b/docs/FreeSWITCH-Explained/Modules/mod_httapi_3966423.mdx @@ -326,4 +326,4 @@ none : 没有设置权限 ### 接听电话 -您可以使用<application name="answer"/>来接听电话,但默认情况下,httapi脚本没有运行'answer'指令的权限,因此您需要在httapi.conf.xml中启用它。 \ No newline at end of file +您可以使用 `` 来接听电话,但默认情况下,httapi脚本没有运行'answer'指令的权限,因此您需要在httapi.conf.xml中启用它。 \ No newline at end of file diff --git a/docs/FreeSWITCH-Explained/Modules/mod_rayo_3375450.mdx b/docs/FreeSWITCH-Explained/Modules/mod_rayo_3375450.mdx index abc5576..9789da6 100644 --- a/docs/FreeSWITCH-Explained/Modules/mod_rayo_3375450.mdx +++ b/docs/FreeSWITCH-Explained/Modules/mod_rayo_3375450.mdx @@ -72,7 +72,6 @@ make config-rayo - ``` ### 录音设置 @@ -112,6 +111,7 @@ make config-rayo 唯一的限制是,没有检测器可以检测与先前定义的检测器相同的事件/子类。 +```xml @@ -138,38 +138,40 @@ make config-rayo +``` -<!-- 将 mod_spandsp 呼叫进度音调探测器映射到 Rayo CPA 信号事件。持续触发 DETECTED_TONE 事件,直到停止。 --> - <detector name="mod_spandsp_tone"> - <start application="start_tone_detect" data="1"/> - <stop application="stop_tone_detect" data=""/> - <!-- 将音调事件映射到 Rayo CPA 信号类型 --> - <event class="CUSTOM" subclass="DETECTED_TONE" type-header="Detected-Tone"> - <signal-type header-value="SIT" value="sit"/> - <signal-type header-value="BUSY_TONE" value="busy"/> - <signal-type header-value="REORDER_TONE" value="congestion"/> - <signal-type header-value="RING_TONE" value="ring"/> - </event> - </detector> - - <!-- 将 mod_avmd 探测器映射到 Rayo CPA 响铃事件。只触发一次 avmd::beep 事件。 --> - <detector name="mod_avmd"> - <start application="avmd" data=""/> - <stop application="avmd" data="stop"/> - <event class="CUSTOM" subclass="avmd::beep"> - <signal-type value="beep"/> - </event> - </detector> - - <!-- 使用 mod_vmd 的备用 beep 探测器。持续触发 vmd::beep 事件,直到停止。 --> - <!--detector name="mod_vmd"> - <start application="vmd" data=""/> - <stop application="vmd" data="stop"/> - <event class="CUSTOM" subclass="vmd::beep"> - <signal-type value="beep"/> - </event> - </detector--> - <cpa> +```xml + + + + + + + + + + + + + + + + + + + + + + + + + #### XMPP 设置 @@ -177,54 +179,60 @@ mod_rayo 是一个 XMPP 服务器。mod_rayo 目前只支持服务于一个 XMPP 不安全的 XMPP 客户端连接示例(仅在私有网络中使用!!!) -```xml - <!--为rayo.example.com设置服务器。接受来自usera@rayo.example.com的客户端连接到10.50.0.10。--> - <domain name="rayo.example.com" shared-secret="ClueCon"> - <listen type="c2s" port="5222" address="10.50.0.10" acl=""/> - <!--授权用户--> - <users> - <user name="usera" password="1"/> - </users> - </domain> + + + + + + + + + +``` 安全的XMPP客户端连接示例。当连接到mod_rayo时,此示例要求使用TLS。您需要生成证书和私钥,并将它们存储在certs目录中。 - <!--为rayo.example.com设置服务器。接受来自usera@rayo.example.com的安全客户端连接到10.50.0.10。--> - <domain name="rayo.example.com" shared-secret="ClueCon" cert="$${base_dir}/certs/rayo.example.com.crt" +```xml + + - <listen type="c2s" port="5222" address="10.50.0.10" acl=""/> - <!--授权用户--> - <users> - <user name="usera" password="1"/> - </users> - </domain> + + + + + + +``` acl参数也可用于增加额外的安全层级。启用后,仅接受来自已批准网络的XMPP客户端。在conf/autoload_configs/acl.conf.xml中创建一个名为"rayo-clients"的acl,并设置acl参数: - <listen type="c2s" port="5222" address="10.50.0.10" acl="rayo-clients"/> +```xml + +``` #### 拨号网关 拨号网关通过将URI前缀映射到FreeSWITCH拨号字符串前缀来定义呼叫终端路由。这使得Rayo可以将通过电话号码寻址的呼叫路由到FreeTDM端点的PSTN,而将通过SIP URI寻址的呼叫路由到mod_sofia网关。 "default"是一个保留的拨号前缀,当所有其他匹配失败时匹配。 -``` -<dial-gateways> - <!-- 默认网关 - 如果找不到拨号前缀匹配,则将呼叫发送到出站网关 --> - <dial-gateway uriprefix="default" dialprefix="sofia/gateway/outbound/" strip="0"/> +```xml + + + - <!-- 将SIP URI发送给mod_sofia --> - <dial-gateway uriprefix="sip:" dialprefix="sofia/external/" strip="0"/> + + - <!-- 在删除tel:之后,将tel:+ 16171234567发送给mod_sofia --> - <dial-gateway uriprefix="tel:" dialprefix="sofia/gateway/outbound/" strip="4"/> + + - <!-- 一些允许Rayo客户端指定FreeSWITCH拨号字符串的示例 --> - <!-- 将用户和sofia原样传递 --> - <dial-gateway uriprefix="user" dialprefix="" strip=""/> - <dial-gateway uriprefix="sofia" dialprefix="" strip=""/> -</dial-gateways> + + + + + +``` #### 别名 @@ -245,27 +253,30 @@ acl参数也可用于增加额外的安全层级。启用后,仅接受来自 * record(记录组件) ```xml - <别名> - <!-- 接听 Rayo 客户端的来电 --> - <别名名称="接听" 目标="呼叫"><![CDATA[<answer xmlns="urn:xmpp:rayo:1"/>]]></别名> - <!-- 停止一个活动组件 --> - <别名名称="停止" 目标="组件"><![CDATA[<stop xmlns="urn:xmpp:rayo:ext:1"/>]]></别名> - <!-- 暂停输出 --> - <别名名称="暂停" 目标="输出"><![CDATA[<pause xmlns="urn:xmpp:rayo:output:1"/>]]></别名> - <!-- 恢复录音 --> - <别名名称="恢复录音" 目标="录音"><![CDATA[<resume xmlns="urn:xmpp:rayo:record:1"/>]]></别名> - </别名> + <别名> + + <别名名称="接听" 目标="呼叫">]]> + + <别名名称="停止" 目标="组件">]]> + + <别名名称="暂停" 目标="输出">]]> + + <别名名称="恢复录音" 目标="录音">]]> + +``` ### rayo 应用程序 向 Rayo 客户端提供来电。这类似于 [Outbound Event Socket](../Client-and-Developer-Interfaces/Event-Socket-Library/Event-Socket-Outbound_3375460.mdx#faq) "socket" 应用程序。如果在呼叫被提供时,没有 Rayo 客户端连接到 FreeSWITCH,那么呼叫将被拒绝。 - <扩展名称="rayo"> - <条件> - <!-- 向 Rayo 客户端提供呼叫 --> - <操作应用程序="rayo"/> - </条件> - </扩展> +```xml + <扩展名称="rayo"> + <条件> + + <操作应用程序="rayo"/> + + +``` ### rayo API @@ -291,18 +302,19 @@ Rayo 管理控制台 IQ 请求会自动填充正确的发送方和接收方 JID(Jabber ID)。 - rayo cmd 10.50.0.10 <iq type="get"><ping xmlns="urn:xmpp:ping"/></iq> +```xml + rayo cmd 10.50.0.10 ``` #### rayo 状态 <jid> online|offline -将管理控制台的<presence>发送到mod\_rayo服务器。 +将管理控制台的``发送到mod\_rayo服务器。 默认情况下,管理控制台处于离线状态,并且不会接受呼叫。如果您想通过控制台测试呼叫,必须向mod\_rayo服务器发送在线状态。 rayo presence 10.50.0.10 online -现在呼叫将被发送到控制台客户端。"rayo answer <jid>"将接管呼叫。 +现在呼叫将被发送到控制台客户端。`rayo answer `将接管呼叫。 #### rayo 消息 <jid> <文本消息> From b0dc4fcd0d06397468c3466323822ba47c960bf4 Mon Sep 17 00:00:00 2001 From: zhailimei Date: Thu, 11 Jan 2024 19:48:52 +0800 Subject: [PATCH 2/3] update-5450 --- docs/FreeSWITCH-Explained/Modules/mod_rayo_3375450.mdx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/FreeSWITCH-Explained/Modules/mod_rayo_3375450.mdx b/docs/FreeSWITCH-Explained/Modules/mod_rayo_3375450.mdx index 9789da6..1f06984 100644 --- a/docs/FreeSWITCH-Explained/Modules/mod_rayo_3375450.mdx +++ b/docs/FreeSWITCH-Explained/Modules/mod_rayo_3375450.mdx @@ -172,6 +172,7 @@ make config-rayo +``` #### XMPP 设置 @@ -179,7 +180,7 @@ mod_rayo 是一个 XMPP 服务器。mod_rayo 目前只支持服务于一个 XMPP 不安全的 XMPP 客户端连接示例(仅在私有网络中使用!!!) - +```xml From cd0d6f15595f879ee42ae01ea5132b33808ec10d Mon Sep 17 00:00:00 2001 From: zhailimei Date: Thu, 11 Jan 2024 20:25:42 +0800 Subject: [PATCH 3/3] update --- .../mod_lcr-parse-scripts_13173918.mdx | 11 ++++-- .../Modules/mod_rtmp_5046427.mdx | 38 +++++++++++++------ 2 files changed, 35 insertions(+), 14 deletions(-) diff --git a/docs/FreeSWITCH-Explained/Examples/mod_lcr-parse-scripts_13173918.mdx b/docs/FreeSWITCH-Explained/Examples/mod_lcr-parse-scripts_13173918.mdx index 78321c5..3fde89c 100644 --- a/docs/FreeSWITCH-Explained/Examples/mod_lcr-parse-scripts_13173918.mdx +++ b/docs/FreeSWITCH-Explained/Examples/mod_lcr-parse-scripts_13173918.mdx @@ -17,11 +17,14 @@ ## 1\. lcr.sh 是每天由 cron 调用的动作脚本,它将所有 Perl 脚本组合在一起 * cron entry + ```xml 45 01 * * * freeswitch ( cd /opt/freeswitch/scripts/lcr && ./lcr.sh ) 50 01 * * * freeswitch (cat /tmp/data.sql | /usr/bin/sqlite3 /opt/freeswitch/conf/databases/fslcr.db) ``` + * lcr.sh + ```xml #!/bin/bash pushd /opt/freeswitch/scripts/lcr @@ -105,6 +108,8 @@ close FILE; ``` # pennytel 按澳元计价,所以需要转换成美元 + +```xml $usdrate=0; $audrate=0; open (FILE, "rates.txt"); @@ -230,7 +235,6 @@ close FILE; $tousd = $eurrate / $usdrate; #print "EUR -> USD $tousd\n"; -``` 打开 (FILE, $ARGV[0]); my @values; @@ -280,6 +284,7 @@ while () { # 英国 - 移动,44,7#,0.27 # 英国 - 其他,44,8# 9#,0.32 # 英国 - 个人,44,70#,0.50 +``` ```xml #!/usr/bin/perl @@ -312,6 +317,8 @@ close (FILE); ``` # 使用货币报告的最后一个值 + +```xml foreach $num (0 .. $#header) { $rate = "$header[$num] $values[$num]\n"; @@ -321,8 +328,6 @@ foreach $num (0 .. $#header) } } exit; - - ``` ## 6. 将csv文件转换为可导入数据库的SQL格式([turncsvintosql.pl](http://turncsvintosql.pl)) diff --git a/docs/FreeSWITCH-Explained/Modules/mod_rtmp_5046427.mdx b/docs/FreeSWITCH-Explained/Modules/mod_rtmp_5046427.mdx index 022fc3c..96aac3f 100644 --- a/docs/FreeSWITCH-Explained/Modules/mod_rtmp_5046427.mdx +++ b/docs/FreeSWITCH-Explained/Modules/mod_rtmp_5046427.mdx @@ -37,38 +37,52 @@ freeswitch> rtmp status 查看配置文件的状态: -freeswitch> rtmp status profile <profile> +```xml +freeswitch> rtmp status profile +``` 查看配置文件上的会话: -freeswitch> rtmp status profile <profile> sessions +```xml +freeswitch> rtmp status profile sessions +``` 查看配置文件上的注册信息: -freeswitch> rtmp status profile <profile> reg +``` +freeswitch> rtmp status profile reg +``` ### 配置文件 启动、停止或重新启动配置文件: -freeswitch> rtmp profile <profile> start -freeswitch> rtmp profile <profile> stop -freeswitch> rtmp profile <profile> restart +```xml +freeswitch> rtmp profile start +freeswitch> rtmp profile stop +freeswitch> rtmp profile restart +``` 重新扫描配置文件: -freeswitch> rtmp profile <profile> rescan +```xml +freeswitch> rtmp profile rescan +``` ### 会话 关闭会话: -freeswitch> rtmp session <session> kill +```xml +freeswitch> rtmp session kill +``` 登录或注销会话: -freeswitch> rtmp session <session> login -freeswitch> rtmp session <session> logout +```xml +freeswitch> rtmp session login +freeswitch> rtmp session logout +``` ### 联系人 @@ -78,7 +92,9 @@ rtmp_contact profile/user@domain[/[!]nickname] 可以使用此来桥接呼叫至用户: -<action application="bridge" data="${rtmp_contact($${rtmp_profile}/${dialed_ext}@$${domain})}"/> +```xml + +``` ## 延迟