泛播mediaserver api客户端的python3引用实现

mediaserver-api-client的Python项目详细描述


PyPI - Python VersionPyPI

MediaServer客户端

泛播mediaserver api客户端的python3引用实现。

重要

对于生产使用,建议使用名为“stable”的分支。“主”分支用于开发。

客户端类实例化

客户端类(ms_client.client.MediaServerClient)有两个参数:

  • local_conf:这个参数可以是dict、path(str对象)或unix用户(例如unix:msuser)。默认值是None,这意味着没有配置。
  • setup_logging:此参数必须是布尔值。如果设置为True,将配置到控制台的日志记录。默认值是True

有关老客户的说明

如果您正在使用此客户端的第一个版本(名为mediaserver_api_client.py的单个文件),请执行以下步骤更新您的客户端:

  • 删除旧的客户端文件(mediaserver_api_client.py)。
  • 使用setup.py安装新客户端。
  • 替换MediaServerClient的导入路径(请参见示例)。
  • MediaServerClient初始化中将名为config_dictconfig_path的参数替换为local_conf
  • MediaServerClient.config替换所有出现的MediaServerClient.conf

示例

启动/停止活动

fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')response=msc.api('/lives/prepare',method='post')ifresponse['success']:oid=response['oid']rtmp_uri=response['publish_uri']print(oid,rtmp_uri)print(msc.api('/lives/start',method='post',data={'oid':oid}))print(msc.api('/lives/stop',method='post',data={'oid':oid}))

删除所有用户功能

fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')defremove_all_users():print('Remove all users')users=msc.api('/users')['users']foruserinusers:msc.api('/users/delete',method='get',params={'id':user['id']})

添加带有视频的媒体,使其立即发布

fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')print(msc.add_media('Test multichunk upload mp4',file_path='test.mp4',validated='yes',speaker_email='user@domain.com'))

创建用户个人频道并上传到其中

fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')personal_channel_oid=msc.api('/channels/personal/',method='get',params={'email':'test@test.com'}).get('oid')respone_like={'slug':'testtestcom_05881','oid':'c125855df7d36iudslp3','dbid':113,'title':'test@test.com','success':True}ifpersonal_channel_oid:print('Uploading to personal channel %s'%personal_channel_oid)print(msc.add_media('Test multichunk upload mp4',file_path='test.mp4',validated='yes',speaker_email='user@domain.com',channel=personal_channel_oid))

添加压缩文件

的媒体
fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')print(msc.add_media('Test multichunk upload zip',file_path='/tmp/test.zip'))print(msc.add_media(file_path='test.mp4'))

添加用户

fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')print(msc.api('users/add/',method='post',data={'email':'test@test.com'}))

使用csv文件添加用户;示例文件(应包括头):

users.csv:

Firstname;Lastname;Email;Company
Albert;Einstein;albert.einstein@test.com;Humanity
fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')msc.import_users_csv('users.csv')

添加注释

fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')print(msc.api('annotations/post',params={'oid':'v125849d470d7v92kvtc','time':1000}))

获取章节

fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')print(msc.api('annotations/chapters/list',params={'oid':'v125849d470d7v92kvtc'}))

获取注释类型列表并打印章节id

fromms_client.clientimportMediaServerClientmsc=MediaServerClient(local_conf='your-conf.json')response=msc.api('annotations/types/list',params={'oid':'v125849d470d7v92kvtc'})forainresponse['types']:ifa['slug']=='chapter':print(a['id'])

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
安卓为什么Java AudioEffect不支持双簧管?   增加内存后出现java IntelliJ堆大小错误   在unix/linux中工作的java中将unicode字符串转换为ASCII   java是否缺少正确对齐输出的值?   java Spring 3 MVC:动态表单中的onetomany(创建/更新时添加/删除)   java在接口中创建两个通用参数   lambda使用Java 8从嵌套列表中使用forEach查找项的替代方法是什么?   Java正则表达式匹配10位电话号码,中间有空格   linux将log4j外部化。使用命令行Java的属性文件   带有SSL的java简单RMI服务器   java无法为事务[…]打开JPA EntityManager无法获取驱动程序类“null”和URL“null”的连接   Android设备上的java Oauth Foursquare   for循环的ImageButton名称的java骰子模拟浓缩   java有没有简单的1d条形码阅读器?   如何在调用resultset后解决“无效字符串或缓冲区长度”。从java到访问mdb的getString()连接   在Java8中,是否可以使用JVM参数来控制何时(或在什么条件下)卸载类?