javascript - 仅当用户在 twilio 中输入录制按钮时才录制房间中的视频通话

标签 javascript reactjs twilio twilio-api

我想做的是录制一个用户和另一个用户之间正在进行的视频通话。一旦用户单击录制按钮,视频录制就会开始。但是,我遇到了以下问题

Unable to fetch record↵Invalid RecordingSid parameter

我使用rails作为api,使用reactjs作为前端。在 Rails 方面,我做了以下操作

def record
    @client = client_authenticate()
    puts params["room_sid"]
    # RM5XXXXXXX
    recording = @client.video.recordings(params["room_sid"]).fetch
    puts recording.track_name
end

前端侧

const Controls = ({ handleLeaveRoom, handleMute, handleRecord, mute }) => (
  <Wrapper>
    <Icon icon={mute ? faMicrophoneSlash : faMicrophone} size="2x" onClick={handleMute} />
    <HangCall icon={faPhone} size="2x" onClick={handleLeaveRoom} />
    <Icon icon={faDesktop} size="2x" />
    <Icon icon={faCloud} size="2x" onClick={handleRecord} />
  </Wrapper>
);

const handleRecord = async () => {
    try {
      const response = await fetch(`${API_BASE}/twilio/record`, {
        method: "POST",
        body: JSON.stringify({ room_sid: room.activeRoom.sid }),
        headers: {
          "Content-Type": "application/json"
        }
      });
      console.log("requested");
      const jsonResponse = await response.json();
      console.log("jsonResponse", jsonResponse);
    } catch (e) {
      console.error("e", e);
    }
  }

简而言之,我想在用户按下云端录制按钮时录制正在进行的视频通话,但遇到了以上问题。我发送我们加入房间时收到的 sid。

最佳答案

这里是 Twilio 开发者布道者。

我在文档中找不到任何内容表明您可以在视频中途开始录制。据我所知,您需要 create the room via the REST API and set the recordParticipantsOnConnect parameter to true一旦参与者加入,就会记录他们。

在 Rails 端的代码中,您尝试使用房间 SID 请求尚不存在的录音,该房间 SID 是房间的标识符,不适用于录音。这就是该请求失败的原因。

没有 API 端点可以中途开始录制。

关于javascript - 仅当用户在 twilio 中输入录制按钮时才录制房间中的视频通话,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54453576/

相关文章:

javascript - WordPress 不使用我的 javascript?

reactjs - 如何使用 Reactjs 获取 CSV 数据并存储到状态?

javascript - 在现有的 React 应用程序中逐步采用 Next.js

javascript - 使用 create-react-app 我得到 EEXIST : file already exists

javascript - 我应该使用什么作为文档 key 来保持幂等性?

twilio - 在 Twilio session 期间保留参与者

javascript - 日期时间 atrr 中的正则表达式

javascript - Vue.js 2 自动转义 HTML

Twilio 加入 Google Hangouts 电话 session

javascript - data.length 未定义