停止混流接口 请注意 : 该功能需要联系 ZEGO 技术支持开通 1 接口调用说明 http 请求方式 : POST/FORM, 需使用 https 正式环境地址 access_token=access_token (http

Similar documents
获取 Access Token access_token 是接口的全局唯一票据, 接入方调用各接口时都需使用 access_token 开发者需要进行妥善保存 access_token 的存储至少要保留 512 个字符空间 access_token 的有效期目前为 2 个小时, 需定时刷新, 重复

获取 Access Token 1 基础概念 access_token 是接口的全局唯一票据, 接入方调用各接口时都需使用 access_token 开发者需要妥善保存,access_token 的存储至少要保留 512 个字符空间 access_token 的有效期目前为 2 个小时, 需定时刷新


新・解きながら学ぶJava

<4D F736F F D20C8EDBCFEB9A4B3CCCFEEC4BFD0E8C7F3B5F7D1D0B1A8B8E6B7B6B1BE>

要 及 时 为 入 党 积 极 分 子 确 定 两 名 培 养 联 系 人, 进 行 联 络 帮 助 要 定 期 ( 每 季 度 至 少 一 次 ) 听 取 培 养 联 系 人 的 思 想 和 工 作 情 况 汇 报, 及 时 完 成 入 党 积 极 分 子 登 记 表 ( 见 附 件 2) 的 填

速递易开放平台认证规范

JavaIO.PDF


Microsoft Word - 第3章.doc

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

发展党员材料填写参考(上网).doc

FileMaker 15 ODBC 和 JDBC 指南

untitled

09 (File Processes) (mkdir) 9-3 (createnewfile) 9-4 (write) 9-5 (read) 9-6 (deletefile) 9-7 (deletedir) (Exercises)

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

untitled

投 身 基 层 建 功 立 业 政 治 部 主 任 李 继 耐 上 将 的 批 示 ( 照 片 ) 国 防 生, 梦 想 之 翼 能 飞 多 远? 对 清 华 大 学 国 防 生 走 基 层 之 路 的 追 踪 与 思 考 清 华 学 子 国 防 生 岱 天 荣 摄 - 1 -

FileMaker 16 ODBC 和 JDBC 指南

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

untitled

EJB-Programming-4-cn.doc

《大话设计模式》第一章

Chapter 9: Objects and Classes

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

}; "P2VTKNvTAnYNwBrqXbgxRSFQs6FTEhNJ", " " string imagedata; if(0!= read_image("a.jpg",imagedata)) { return -1; } string rsp; ytopen_sdk m_sd

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6:

台中商銀流程圖

Microsoft Word - 01.DOC

土地利用现状标准_0305_.PDF

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO

untitled

chp6.ppt

民間論壇各單位書面資料

来 正 式 组 织 关 系 转 出 后 未 收 到 组 织 关 系 介 绍 信 回 执 的 党 员 排 查 的 主 要 任 务 是, 核 查 党 员 身 份 信 息, 摸 清 流 动 党 员 底 数, 理 顺 党 员 组 织 关 系, 健 全 完 善 党 员 档 案, 对 与 党 组 织 失 去 联

エスポラージュ株式会社 住所 : 東京都江東区大島 東急ドエルアルス大島 HP: ******************* * 关于 Java 测试试题 ******

六盘水人资社保发〔2013〕137号

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌

<4D F736F F D D6D0B9FAB5D8D6CAB4F3D1A7BFC6D1D0BEADB7D1D3D0B9D8D6C6B6C82D48442E646F63>

被当作鬼的人.doc

Java

3.1 num = 3 ch = 'C' 2

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

<4D F736F F D20B1D0A87CB3A1C5E9A87CB870B8C9A755B1C0B0CABEC7AED5C5E9A87CB942B0CAB56FAE69B867B64FADECAB682E646F6378>

生物学拔尖人才培养规划

目 录 总 览... 1 一 现 场 测 试 工 作 流 程 图... 1 二 现 场 测 试 工 作 人 员 及 主 要 职 责... 2 第 一 部 分 测 试 程 序 与 要 求... 3 一 领 取 试 卷... 3 二 学 生 检 录... 4 三 学 生 数 学 测 试... 6 ( 一

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

云数据库 RDS SDK

Chapter 9: Objects and Classes

untitled

术 改 造 项 目 审 批 方 式 改 革 的 通 知 ( 浙 政 发 号 ), 现 就 做 好 审 批 方 式 改 革 实 施 工 作 通 知 如 下 : 一 适 用 范 围 审 批 方 式 改 革 适 用 范 围 为 工 业 企 业 零 土 地 技 术 改 造 项 目, 即 工

untitled

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

BPS6.0 Web服务集成和短流程功能使用手册

untitled

Guava学习之Resources

桂城街道2014年公办小学入学指南

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

Microsoft PowerPoint ShengYang Presentation Slides_240609

个 小 小 的 乡 下 人 木 匠 的 儿 子, 竟 然 有 这 么 大 的 力 量 其 实 就 是 这 点, 祂 活 出 来 的 那 种 爱, 是 世 界 上 没 有 的 祂 活 出 来 的 爱 是 世 界 上 的 人 都 需 要 的, 但 却 是 人 人 在 这 个 世 界 上 都 得 不 到

2013年度西藏自治区教育厅

實用文格式大全.doc

薛 秦 高 继 宁 宋 明 锁 文 洪 梁 瑞 敏 贾 跃 进 内 蒙 古 自 治 区 (3 人 ) 琪 格 其 图 米 子 良 赵 震 生 辽 宁 省 (8 人 ) 田 素 琴 白 凤 鸣 肖 瑞 崇 黄 恩 申 白 长 川 杨 世 勇 李 敬 林 王 秀 云 吉 林 省 (5 人 ) 赵 继 福

untitled

用手機直接傳值不透過網頁連接, 來當作搖控器控制家電 ( 電視遙控器 ) 按下按鍵發送同時會回傳值來確定是否有送出 問題 :1. 應該是使用了太多 thread 導致在傳值上有問題 2. 一次按很多次按鈕沒辦法即時反應

然后打开任意网站, 会出现 Authentication Required 窗口 ( 如下图示 ), 输入代理的用户名和密码, 确定即可 可点击 记住密码 按钮, 这样下 次就不用再次重复输入用户名和密码 2. IE/360 依次点击打开 菜单 -> 工具 -> Internet 选项 -> 连接

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题

威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 號 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

条 件 的 限 制, 可 在 广 西 参 加 普 通 高 考, 特 指 不 受 学 籍 户 籍 迁 入 的 年 限 限 制, 但 在 高 考 报 名 时 考 生 的 学 籍 户 籍 必 须 已 迁 入 广 西 二 外 来 人 员 需 要 提 供 的 审 查 材 料 ( 一 ) 按 照 自 治 区 招

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

第3章.doc

Microsoft Word - ch04三校.doc

Swing-02.pdf

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课

Microsoft Word - Broker.doc

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票

D getinitparameternames() 9 下 列 选 项 中, 属 于 Servlet API 中 提 供 的 request 对 象 的 包 装 类 的 是 ( ) A HttpServletRequestWrapper B HttpServletRequest C HttpServ


基于CDIO一体化理念的课程教学大纲设计

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

南華大學數位論文

Microsoft Word - 会协(2016)16号.doc

Microsoft Word - Learn Objective-C.doc

untitled

1.5招募说明书(草案)

電機工程系認可證照清單 /7/1

untitled

秘密

E11701


EJB-Programming-3.PDF

优斗士微分销产品使用指南

<4D F736F F D20C8EDC9E82DCFC2CEE7CCE22D3039C9CF>

2 Java 语 言 程 序 设 计 教 程 简 单 性 Java 语 言 的 语 法 与 C 语 言 和 C++ 语 言 很 接 近, 使 得 大 多 数 程 序 员 很 容 易 学 习 和 使 用 Java 另 一 方 面,Java 丢 弃 了 C++ 中 很 少 使 用 的 很 难

使用MapReduce读取XML文件

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

壹、摘 要

Transcription:

停止混流接口 请注意 : 该功能需要联系 ZEGO 技术支持开通 1 接口调用说明 http 请求方式 : POST/FORM, 需使用 https 正式环境地址 https://webapi.zego.im/cgi/stop-mix? access_token=access_token (https://webapi.zego.im/cgi/stop-mix? access_token=access_token) 测试环境地址 https://testwebapi.zego.im/cgi/stop-mix? access_token=access_token (https://testwebapi.zego.im/cgi/stop-mix? access_token=access_token) 2 参数说明 是 否 必 数据类 参数名 须 型 说明 access_token 是 string 调用接口凭证 signature 是 string 签名摘要

id_name 是 string 用户标识 live_channel 是 string 直播频道 mixurl 是 string 需要停止混流的地址 stream_id 是 string 需要停止混流的流名 seq 否 int 请求序号 task_id 否 string 混流任务 id, 多路混流输出必须填写 ( 客户自定义, 务必保证唯一 ) 3 数据示例 { "signature": "",// md5(appid+timestamp+secret) "id_name": '', // 用户标识 "live_channel": '', // 用户标识 "mixurl":"rtmp://rtmp.dndemo.zego.im/zego/mix_stream", // 如果混流开始接口 MixOutput 传的是 mixurl, 这里就不能为空, 否则为空字符串 "stream_id":"",// 需要停止混流的流名 "task_id":"mult_output_task_id" // 混流任务 id, 多路混流输出必须填写 ( 客户自定义, 务必保证唯一 ) 4 返回说明

{ code : 0 5 示例代码 5.1 Java 示例代码 import java.io.*; import java.net.*; import java.util.*; import java.security.*; import com.alibaba.fastjson.*; public class StopMixStream { // 发送 post 请求 public static String sendpost(string url, String param) { String result = ""; try { URL realurl = new URL(url); URLConnection conn = realurl.openconnection(); conn.setdooutput(true); conn.setdoinput(true); try ( PrintWriter out = new PrintWriter(conn.getOutputStre am()) ){ out.print(param); out.flush(); try ( BufferedReader in = new BufferedReader(new InputStre amreader(conn.getinputstream(), "utf-8"))

){ String line; while ((line = in.readline())!= null) { result += "\n" + line; catch (Exception e) { System.out.println(e); e.printstacktrace(); return result; // 生成 md5 串 public static String getmd5str(string appid, String timestamp, Strin g serversecret) { String plaintext = appid + timestamp + serversecret; String md5str = ""; StringBuffer hexstr = new StringBuffer(); try { MessageDigest md = MessageDigest.getInstance("MD5"); byte[] plaintextbyte = plaintext.getbytes("utf-8"); byte[] md5_byte = md.digest(plaintextbyte); int num; for (int i = 0; i < md5_byte.length; i++) { num = md5_byte[i]; if(num < 0) { num += 256; if(num < 16){ hexstr.append("0"); hexstr.append(integer.tohexstring(num)); catch (Exception e) { System.out.println("erro md5 creat!!!!"); e.printstacktrace(); md5str = hexstr.tostring(); return md5str;

public static void main(string args[]) throws UnsupportedEncodingExc eption{ // zego 分配的 appid String appid = "123456789"; // 从 zego 获取的 serversecret String serversecret = "00000000000000000000000000000000"; // 发起混流的 id_name String id_name = "xxx"; // 混流的 roomid String live_channel = "xxxx"; // 混流输出的流 id String outputstreamid = "os"; // 混流输出的 cdn 地址 String cdnurl = "rtmp://127.0.0.1/xxx/"; // md5 加密所需的时间戳 String timestamp = Long.toString(System.currentTimeMillis()/1000 ); // 请求结束混流的 url, 注意正式环境与测试环境的区别, url 中包含的 ac cess_token 参考 " 获取 Access Token" String stopmixstream_url = "xxxxxx"; // 获取 md5 字符串 String md5str = getmd5str(appid, timestamp, serversecret); // 生成请求结束混流的表单数据 String post_form_str = "appid=%s&" + "id_name=%s&" + "signature=%s&" + "live_channel=%s&" + "stream_id=%s&" + "mixurl=%s"; post_form_str= String.format(post_form_str, appid, id_name, md5str, live_channel, outputstreamid, cdnurl + outputstreamid); // 发送开始请求结束混流的 url 请求

String ret = StopMixStream.sendPost(stopMixStream_url + access_t oken, post_form_str); 5.2 php 示例代码 <?php $token = "xxxxx"; $url = "https://webapi.zego.im/cgi/start-mix?access_token=". $token; // 生成请求数据 $formdata = [ "appid" => 123456789, "id_name" => "xxx", "signature" => "xxxxxx", // appid 时间戳 和 secret 生成 md5 码 "live_channel" => "xxxx", "stream_id" => "xxxxx", "mixurl" => "xxxx" // 混流推流地址 ]; // 请求结束混流接口 $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($formdata)); $result = curl_exec($curl); curl_close($curl); $result = json_decode($result, true); print_r($result);

5.3 python 示例代码 from urllib import request, parse import json import time import hashlib # 初始化所需的字段, 以下是业务测试时需要修改的部分 # 混流输出的流 id, 业务自定义 outputstreamid = "xxxx" # 混流输出的 cdn 地址 cdnurl = "rtmp://127.0.0.1/xxx/" # 请求停止推流的 url, 注意正式环境和测试环境的区别, url 中包含的 access_tok en 参考 " 获取 Access Token" request_mixstreamstop_url = "xxxxxxxxx" # appid + str(int(time.time())) + serversecret 的 md5 加密 signature_md5 = "zzzzz" # 构造 post 请求结束混流所需的表单数据 form_data = parse.urlencode({ 'appid': "123456789", # zego 给业务分配的 appid 'id_name': "ppppp", # 发起混流的 userid 'signature': signature_md5, 'live_channel': "qqqqq", # 指定混流的 roomid 'mixurl': cdnurl+outputstreamid, 'streamid': outputstreamid ) # 请求结束混流 with request.urlopen(request.request(request_mixstreamstop_url),data=for m_data.encode('utf-8')) as f: respond_str = f.read().decode("utf-8")