微信小程序预约视频号直播
一、概述
微信小程序提供了可以唤起预约视频号直播弹窗的接口 reserveChannelsLive,该接口接收一个参数 noticeId,通过 getChannelsLiveNoticeInfo 接口获取。因此,过程如下:
查看视频号 id ---finderUserName --> 调用 getChannelsLiveNoticeInfo 接口 ---noticeId --> 调用 reserveChannelsLive 接口 -----> 预约
️ 完整代码实现可以直接看「四、总结」
二、通过「视频号 id 」获取直播预告信息
1、文档

2、调用接口
根据文档获取 视频号 id(finderUserName),调用 getChannelsLiveNoticeInfo 接口,代码如下:
wx.getChannelsLiveNoticeInfo({
finderUserName: 'sphABCDEF123456', // 视频号 id(视频号助手获取)
success: function (res) {
console.log('获取成功:', res);
},
fail: function (res) {
console.error('获取失败:', res);
}
});
3、返回结果
调用接口后,打印结果如下,包含了预约接口需要的 noticeId 以及直播相关的其他信息。


三、通过「预告 id 」预约直播
1、文档
https://developers.weixin.qq.com/miniprogram/dev/api/open-api/channels/wx.reserveChannelsLive.html

2、调用接口
reserveChannelsLive 接口只有一个参数 noticeId,代码如下:
wx.reserveChannelsLive({
noticeId: noticeId,
success: function(reserveRes) {
console.log('预约成功:', reserveRes);
const reserveState = reserveRes.state;
if(reserveState === 6) wx.showToast({title: '预约成功'});
},
});
3、返回结果

返回结果中包含了 state,state 值对应状态如下:
state=1 正在直播中,用户点击“取消"拒绝前往直播
state=2 正在直播中,用户点击“允许“前往直播
state=3 预告已取消
state=4 直播已结束
state=5 用户此前未预约,在弹窗中未预约直播直接收起弹窗
state=6 用户此前未预约,在弹窗中预约了直播
state=7 用户此前已预约,在弹窗中取消了预约
state=8 用户此前已预约,直接收起弹窗
state=9 弹窗唤起前用户直接取消
state=10 直播预约已过期
四、总结
index.wxml
<view class="invite-btn" bindtap="onBookLive">立即预约</view>
index.js
onBookLive: function () {
wx.getChannelsLiveNoticeInfo({
finderUserName: 'sphABCDE1234567', // 视频号 id
success: function (res) {
console.log('获取成功:', res);
const noticeId = res.noticeId;
wx.reserveChannelsLive({
noticeId: noticeId,
success: function (reserveRes) {
console.log('预约成功:', reserveRes);
const reserveState = reserveRes.state;
if (reserveState === 6) wx.showToast({ title: '预约成功' });
},
});
},
fail: function (res) {
console.error('获取失败:', res);
}
});
}
END-----------------------------------
微信小程序预约视频号直播的更多相关文章
- 微信小程序+腾讯云直播的实时音视频实战笔记
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 腾讯技术分享:微信小程序音视频与WebRTC互通的技术思路和实践
1.概述 本文来自腾讯视频云终端技术总监rexchang(常青)技术分享,内容分别介绍了微信小程序视音视频和WebRTC的技术特征.差异等,并针对两者的技术差异分享和总结了微信小程序视音视频和WebR ...
- 腾讯技术分享:微信小程序音视频技术背后的故事
1.引言 微信小程序自2017年1月9日正式对外公布以来,越来越受到关注和重视,小程序上的各种技术体验也越来越丰富.而音视频作为高速移动网络时代下增长最快的应用形式之一,在微信小程序中也当然不能错过. ...
- 微信小程序(应用号)开发体验
昨天微信小程序(应用号)内测的消息把整个技术社区炸开了锅, 我也忍不住跟了几波,可惜没有内测资格,听闻破解版出来了, 今天早上就着原来的项目资源试开发了一下,总结一下体验. 总体体验 开发效率高,6: ...
- 微信小程序(应用号)开发资源汇总整理 - 一直更新中
开源项目 wechat-weapp-gank - 微信小程序版Gank客户端 wechat-dribbble - 微信小程序-Dribbble wechatApp-demo - 微信小程序 DEMO ...
- 微信小程序、应用号、订阅号、服务号、企业号小总结
微信小程序是现在微信推出的一个新的项目,但是很多人都不是很清楚微信小程序是怎么一回事,不明白到底怎样分别微信小程序和别的公众号.订阅号等的区别,那么让小编来给你介绍一下. 微信小程序目前是内侧阶段,是 ...
- 微信小程序自运营器 微信小程序自动运营器(让你的微信小程序,公众号零运营成本,24小时全自动运营)
自动发单,自动评价,自动评论,自动推广 微信小程序自运营器 微信小程序自动运营器(让你的微信小程序,公众号零运营成本,24小时全自动运营) 我们会根据你的微信公众号或微信小程序定制开发带有一定AI智 ...
- 微信小程序(应用号)开发资源汇总整理
开源项目 wechat-weapp-gank - 微信小程序版Gank客户端 wechat-dribbble - 微信小程序-Dribbble wechatApp-demo - 微信小程序 DEMO ...
- 微信小程序存放视频文件到阿里云用到算法js脚本文件
peterhuang007/weixinFileToaliyun: 微信小程序存放视频文件到阿里云用到算法js脚本文件 https://github.com/peterhuang007/ ...
- 神技!微信小程序(应用号)抢先入门教程(附最新案例DEMO-豆瓣电影)持续更新
微信小程序 Demo(豆瓣电影) 由于时间的关系,没有办法写一个完整的说明,后续配合一些视频资料,请持续关注 官方文档:https://mp.weixin.qq.com/debug/wxadoc/de ...
随机推荐
- 【4】Spring框架的起源
在我们的<Java Spring框架入门教程>中对 Spring 框架进行了十分详尽的介绍和剖析,但在学习 Spring Boot 之前,在这里回顾一下 Spring 是怎么出现的. Sp ...
- 力扣206(java&python)-反转链表(简单)
题目: 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表. 示例1: 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 示例2: 输入:head = [1,2] ...
- Serverless 工程实践 | Serverless 应用开发观念的转变
简介: Serverless 架构带来的除了一种新的架构.一种新的编程范式,还包括思路上的转变,尤其是开发过程中的一些思路转变.有人说要把 Serverless 架构看成一种天然的分布式架构,需要用 ...
- dotnet 世界猜测 随机数的小测试
这是一个半技术向的博客,主题来源于我读过的某本书的片段,这是一个稍稍有些前置知识的故事,主题的大概内容就是假定世界存在某个规则序列,通过一代代的探索,可以获取到此序列的内容.本文将模拟此情形,写一个随 ...
- WPF 通过 RawInput 获取触摸消息
触摸在 Windows 下属于比较特殊的输入,不同于键盘和鼠标,键盘和鼠标可以通过全局 Hook 的方式获取到鼠标和键盘的输入消息.而触摸则没有直接的 Hook 的方法.如果期望自己的应用,可以在没有 ...
- spannerlib优雅的go异常处理
蹩脚的go 异常处理 一般写go的人,如果他不是写算法,正常写业务代码的话,可能都会为优雅的异常处理而烦恼,因为脑子抽筋的go设计者们,总是感觉语法糖是一种很低级的东西.但是在我们大多数公司的业务逻辑 ...
- HarmonyOS 应用生命周期有哪些? 按返回键会调用哪些生命周期?
UIAbility 生命周期: onCreate :页面初始化,变量定义,资源加载. onWindowStageCreate:设置 UI 界面加载.设置 WindowStage 的事件订阅. onFo ...
- R4_Elasticsearch Mapping parameters
Elasticsearch的Mapping,定义了索引的结构,类似于关系型数据库的Schema. Mapping Type:每个索引都拥有唯一的 mapping type,用来决定文档将如何被索引.从 ...
- ruby rails 批量插入数据,bulk_insert-----Gem包使用
Gemfile文件里添加 gem 'bulk_insert' #批量插入 命令行执行安装依赖 bundle install 数据源 ["1.180.3.187", 161, 260 ...
- golang、JS AES(CBC模式)加密解密兼容
目录 golang.JS AES(CBC模式)加密解密兼容 golang代码 前端javascript的代码 aes.js 原文地址: https://www.cnblogs.com/haima/p/ ...