选项卡关闭时,从Twilio聊天频道中删除用户

时间:2019-10-03 15:32:41

标签: twilio twilio-programmable-chat twilio-javascript

任何人都知道在闲置一段时间后自动从Twilio可编程聊天频道中退订/删除用户的方法吗?

我想到的最简单的情况是,用户关闭浏览器选项卡而没有离开聊天频道(因此从未调用channel.leave()),因此仍然是永远是频道。

另一种情况是当网络中断时。

1 个答案:

答案 0 :(得分:1)

通过使用beforeunload事件,您可以执行以下操作:(我在这里使用React)

// Things to do before unloading/closing the tab
doSomethingBeforeUnload = () => {
    if (this.room) {
        this.room.disconnect()
        // Detach other things such as participant video, if you need
    }
}

// Setup the `beforeunload` event listener
setupBeforeUnloadListener = () => {
    window.addEventListener("beforeunload", (ev) => {
        ev.preventDefault();
        return this.doSomethingBeforeUnload();
    });
};

componentDidMount() {
    // Activate the event listener
    this.setupBeforeUnloadListener();
}