前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >IM web Demo邀请端挂断报错问题规避

IM web Demo邀请端挂断报错问题规避

原创
作者头像
良人
发布2022-01-29 16:54:51
4810
发布2022-01-29 16:54:51
举报

当前从官网下载的IM web端Demo发出邀请然后挂断的话会报如下图这个错误,从而导致挂断异常的情况,那么这个问题是怎么出现以及怎么规避呢?

邀请端挂断异常
邀请端挂断异常

原因分析

如下图通过打印res的值我们知道trtcCalling hangup 方法返回的是一个没有返回值的promise,后面取值的话会报错,导致异常

打印res值
打印res值
返回undefined
返回undefined

那么如果我们把这个取值的地方注释掉是否是正常的呢,经过测试。注释掉是可以正常挂断,但是有个问题就是,挂断后的页面没有展示挂断(取消通话)的消息

注释掉取值
注释掉取值
消息展示异常
消息展示异常

通过注释掉的代码逻辑可以看到,之所以取这个值是想把这个消息pusher到消息列表。但是目前没返回值怎么获取并添加进去呢。

规避方案

目前通过取值好像没太好办法,只能曲线救国了。想到只要挂断信令成功发出后,重新拉取消息列表肯定是可以拉到的。于是刷新了下页面重新登录后拉取消息列表,果然拉到了。

退出登录重新拉取消息列表,拉取正常
退出登录重新拉取消息列表,拉取正常

到这里也不卖关子了,挂断后直接调getMessageList由于消息列表没更新所以直接调用会报’没有更多消息‘的提示,经过测试通过在挂断成功后的回调里加上this.$store.dispatch('checkoutConversation', this.currentConversation.conversationID) 挂断后消息展示正常。

添加规避消息展示异常逻辑
添加规避消息展示异常逻辑
消息展示正常
消息展示正常

至此,这个问题就完美规避了,如果觉得对你有帮助,麻烦点个赞!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原因分析
  • 规避方案
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档