github.com/872409/go-netease-im@v1.0.2-0.20201109080841-fdb3e13691c5/videoRoom.go (about) 1 package netease 2 3 import ( 4 "errors" 5 "net/http" 6 ) 7 8 const ( 9 neteaseRoomBaseURL = "https://roomserver-dev.netease.im/v1/api" 10 roomInfoPoint = neteaseRoomBaseURL + "/rooms/{id}" 11 roomMembersPoint = neteaseRoomBaseURL + "/rooms/{id}/members" 12 ) 13 14 const ( 15 // RoomModeDuet 双人模式 16 RoomModeDuet = iota + 1 17 // RoomModeMulti 多人模式 18 RoomModeMulti 19 ) 20 21 const ( 22 // RoomStatusInit 初始状态 23 RoomStatusInit = iota + 1 24 // RoomStatusRunning 进行中 25 RoomStatusRunning 26 // RoomStatusEnded 正常结束 27 RoomStatusEnded 28 // RoomStatusException 异常结束 29 RoomStatusException 30 ) 31 32 // GetRoomInfo . 33 func (c *ImClient) GetRoomInfo(roomID string) (*RoomInfo, error) { 34 param := map[string]string{"id": roomID} 35 36 client := c.client.R() 37 c.setCommonHead(client) 38 client.SetPathParams(param) 39 40 resp, err := client.Get(roomInfoPoint) 41 if err != nil { 42 return nil, err 43 } 44 45 if resp.StatusCode() != http.StatusOK { 46 return nil, errors.New(string(resp.Body())) 47 } 48 49 ri := &RoomInfo{} 50 if err := jsonTool.Unmarshal(resp.Body(), ri); err != nil { 51 return nil, err 52 } 53 54 return ri, nil 55 } 56 57 // GetRoomMembers . 58 // func (c *ImClient) GetRoomMembers(roomID string) { 59 // c.setCommonHead() 60 // param := map[string]string{"id": roomID} 61 62 // client := c.client.R() 63 // client.SetPathParams(param) 64 65 // resp, err := client.Get(roomMembersPoint) 66 // } 67 68 // DeleteRoom 删除某个房间 69 func (c *ImClient) DeleteRoom(roomID string) error { 70 param := map[string]string{"id": roomID} 71 72 client := c.client.R() 73 c.setCommonHead(client) 74 client.SetPathParams(param) 75 76 if _, err := client.Delete(roomInfoPoint); err != nil { 77 return err 78 } 79 80 return nil 81 }