接口入参返回值说明文档

环境地址

日常环境: https://www-daily.youngget.com
预发环境:https://www-pre.youngget.com

参数格式说明

  1. {
  2. name: string // 参数名:name ; 类型:string; 必填参数
  3. age?: number // 参数名:age ; 类型:number; 可选参数
  4. }

返回格式:

success:请求是否成功
content:返回结果(预期返回值or错误信息)
errorLevel: 错误级别
errorCode:错误类型
errorMsg:错误信息

请求成功:

{
“success”: true,
“content”: {
“room_info”: [
{
“id”: “1ec81b1fd79011e89fd50506ce178f4d”,
“room_id”: “12e1a5d4d79011e89fd50506ce178f4d”,
“room_img”: “https://yg-basedata.oss-cn-hangzhou.aliyuncs.com/onlinePicture/1542182318491-6“,
“room_no”: “1006”,
“name”: “房间名称1006”
}
]
}
}

请求失败:

示例:
{
“success”: false,
“content”: {
“errors”: {
“id”: [
“The id field is required.”
]
}
},
“errorLevel”: “error”,
“errorCode”: “ERR$PARAM”,
“errorMsg”: “参数错误”
}

发送短信sdk

sdkNum:
0:阿里云SMS
1:网易

音视频接口

1、初始化房间

请求路径:/rest/room/init

  1. interface IN {
  2. uid: string // 用户ID
  3. roomid: string // 房间ID
  4. }
  5. interface OUT {
  6. code: number // 状态码
  7. member: string[] // 房间内成员
  8. online: string[] // 连麦列表
  9. option: {
  10. account: string // 房间账号
  11. appkey: string // key值
  12. token: string // token值
  13. }
  14. queue: string[] // 排麦数组
  15. role: number // 用户在房内的角色
  16. roomKine: string // 房间类型
  17. room_no: string // 房间账号
  18. self: { // 有关自己的信息
  19. account_no: string // 账号
  20. avatar: string // 头像
  21. id: string // ID
  22. nick_name: string // 昵称
  23. role: string // 用户在房内的角色
  24. roomid: string // 房间ID
  25. }
  26. }

2、获取连麦列表

请求路径:/rest/room/linkMicrophoneList

  1. interface IN {
  2. roomid: string // 房间ID
  3. }
  4. interface OUT {
  5. sucess:boolean // 请求状态
  6. code: number // 状态码
  7. online:{
  8. uid: string // 用户id
  9. SN: number // 麦号
  10. avatar: string // 用户头像
  11. account_no: string // 用户账号
  12. nick_name: string // 用户昵称
  13. role: number // 角色
  14. }[]
  15. }

3、上麦

请求路径:/rest/room/openMicrophone

  1. interface IN {
  2. uid: string // 用户ID
  3. roomid: string // 房间ID
  4. room_no: string // 房间账号
  5. SN: string // 麦序号
  6. }
  7. interface OUT {
  8. success: boolean // 请求的处理状态
  9. code: number // 返回的是麦序号
  10. }

4、下麦

请求路径:/rest/room/closeMicrophone

  1. interface IN {
  2. uid: string // 用户ID
  3. roomid: string // 房间ID
  4. }
  5. interface OUT {
  6. sucess: boolean // 请求状态
  7. code: number // 状态码
  8. }

5、从连麦列表中删除

请求路径:/rest/room/deleteFromList

  1. interface IN {
  2. uid: string // 用户ID
  3. roomid: string // 房间ID
  4. targetUid: string // 被删除的用户ID
  5. }
  6. interface OUT {
  7. sucess: boolean // 请求状态
  8. code: number // 状态码
  9. }

6、踢麦

请求路径:/rest/room/forceDisconnect

  1. interface IN {
  2. uid: string // 用户ID
  3. roomid: string // 房间ID
  4. room_no: string // 房间账号
  5. SN: string // 麦序号
  6. kickedid: string // 被踢麦者ID
  7. }
  8. interface OUT {
  9. sucess: boolean // 请求状态
  10. code: number // 状态码
  11. }

7、抱麦

请求路径:/rest/room/inviteLinkMicrophone

  1. interface IN {
  2. uid: string // 用户ID
  3. roomid: string // 房间ID
  4. sm_uid: string // 上麦用户ID
  5. xm_uid: string // 下麦用户ID
  6. sm_SN: string // 上麦麦序号
  7. }
  8. interface OUT {
  9. sucess: boolean // 请求状态
  10. code: number // 状态码
  11. }

8、邀请抱麦结果

请求路径:/rest/room/inviteAnswer

  1. interface IN {
  2. uid: string // 用户ID
  3. roomid: string // 房间ID
  4. isAgree: boolean // 是否同意
  5. SN: string // 麦序号
  6. bmuid: string // 被抱麦的用户
  7. }
  8. interface OUT {
  9. sucess: boolean // 请求状态
  10. code: number // 状态码
  11. }

9、上/排麦

请求路径:/rest/room/openOrWaitMicrophone

  1. interface IN {
  2. uid: string // 用户ID
  3. roomid: string // 房间ID
  4. }
  5. interface OUT {
  6. sucess: boolean // 请求状态
  7. code: number // 状态码
  8. }

10、房间公告

请求路径:/rest/room/roomNotice

  1. interface IN {
  2. uid: string // userid
  3. roomid: string // 房间ID
  4. }
  5. interface OUT {
  6. sucess: boolean // 请求处理是否成功
  7. code: number //
  8. data: { // 请求返回的内容
  9. notice: string // 房间公告
  10. notice_url // 房间公告链接
  11. }
  12. }

首页接口

1、推荐教练

请求路径:/rest/home/recommendCoach

  1. interface IN {
  2. id: string // 推荐表自增id
  3. }
  4. interface OUT {
  5. room_id: string // 房间id
  6. room_img: string // 房间图片
  7. nick_name: string // 用户(教练)昵称
  8. avatar: string // 教练头像
  9. user_account: number // 教练账号
  10. desc: string // 推荐介绍
  11. }

2、推荐课程

请求路径:/rest/home/recommendCourse

  1. interface IN {
  2. id: string // 推荐表自增id
  3. }
  4. interface OUT {
  5. room_id: string // 房间id
  6. room_no: number // 房间账号
  7. room_name: string // 房间名称
  8. room_img: string // 房间图片
  9. desc: string // 推荐介绍
  10. }

3、推荐房间(待定)

请求路径:/rest/home/recommendRoom

个人中心接口

1、个人中心(获取个人资料)

请求路径:/rest/ucenter/userCenter/userCenter

  1. interface IN {
  2. id: string // 用户ID
  3. }
  4. interface OUT {
  5. avatar: string // 头像图片url
  6. account_no: number // 用户账号,
  7. nick_name: string // 昵称
  8. mobile: string // 手机号
  9. birthday: string // 生日
  10. sex: number // 性别
  11. area_code: string // 地区国标编码
  12. sign: string // 签名
  13. type: number // 用户类型
  14. }

2、保存个人资料(更新)

请求路径:/rest/ucenter/userCenter/savePersonalInfo

  1. interface IN {
  2. id: string // 用户ID
  3. account_no: number // 用户账号
  4. nick_name: string // 昵称
  5. birthday: string // 生日
  6. sex: number // 性别
  7. area_code: string // 地区国标编码
  8. detailed_address: string // 详细地址
  9. }

3、修改密码

请求路径:/rest/ucenter/userCenter/changePassword

  1. interface IN {
  2. id: string // 用户ID
  3. code: string // 验证码
  4. firstPassword: string // 第一个密码
  5. secondPassword: string // 第二个密码
  6. }

4、修改手机号

请求路径:/rest/ucenter/userCenter/changePhone

  1. interface IN {
  2. id: string // 用户ID
  3. newMobile: string // 新手机
  4. newMobileCode: string // 新手机验证码
  5. }

5、获取手机号

请求路径:/rest/ucenter/userCenter/getPhone

  1. interface IN {
  2. id: string // 用户ID
  3. }
  4. interface OUT {
  5. mobile: string // 手机号
  6. }

6、修改头像

请求路径:/rest/ucenter/userCenter/user/headerPortrait

  1. interface IN {
  2. id: string // 用户ID
  3. account_no: number // 用户账号
  4. avatar: string // 头像地址
  5. }

7、生成oss密钥

请求路径:/rest/ucenter/userCenter/ossGet

  1. interface IN {
  2. }
  3. interface OUT {
  4. OSSAccessKeyId: string // key值
  5. host: string // host
  6. policy: string // 生效时段
  7. signature: string // 秘钥
  8. saveName: number // 上传文件名
  9. startsWith: string // 上传路径
  10. }

登录注册接口

1、注册

请求路径:/rest/ucenter/identity/register

  1. // 输入定义
  2. interface IN {
  3. phone: string // 手机号
  4. code: string // 验证码
  5. password: string // 密码
  6. }
  7. // 输出定义
  8. interface OUT {
  9. id: string // 用户ID
  10. account_no: number // 用户账号
  11. avatar: string // 头像
  12. }

2、账号/手机号密码登录

请求路径:/rest/ucenter/identity/loginByPassword

  1. interface IN {
  2. account: number // 账号
  3. password: string // 密码
  4. }
  5. interface OUT {
  6. account_no: number // 用户账号
  7. avatar: string // 头像图片url
  8. }

3、手机号验证码登录

请求路径:/rest/ucenter/identity/loginByCode

  1. interface IN {
  2. mobile: string // 手机号
  3. code: string // 验证码
  4. }
  5. interface OUT {
  6. account_no: number // 用户账号
  7. avatar: string // 头像图片url
  8. }

4、登出

请求路径:/rest/ucenter/identity/logOut

  1. type IN = void

5、忘记密码

请求路径:/rest/ucenter/identity/forgetPassword

  1. interface IN {
  2. mobile: string // 手机号
  3. code: string // 验证码
  4. firstPassword: string // 密码
  5. secondPassword: string // 确认密码
  6. }
  7. type OUT = void

6、注册获取验证码

请求路径:/rest/ucenter/identity/registerGetCode

  1. interface IN {
  2. phone: string // 手机号
  3. sdkNum: number // 第几次发送
  4. }
  5. type OUT = void

7、登录获取验证码

请求路径:/rest/ucenter/identity/loginGetCode

  1. interface IN {
  2. phone: string // 手机号
  3. sdkNum?: number // 选择sdk
  4. }
  5. type OUT = void

8、修改手机号获取验证码

请求路径:/rest/ucenter/identity/changePhoneGetCode

  1. interface IN {
  2. sdkNum: number // 选择sdk
  3. }
  4. type OUT = void

9、修改密码获取验证码

请求路径:/rest/ucenter/identity/changePasswordGetCode

  1. interface IN {
  2. sdkNum: number // 选择sdk
  3. }
  4. type OUT = void

CODE整理:

  1. SUCCESS: 1, // 执行成功
  2. FAILED: -1, // 执行失败
  3. OPENWAIT_VISITOR: -662, // 上排麦-用户为游客
  4. OPENWAIT_NOT_ALLOW: -1, // 上排麦-不允许上排麦
  5. ANSWER_NOT_AGREE: -22, // 抱麦答复-不同意被抱上麦
  6. FORCE_NOT_ON: -2, // 提麦-用户当前不在麦上
  7. INIT_NOT_PRIVATE: -262, // 房间初始化-非教学房间,不予处理
  8. INIT_NOT_EXIST: -162, // 房间初始化-redis缓存中无此房间
  9. CLOSE_ON_LINK_LIST: 1, // 下麦-在连麦队列
  10. CLOSE_REMOVE: 2, // 下麦-从列表移除
  11. CLOSE_ON_WAIT_LIST: 3, // 下麦-在排麦队列
  12. OPEN_ALREADY: -123, // 上麦-用户已在麦上
  13. OPEN_REDIS_EXCEPTION: -1234 // 上麦-redis操作异常

枚举值:

用户类型(0 普通用户 1 教练) 状态(0有效 1无效):包括用户、房间、课程、教练、推荐房间、推荐课程、推荐教练,用于假删除 性别(0 男 1女 2 其他) 房间付费标志( 0 普通 1 VIP): 房间类型(0活动房间 1教学房间) 视频的分辨率 (可能值:‘480P’,‘720P’)
配置类型(0 推荐房间 1 明星教练 2精品课程)

全局变量:

  1. /**
  2. * 全局常量定义
  3. */
  4. export const GCONST = Object.freeze({
  5. invalidRoomid:101, //roomid对应的房间不存在
  6. noPrivilegeOfCreateRoom:102,//uid用户无权创建roomid房间
  7. hasPrivilegeOfCreateRoom:103,//uid用户有权创建roomid房间
  8. noPrivilegeOfJoinRoom:104,//uid用户无权加入roomid房间
  9. hasPrivilegeOfJoinRoom:105,//uid用户有权加入roomid房间
  10. noPrivilegeOfSM:106, //uid用户无权在roomid房间上 连麦列表
  11. snNotEmptyOfSM:107, //roomid房间的第SN个麦 当前不是空闲状态
  12. canSM:108, //可以上麦
  13. roomKindOfTeach:1,//m_room房间表 kind 字段 教学房间
  14. roomKindOfLive:0, //m_room房间表 kind 字段 活动房间[娱乐直播 带 合流 旁路直播]
  15. waitingCreated:201,//用于 redis 缓存中 房间状态status;等待被创建[通过第三方SDK]
  16. hasCreated:202,//用于 redis 缓存中 房间状态status;已经创建[通过第三方SDK]
  17. roleInRoom_MainTeacher:1,//用户在房间内的角色 - 主教练【房主】
  18. roleInRoom_Assistant:2,//用户在房间内的角色 - 副教练【副房主】
  19. roleInRoom_Student:3,//用户在房间内的角色 - 学员[可上麦]
  20. roleInRoom_Audience:4,//用户在房间内的角色 -一般注册用户【非学员】
  21. roleInRoom_Visitor:5, //用户在房间内的角色 -游客[不可上麦]
  22. eventPMDel:1, //排麦列表删除 srv->cli
  23. eventLMDel:2, //连麦列表删除 srv->cli
  24. eventPMAdd:3, //排麦列表添加 srv->cli
  25. eventLMAdd:4, //连麦列表添加 srv->cli
  26. cmdKick:5, //踢麦命令 srv->cli
  27. cmdBM:6, // srv->cli 被抱麦
  28. cmdKickOfBm:7, //srv->cli 通知由于抱麦命令而被踢麦的用户下麦
  29. eventNewNotice:8, //房间公告刷新
  30. eventMemberDel:11, //成员列表删除 srv->cli
  31. eventMemberAdd:12, //成员列表添加 srv->cli
  32. lm_max:3, //最大连麦数量
  33. rCodeSmOkOne:1,
  34. rCodeSmOkTwo:2,
  35. rCodeSmOkThree:3,
  36. rCodeSmFailure:-1,
  37. rCodeSmOkFour:4,
  38. theEnd:62,
  39. shouldIN:1, //应接收登录消息抄送
  40. shouldOUT:2, //应接收登出消息抄送
  41. shouldNONE:3, //不应接收任何消息抄送
  42. });