首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何检测成员何时加入&离开语音通道

如何检测成员何时加入&离开语音通道
EN

Stack Overflow用户
提问于 2020-11-18 22:11:18
回答 2查看 1.9K关注 0票数 0

我正在开发一个不和谐的机器人,它需要检测用户何时加入&离开一个通道。我在第4行尝试过这一点,因为如果用户的连接没有改变,它就不会运行。但这行不通。这是我的全部代码。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
client.on('voiceStateUpdate', (oldState, newState) => {
// check for bot
if (oldState.member.user.bot) return;
if (oldState.member.voice === newState.member.voice) return;//<- here
client.channels.cache.get('777782275004825640').send(`${oldState.member} joined`);
});

我也尝试过.connection,但是它不适用于我当前的设置。任何帮助都会很好!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-11-19 16:01:06

我找到了!经过一些测试后,我发现当一个通道被更新时,会发生四种情况之一。

如果用户加入newState.channelID

  • if,则返回空

  • ,如果用户离开,则返回空

  • ,如果用户自己静音或耳聋,则oldState.channelID等于oldState.channelID,用户移动通道oldState.channelID不等于newState.channelID

我的Discord.Client()设置为client,所以如果您的更改不同

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
client.on('voiceStateUpdate', (oldState, newState) => {
    if(oldState.channelID === newState.channelID) {
        console.log('a user has not moved!')
    }
    if(oldState.channelID != null && newState.channelID != null && newState.channelID != oldState.channelID) {
        console.log('a user switched channels')
    }
    if(oldState.channelID === null) {
        console.log('a user joined!')
    }
    if (newState.channelID === null) {
        console.log('a user left!')
    }
});

票数 1
EN

Stack Overflow用户

发布于 2020-11-19 00:12:19

试试这个片段,请让我知道它是如何为你工作的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
let oldChannel = oldState.voiceChannel;
let newChannel = newState.voiceChannel;

if(oldChannel === undefined && newChannel !== undefined) {
  // User has joined a channel
} else if(newChannel === undefined) {
  // User has left a channel
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64906261

复制
相关文章
如何利用深度学习实现单通道语音分离?
大家好,我是来自大象声科的闫永杰,接下来我会从以下六个方面为大家介绍深度学习在单通道语音分离中的应用:
LiveVideoStack
2019/07/12
1.4K2
如何利用深度学习实现单通道语音分离?
如何利用深度学习实现单通道语音分离?
大家好,我是来自大象声科的闫永杰,接下来我会从以下六个方面为大家介绍深度学习在单通道语音分离中的应用:
LiveVideoStack
2019/07/10
3.8K0
如何利用深度学习实现单通道语音分离?
离开苹果后,Ian Goodfellow 加入了 DeepMind
那Google能居家办公吗? 作者 | 王玥 编辑 | 陈彩娴 上周AI科技评论曾报道,(前)苹果机器学习总监,有“GAN之父”之称的 Ian Goodfellow 因不满苹果取消居家办公,要求重返办公室上班的政策而选择离职。 而今天就传出了这位大佬即将入职Google DeepMind的消息。 图注:Bloomberg消息 据了解,自从疫情爆发,苹果就一直以远程办公的形式推进工作。员工也纷纷表示自己在家中办公效率更高,不仅能减少通勤消耗的精力,还能多出时间照顾家人。但是就在大家习惯这种LWB(Life
AI科技评论
2022/05/19
2810
离开苹果后,Ian Goodfellow 加入了 DeepMind
运算符重载之何时重载为成员函数?何时重载为友元函数?
重载为成员函数: 一般情况下,当一元运算符的操作数,或者二元运算符的左操作数是该类的一个对象时 。 函数原型为:类名&类名::operator运算符(变量表) 例如:用重载函数实现字符串的连接(重载运算符“+”) 在这里插入代码片
Twcat_tree
2022/11/30
5940
Python 检测成员函数、成员变量是否存在的方法
AttributeError: A instance has no attribute 'fun2'
用户9127725
2022/08/08
2.8K0
Gmail 加入语音和视频聊天功能
Google 给 Gmail 加入一个新功能:语音和视频聊天。除了把 Gtalk 上面原有的语音聊天功能迁移到了 Gmail 上之外,还加上视频功能。不过现在要让 Gmail 实现语音和视频聊天,需要安装一个插件。下载安装之后重启浏览器既可以。 重启浏览器进入 Gmail => Setting => Chat 就可以看到语音和视频聊天的设置:
Denis
2023/04/14
1.5K0
Gmail 加入语音和视频聊天功能
Fundebug新增通过链接邀请成员加入项目的功能
此前,如果想邀请成员加入项目,需要输入成员的邮箱,然后点击邀请,Fundebug后台会发送邀请链接到指定的邮箱。
Fundebug
2021/03/05
5460
Fundebug新增通过链接邀请成员加入项目的功能
附带深度语音伪造检测的语音平台
人工智能与机器学习是合成语音的强大工具。无数研究表明,在最先进的模型中,只需几秒钟就可以精确地模仿受试者的声音韵律和语调。例如,百度最新的深度语音服务可以用3.7秒的音频样本克隆一个语音,7月份的一篇研究论文发布的克隆实现只需要大约5秒。
AiTechYun
2019/12/20
2.1K0
附带深度语音伪造检测的语音平台
离开百度加入YC的陆奇,是准备退休了吗?
Y Combinator今日正式宣布进入中国,百度集团前总裁、COO陆奇出任YC 中国创始人及首席执行官,并任YC全球研究院院长。
镁客网
2018/08/16
4580
离开百度加入YC的陆奇,是准备退休了吗?
MySQL 8 复制(七)——组复制基本原理
3. 数据操作语言(Data Manipulation Language,DML)
用户1148526
2022/05/07
1.5K0
MySQL 8 复制(七)——组复制基本原理
MySQL 8 复制(七)——组复制理论基础
MySQL Group Replication(MGR)是MySQL 5.7.17版本引入的一个服务器插件,可用于创建高可用、可扩展、容错的复制拓扑结构。组复制可以在单主模式下操作,其中只有一个服务器接受更新,这个单主是系统自动选举出来的。对于高级用户,也可以部署为多主模式,其中所有服务器都可以接受更新。内置的组成员服务可以在任何给定的时间点保持组的视图一致并可供所有服务器使用。当服务器加入或离开组时,视图也会相应更新。当服务器宕机,故障检测机制会检测到此情况并通知组其视图已更改。这些都是自动进行的。
用户1148526
2019/07/11
1.9K1
MySQL 8 复制(七)——组复制理论基础
何时使用Serverless,何时使用Kubernetes
我经常被问到的一个问题是:我应该使用Serverless还是Kubernetes来构建云原生应用程序?两种计算选项都有利有弊,这取决于您的需求,您应该选择哪种选项。
February
2018/11/23
1.7K0
机器之心「GMIS 2017」嘉宾揭秘:LSTM之父Jürgen Schmidhuber
2017 全球机器智能峰会(GMIS 2017),让我们近距离接触「LSTM 之父」Jürgen Schmidhuber。 2017 全球机器智能峰会(GMIS 2017)是由机器之心主办的全球人工智能盛会,将于 5 月 27 日至 28 日在北京 898 创新空间举行。本次大会将邀请海内外众多嘉宾及机构,权威、系统地介绍机器智能相关技术的前沿研究,探讨如何将技术转化成产品和应用等问题。 接下来,我们将逐一揭晓多位重磅嘉宾,今天带来的是被誉为 LSTM 之父的 Jürgen Schmidhuber。 LST
机器之心
2018/05/07
8600
机器之心「GMIS 2017」嘉宾揭秘:LSTM之父Jürgen Schmidhuber
windows 如何加入域?
下面演示下windows如何加入公司的域。 首先通过计算机的属性进入系统界面,然后点击更改设置。
小蓝枣
2020/09/23
2.5K0
Discord该出现在事件反应工具箱里吗?(IT)
网络安全事件响应团队在通信工具方面有多种选择:微软产品、Slack、Zoom和其他众多工具。有些需要订阅或商业许可证,而另一些则是免费的。有些是专门为事件响应设计的利基工具,有些是通用的业务通信工具,IR团队已经对其进行了调整,以便在网络安全事件中使用。
吴亚芳
2019/12/12
2.1K0
何时应该重构代码?如何重构代码?
日常工作中,相信大家都见过一些看见就想骂人的代码,那么今天呢,我们就来聊聊何时应该重构代码,以及如何重构代码。文章有点长,但是看完一定会有很多收获哦~
kirito-moe
2021/09/08
1.7K0
MySQL索引的分类、何时使用、何时不使用、何时失效?
MySQL索引分为普通索引、唯一索引、主键索引、组合索引、全文索引。索引不会包含有null值的列,索引项可以为null(唯一索引、组合索引等),但是只要列中有null值就不会被包含在索引中。
PHP开发工程师
2021/05/21
8570
MySQL索引的分类、何时使用、何时不使用、何时失效?
工蜂如何添加成员???
腾讯云工蜂如何添加成员? 我在用户管理里面也添加了成员,成员也已经注册到腾讯云了,但是还是没办法添加,在工蜂里面搜索成员也搜索不到,邀请也没地方邀请,搞到这么难用么?,到底怎么玩?
用户1547715
2018/10/18
4.1K6
MySQL 索引的分类、何时使用、何时不使用、何时失效?
blog.csdn.net/weixin_39420024/article/details/80040549
用户1516716
2021/03/23
1K0
点击加载更多

相似问题

如何检测用户加入语音通道?

29

如何离开没有成员的语音通道

111

如何确定用户是否加入/切换/离开了语音通道?

10

如何检测用户是否加入了语音通道?

12

Discordjs加入语音通道并说出一些东西,然后离开语音通道

18
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文