Documentation
¶
Index ¶
- Constants
- type ApiRequest
- func (api *ApiRequest) CreateMeeting(name string, meetingID string, attendeePW string, moderatorPW string, ...) (Meeting, error)
- func (api *ApiRequest) EndMeeting(meetingID string) (Meeting, error)
- func (api *ApiRequest) GetMeetings() (map[string]Meeting, error)
- func (api *ApiRequest) IsMeetingRunning(meetingID string) bool
- func (api *ApiRequest) Join(meetingID string, userName string, moderator bool) (string, []*http.Cookie, string, string, string, string, error)
- func (api *ApiRequest) JoinGetURL(meetingID string, userName string, moderator bool) (string, error)
- type Attendee
- type Meeting
- type Metadata
- type ParamName
- type Params
- type Responseerror
- type Responsegetmeetings
- type SHA
Constants ¶
const ( CREATE action = "create" END action = "end" GET_MEETINGS action = "getMeetings" IS_MEETING_RUNNING action = "isMeetingRunning" JOIN action = "join" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ApiRequest ¶
func NewRequest ¶
func NewRequest(url string, secret string, shatype SHA) (*ApiRequest, error)
Create an object for making http get api requests to the BBB server. The requests are described here: https://bigbluebutton.org/api-mate/ and https://docs.bigbluebutton.org/dev/api.html
func (*ApiRequest) CreateMeeting ¶
func (api *ApiRequest) CreateMeeting(name string, meetingID string, attendeePW string, moderatorPW string, welcome string, allowStartStopRecording bool, autoStartRecording bool, record bool, voiceBridge int64) (Meeting, error)
Makes a http get request to the BigBlueButton API, creates a meeting and returns this new meeting
func (*ApiRequest) EndMeeting ¶
func (api *ApiRequest) EndMeeting(meetingID string) (Meeting, error)
Makes a http get request to the BigBlueButton API and returns the closed meeting
func (*ApiRequest) GetMeetings ¶
func (api *ApiRequest) GetMeetings() (map[string]Meeting, error)
Makes a http get request to the BigBlueButton API and returns a list of meetings
func (*ApiRequest) IsMeetingRunning ¶
func (api *ApiRequest) IsMeetingRunning(meetingID string) bool
Makes a http get request to the BigBlueButton API and returs the running state of the meeting. If an error occurs the returned value is false
func (*ApiRequest) Join ¶
func (api *ApiRequest) Join(meetingID string, userName string, moderator bool) (string, []*http.Cookie, string, string, string, string, error)
Makes a http get request to the BigBlueButton API to join a meeting and returs: - url - cookie - userid - auth_token - session_token - internal_meeting_id - error
func (*ApiRequest) JoinGetURL ¶
func (api *ApiRequest) JoinGetURL(meetingID string, userName string, moderator bool) (string, error)
Makes a http get request to the BigBlueButton API to join a meeting and returs: - url
type Attendee ¶
type Attendee struct { UserID string `xml:"userID" json:"userID"` FullName string `xml:"fullName" json:"fullName"` Role string `xml:"role" json:"role"` IsPresenter bool `xml:"isPresenter" json:"isPresenter"` IsListening bool `xml:"isListeningOnly" json:"isListeningOnly"` HasJoinedVoice bool `xml:"hasJoinedVoice" json:"hasJoinedVoice"` HasVideo bool `xml:"hasVideo" json:"hasVideo"` ClientType string `xml:"clientType" json:"clientType"` }
type Meeting ¶
type Meeting struct { MeetingName string `xml:"meetingName" json:"meetingName"` MeetingID string `xml:"meetingID" json:"meetingID"` InternalID string `xml:"internalMeetingID" json:"internalMeetingID"` CreateTime int64 `xml:"createTime" json:"createTime"` CreateDate string `xml:"createDate" json:"createDate"` VoiceBridge int `xml:"voiceBridge" json:"voiceBridge"` DialNumber string `xml:"dialNumber" json:"dialNumber"` AttendeePW string `xml:"attendeePW" json:"attendeePW"` ModeratorPW string `xml:"moderatorPW" json:"moderatorPW"` Running bool `xml:"running" json:"running"` Duration int `xml:"duration" json:"duration"` HasJoined bool `xml:"hasUserJoined" json:"hasUserJoined"` Recording bool `xml:"recording" json:"recording"` ForciblyEnded bool `xml:"hasBeenForciblyEnded" json:"hasBeenForciblyEnded"` StartTime int64 `xml:"startTime" json:"startTime"` EndTime int64 `xml:"endTime" json:"endTime"` Participants int `xml:"participantCount" json:"participantCount"` Listeners int `xml:"listenerCount" json:"listenerCount"` VoiceCount int `xml:"voiceParticipantCount" json:"voiceParticipantCount"` VideoCount int `xml:"videoCount" json:"videoCount"` MaxUsers int `xml:"maxUsers" json:"maxUsers"` Moderators int `xml:"moderatorCount" json:"moderatorCount"` Attendees []Attendee `xml:"attendees>attendee" json:"attendees"` Metadata Metadata `xml:"metadata" json:"metadata"` IsBreakout bool `xml:"isBreakout" json:"isBreakout"` }
type ParamName ¶
type ParamName string
Only those parames are allowed
const ( MEETING_ID ParamName = "meetingID" RECORD_ID ParamName = "recordID" NAME ParamName = "name" ATTENDEE_PW ParamName = "attendeePW" MODERATOR_PW ParamName = "moderatorPW" PASSWORD ParamName = "password" //same as moderatorPW (I dont know why its sometimse called password and not moderatorPW) FULL_NAME ParamName = "fullName" WELCOME ParamName = "welcome" VOICE_BRIDGE ParamName = "voiceBridge" RECORD ParamName = "record" AUTO_START_RECORDING ParamName = "autoStartRecording" ALLOW_START_STOP_RECORDING ParamName = "allowStartStopRecording" DIAL_NUMBER ParamName = "dialNumber" WEB_VOICE ParamName = "webVoice" LOGOUT_URL ParamName = "logoutURL" MAX_PARTICIPANTS ParamName = "maxParticipants" DURATION ParamName = "duration" USER_ID ParamName = "userID" CREATE_TIME ParamName = "createTime" WEB_VOICE_CONF ParamName = "webVoiceConf" PUBLISH ParamName = "publish" REDIRECT ParamName = "redirect" CLIENT_URL ParamName = "clientURL" CONFIG_TOKEN ParamName = "configToken" AVATAR_URL ParamName = "avatarURL" MODERATOR_ONLY_MESSAGE ParamName = "moderatorOnlyMessage" )
type Responseerror ¶
type Responsegetmeetings ¶
type Responsegetmeetings struct { Script string `xml:"script" json:"script"` ReturnCode string `xml:"returncode" json:"returnCode"` Errors []responseerror `xml:"errors>error" json:"errors"` Meetings []Meeting `xml:"meetings>meeting" json:"meetings"` MessageKey string `xml:"messageKey" json:"messageKey"` Message string `xml:"message" json:"message"` }