在 freeswitch 中通话结束后,如何将通话录音文件发送到 Rest API?

问题描述 投票:0回答:2

我想在通话终止后将通话会话的录制文件发送到 REST API。我通读了 Freeswitch 文档,并且能够录制通话并将其保存到 .wav 文件中。现在我想将文件 POST 到远程服务器上的 REST API,我认为 Dialplan 和 mod_curl 中的后处理记录会对我有一些帮助,但我无法理解如何让两者一起工作来实现我想要的是。我是 Freeswitch 的新手,这些是我关注的链接:

https://freeswitch.org/confluence/display/FREESWITCH/mod_dptools%3A+record_session

https://freeswitch.org/confluence/display/FREESWITCH/mod_curl

curl post audio-recording freeswitch
2个回答
2
投票

几种方法:

1 编写lua Dualplan。 以下是如何在lua中读取文件:https://stackoverflow.com/a/11204889/827704

然后你可以使用 mod_curl 从 lua dialplan 发送文件

2 写服务,发送文件 您可以创建简单的后端服务,与 freeswitch 位于同一台机器上,并使用 freeswitch 的 API。

然后您从 freeswitch 中使用记录名称调用此本地服务的方法。

然后这个新的后端服务处理这个请求加载文件,然后调用目标api的方法。

所以

  1. freeswitch - POST 文件名 -> 本地服务 API
  2. 本地服务:从与 freeswitch 共享的文件夹加载文件
  3. 本地服务 - POST 文件 -> 目标 API

0
投票

您可以尝试使用

mod_httapi

<action application="record" data="http://(file=recording.wav,name=part1.PCMU,method=POST)your_domain.com/recording_upload"/>

显然,您需要替换 URL 等,但您只需提取 POSTed 文件即可,无需在每个 FreeSWITCH 实例上存储任何录音。

© www.soinside.com 2019 - 2024. All rights reserved.