Documentation ¶
Index ¶
- Constants
- Variables
- type API
- type Attendee
- type Backend
- type Breakout
- type BreakoutInfo
- type BreakoutRoomStartedEvent
- type Client
- type CreateResponse
- type DeleteRecordingsResponse
- func (res *DeleteRecordingsResponse) Header() http.Header
- func (res *DeleteRecordingsResponse) Marshal() ([]byte, error)
- func (res *DeleteRecordingsResponse) Merge(other Response) error
- func (res *DeleteRecordingsResponse) SetHeader(h http.Header)
- func (res *DeleteRecordingsResponse) SetStatus(s int)
- func (res *DeleteRecordingsResponse) Status() int
- type EndResponse
- type Event
- type Format
- type Frontend
- type GetDefaultConfigXMLResponse
- func (res *GetDefaultConfigXMLResponse) Header() http.Header
- func (res *GetDefaultConfigXMLResponse) Marshal() ([]byte, error)
- func (res *GetDefaultConfigXMLResponse) Merge(other Response) error
- func (res *GetDefaultConfigXMLResponse) SetHeader(h http.Header)
- func (res *GetDefaultConfigXMLResponse) SetStatus(s int)
- func (res *GetDefaultConfigXMLResponse) Status() int
- type GetMeetingInfoResponse
- func (res *GetMeetingInfoResponse) Header() http.Header
- func (res *GetMeetingInfoResponse) Marshal() ([]byte, error)
- func (res *GetMeetingInfoResponse) Merge(other Response) error
- func (res *GetMeetingInfoResponse) SetHeader(h http.Header)
- func (res *GetMeetingInfoResponse) SetStatus(s int)
- func (res *GetMeetingInfoResponse) Status() int
- type GetMeetingsResponse
- func (res *GetMeetingsResponse) Header() http.Header
- func (res *GetMeetingsResponse) Marshal() ([]byte, error)
- func (res *GetMeetingsResponse) Merge(other Response) error
- func (res *GetMeetingsResponse) SetHeader(h http.Header)
- func (res *GetMeetingsResponse) SetStatus(s int)
- func (res *GetMeetingsResponse) Status() int
- type GetRecordingTextTracksResponse
- func (res *GetRecordingTextTracksResponse) Header() http.Header
- func (res *GetRecordingTextTracksResponse) Marshal() ([]byte, error)
- func (res *GetRecordingTextTracksResponse) Merge(other Response) error
- func (res *GetRecordingTextTracksResponse) SetHeader(h http.Header)
- func (res *GetRecordingTextTracksResponse) SetStatus(s int)
- func (res *GetRecordingTextTracksResponse) Status() int
- type GetRecordingsResponse
- func (res *GetRecordingsResponse) Header() http.Header
- func (res *GetRecordingsResponse) Marshal() ([]byte, error)
- func (res *GetRecordingsResponse) Merge(other Response) error
- func (res *GetRecordingsResponse) SetHeader(h http.Header)
- func (res *GetRecordingsResponse) SetStatus(s int)
- func (res *GetRecordingsResponse) Status() int
- type Image
- type Images
- type IsMeetingRunningResponse
- func (res *IsMeetingRunningResponse) Header() http.Header
- func (res *IsMeetingRunningResponse) Marshal() ([]byte, error)
- func (res *IsMeetingRunningResponse) Merge(other Response) error
- func (res *IsMeetingRunningResponse) SetHeader(h http.Header)
- func (res *IsMeetingRunningResponse) SetStatus(s int)
- func (res *IsMeetingRunningResponse) Status() int
- type JSONResponse
- type JoinResponse
- func (res *JoinResponse) Header() http.Header
- func (res *JoinResponse) IsRaw() bool
- func (res *JoinResponse) Marshal() ([]byte, error)
- func (res *JoinResponse) Merge(other Response) error
- func (res *JoinResponse) SetHeader(h http.Header)
- func (res *JoinResponse) SetRaw(data []byte)
- func (res *JoinResponse) SetStatus(s int)
- func (res *JoinResponse) Status() int
- type Meeting
- type MeetingCreatedEvent
- type MeetingDestroyedEvent
- type MeetingEndedEvent
- type Metadata
- type Params
- type Preview
- type PublishRecordingsResponse
- func (res *PublishRecordingsResponse) Header() http.Header
- func (res *PublishRecordingsResponse) Marshal() ([]byte, error)
- func (res *PublishRecordingsResponse) Merge(other Response) error
- func (res *PublishRecordingsResponse) SetHeader(h http.Header)
- func (res *PublishRecordingsResponse) SetStatus(s int)
- func (res *PublishRecordingsResponse) Status() int
- type PutRecordingTextTrackResponse
- func (res *PutRecordingTextTrackResponse) Header() http.Header
- func (res *PutRecordingTextTrackResponse) Marshal() ([]byte, error)
- func (res *PutRecordingTextTrackResponse) Merge(other Response) error
- func (res *PutRecordingTextTrackResponse) SetHeader(h http.Header)
- func (res *PutRecordingTextTrackResponse) SetStatus(s int)
- func (res *PutRecordingTextTrackResponse) Status() int
- type Recording
- type Request
- func CreateRequest(params Params, body []byte) *Request
- func EndRequest(params Params) *Request
- func GetMeetingInfoRequest(params Params) *Request
- func GetMeetingsRequest(params Params) *Request
- func IsMeetingRunningRequest(params Params) *Request
- func JoinRequest(params Params) *Request
- func UnmarshalURLSafeRequest(data []byte) (req *Request, err error)
- type Response
- type SetConfigXMLResponse
- func (res *SetConfigXMLResponse) Header() http.Header
- func (res *SetConfigXMLResponse) Marshal() ([]byte, error)
- func (res *SetConfigXMLResponse) Merge(other Response) error
- func (res *SetConfigXMLResponse) SetHeader(h http.Header)
- func (res *SetConfigXMLResponse) SetStatus(s int)
- func (res *SetConfigXMLResponse) Status() int
- type TextTrack
- type Timestamp
- type UpdateRecordingsResponse
- func (res *UpdateRecordingsResponse) Header() http.Header
- func (res *UpdateRecordingsResponse) Marshal() ([]byte, error)
- func (res *UpdateRecordingsResponse) Merge(other Response) error
- func (res *UpdateRecordingsResponse) SetHeader(h http.Header)
- func (res *UpdateRecordingsResponse) SetStatus(s int)
- func (res *UpdateRecordingsResponse) Status() int
- type UserJoinedMeetingEvent
- type UserLeftMeetingEvent
- type XMLResponse
- func (res *XMLResponse) Header() http.Header
- func (res *XMLResponse) Marshal() ([]byte, error)
- func (res *XMLResponse) Merge(other Response) error
- func (res *XMLResponse) MergeXMLResponse(other *XMLResponse) error
- func (res *XMLResponse) SetHeader(h http.Header)
- func (res *XMLResponse) SetStatus(s int)
- func (res *XMLResponse) Status() int
Constants ¶
const ( ResourceIndex = "" ResourceJoin = "join" ResourceCreate = "create" ResourceIsMeetingRunning = "isMeetingRunning" ResourceEnd = "end" ResourceGetMeetingInfo = "getMeetingInfo" ResourceGetMeetings = "getMeetings" ResourceGetRecordings = "getRecordings" ResourcePublishRecordings = "publishRecordings" ResourceDeleteRecordings = "deleteRecordings" ResourceUpdateRecordings = "updateRecordings" ResourceGetDefaultConfigXML = "getDefaultConfigXML" ResourceSetConfigXML = "setConfigXML" ResourceGetRecordingTextTracks = "getRecordingTextTracks" ResourcePutRecordingTextTrack = "putRecordingTextTrack" )
ApiResources
const ( ParamMeetingID = "meetingID" ParamChecksum = "checksum" )
Well known params
const ( // RetSuccess is the success return code RetSuccess = "SUCCESS" // RetFailed is the failure return code RetFailed = "FAILED" )
Variables ¶
var ( // ErrCantBeMerged is the error when two responses // of the same type can not be merged, e.g. when // the data is not a collection. ErrCantBeMerged = errors.New( "responses of this type can not be merged") // ErrMergeConflict will be returned when two // responses differ in fields, where they should not. // Eg. a successful and a failed return code ErrMergeConflict = errors.New( "responses have conflicting values") )
var ( // ReQueryChecksum is used for removing the checksum // from a querystring in the incoming HTTP request ReQueryChecksum = regexp.MustCompile("&checksum(=[^&]*)?|^checksum(=[^&]*)?&?") )
Functions ¶
This section is empty.
Types ¶
type API ¶
type API interface { Join(*Request) (*JoinResponse, error) Create(*Request) (*CreateResponse, error) IsMeetingRunning(*Request) (*IsMeetingRunningResponse, error) End(*Request) (*EndResponse, error) GetMeetingInfo(*Request) (*GetMeetingInfoResponse, error) GetMeetings(*Request) (*GetMeetingsResponse, error) GetRecordings(*Request) (*GetRecordingsResponse, error) PublishRecordings(*Request) (*PublishRecordingsResponse, error) DeleteRecordings(*Request) (*DeleteRecordingsResponse, error) UpdateRecordings(*Request) (*UpdateRecordingsResponse, error) GetDefaultConfigXML(*Request) (*GetDefaultConfigXMLResponse, error) SetConfigXML(*Request) (*SetConfigXMLResponse, error) GetRecordingTextTracks(*Request) (*GetRecordingTextTracksResponse, error) PutRecordingTextTrack(*Request) (*PutRecordingTextTrackResponse, error) }
API is the bbb api interface
type Attendee ¶
type Attendee struct { XMLName xml.Name `xml:"attendee"` UserID string `xml:"userID"` InternalUserID string `xml:"internalUserID,omit"` FullName string `xml:"fullName"` Role string `xml:"role"` IsPresenter bool `xml:"isPresenter"` IsListeningOnly bool `xml:"isListeningOnly"` HasJoinedVoice bool `xml:"hasJoinedVoice"` HasVideo bool `xml:"hasVideo"` ClientType string `xml:"clientType"` }
Attendee of a meeting
type Backend ¶
The Backend is a bbb backend a request can be directed to like Client.Do(Backend, Req).
type Breakout ¶
type Breakout struct { XMLName xml.Name `xml:"breakout"` ParentMeetingID string `xml:"parentMeetingID"` Sequence int `xml:"sequence"` FreeJoin bool `xml:"freeJoin"` }
Breakout info
type BreakoutInfo ¶
type BreakoutInfo struct { Name string ExternalID string BreakoutID string Sequence int FreeJoin bool }
BreakoutInfo contains breakout room information
type BreakoutRoomStartedEvent ¶
type BreakoutRoomStartedEvent struct { ParentInternalMeetingID string Breakout *BreakoutInfo }
BreakoutRoomStartedEvent indicates the start of a breakout room
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
A Client for communicating with a big blue button instance. Requests are signed and encoded. Responses are decoded.
type CreateResponse ¶
type CreateResponse struct { *XMLResponse *Meeting }
CreateResponse is the resonse for the `create` API resource.
func UnmarshalCreateResponse ¶
func UnmarshalCreateResponse(data []byte) (*CreateResponse, error)
UnmarshalCreateResponse decodes the resonse XML data.
func (*CreateResponse) Header ¶
func (res *CreateResponse) Header() http.Header
Header returns the HTTP response headers
func (*CreateResponse) Marshal ¶
func (res *CreateResponse) Marshal() ([]byte, error)
Marshal a CreateResponse to XML
func (*CreateResponse) Merge ¶
func (res *CreateResponse) Merge(other Response) error
Merge another response
func (*CreateResponse) SetHeader ¶
func (res *CreateResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*CreateResponse) SetStatus ¶
func (res *CreateResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*CreateResponse) Status ¶
func (res *CreateResponse) Status() int
Status returns the HTTP response status code
type DeleteRecordingsResponse ¶
type DeleteRecordingsResponse struct { *XMLResponse Deleted bool `xml:"deleted"` }
DeleteRecordingsResponse indicates if the recording was correctly deleted. Might fail successfully. Same crap as with the publish resource
func UnmarshalDeleteRecordingsResponse ¶
func UnmarshalDeleteRecordingsResponse( data []byte, ) (*DeleteRecordingsResponse, error)
UnmarshalDeleteRecordingsResponse decodes XML resource response
func (*DeleteRecordingsResponse) Header ¶
func (res *DeleteRecordingsResponse) Header() http.Header
Header returns the HTTP response headers
func (*DeleteRecordingsResponse) Marshal ¶
func (res *DeleteRecordingsResponse) Marshal() ([]byte, error)
Marshal encodes the delete recordings response as XML
func (*DeleteRecordingsResponse) Merge ¶
func (res *DeleteRecordingsResponse) Merge(other Response) error
Merge a DeleteRecordingsResponse
func (*DeleteRecordingsResponse) SetHeader ¶
func (res *DeleteRecordingsResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*DeleteRecordingsResponse) SetStatus ¶
func (res *DeleteRecordingsResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*DeleteRecordingsResponse) Status ¶
func (res *DeleteRecordingsResponse) Status() int
Status returns the HTTP response status code
type EndResponse ¶
type EndResponse struct {
*XMLResponse
}
EndResponse is the resonse of the end resource
func UnmarshalEndResponse ¶
func UnmarshalEndResponse(data []byte) (*EndResponse, error)
UnmarshalEndResponse decodes the xml resonse
func (*EndResponse) Header ¶
func (res *EndResponse) Header() http.Header
Header returns the HTTP response headers
func (*EndResponse) Marshal ¶
func (res *EndResponse) Marshal() ([]byte, error)
Marshal EndResponse to XML
func (*EndResponse) SetHeader ¶
func (res *EndResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*EndResponse) SetStatus ¶
func (res *EndResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*EndResponse) Status ¶
func (res *EndResponse) Status() int
Status returns the HTTP response status code
type Event ¶
type Event interface{}
An Event is an interface for BBB events. All events (that we care about) have a type and belong to a meeting.
type Format ¶
type Format struct { XMLName xml.Name `xml:"format"` Type string `xml:"type"` URL string `xml:"url"` ProcessingTime int `xml:"processingTime"` // No idea. The example is 7177. Length int `xml:"length"` Preview *Preview `xml:"preview"` }
Format contains a link to the playable media
type GetDefaultConfigXMLResponse ¶
type GetDefaultConfigXMLResponse struct { Config []byte // contains filtered or unexported fields }
GetDefaultConfigXMLResponse has the raw config xml data
func UnmarshalGetDefaultConfigXMLResponse ¶
func UnmarshalGetDefaultConfigXMLResponse( data []byte, ) (*GetDefaultConfigXMLResponse, error)
UnmarshalGetDefaultConfigXMLResponse creates a new response from the data.
func (*GetDefaultConfigXMLResponse) Header ¶
func (res *GetDefaultConfigXMLResponse) Header() http.Header
Header returns the HTTP response headers
func (*GetDefaultConfigXMLResponse) Marshal ¶
func (res *GetDefaultConfigXMLResponse) Marshal() ([]byte, error)
Marshal GetDefaultConfigXMLResponse encodes the response body which is just the data.
func (*GetDefaultConfigXMLResponse) Merge ¶
func (res *GetDefaultConfigXMLResponse) Merge(other Response) error
Merge GetDefaultConfigXMLResponse
func (*GetDefaultConfigXMLResponse) SetHeader ¶
func (res *GetDefaultConfigXMLResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*GetDefaultConfigXMLResponse) SetStatus ¶
func (res *GetDefaultConfigXMLResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*GetDefaultConfigXMLResponse) Status ¶
func (res *GetDefaultConfigXMLResponse) Status() int
Status returns the HTTP response status code
type GetMeetingInfoResponse ¶
type GetMeetingInfoResponse struct { *XMLResponse *Meeting }
GetMeetingInfoResponse contains detailed meeting information
func UnmarshalGetMeetingInfoResponse ¶
func UnmarshalGetMeetingInfoResponse( data []byte, ) (*GetMeetingInfoResponse, error)
UnmarshalGetMeetingInfoResponse decodes the xml response
func (*GetMeetingInfoResponse) Header ¶
func (res *GetMeetingInfoResponse) Header() http.Header
Header returns the HTTP response headers
func (*GetMeetingInfoResponse) Marshal ¶
func (res *GetMeetingInfoResponse) Marshal() ([]byte, error)
Marshal GetMeetingInfoResponse to XML
func (*GetMeetingInfoResponse) Merge ¶
func (res *GetMeetingInfoResponse) Merge(other Response) error
Merge GetMeetingInfoResponse
func (*GetMeetingInfoResponse) SetHeader ¶
func (res *GetMeetingInfoResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*GetMeetingInfoResponse) SetStatus ¶
func (res *GetMeetingInfoResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*GetMeetingInfoResponse) Status ¶
func (res *GetMeetingInfoResponse) Status() int
Status returns the HTTP response status code
type GetMeetingsResponse ¶
type GetMeetingsResponse struct { *XMLResponse Meetings []*Meeting `xml:"meetings>meeting"` }
GetMeetingsResponse contains a list of meetings.
func UnmarshalGetMeetingsResponse ¶
func UnmarshalGetMeetingsResponse( data []byte, ) (*GetMeetingsResponse, error)
UnmarshalGetMeetingsResponse decodes the xml response
func (*GetMeetingsResponse) Header ¶
func (res *GetMeetingsResponse) Header() http.Header
Header returns the HTTP response headers
func (*GetMeetingsResponse) Marshal ¶
func (res *GetMeetingsResponse) Marshal() ([]byte, error)
Marshal serializes the response as XML
func (*GetMeetingsResponse) Merge ¶
func (res *GetMeetingsResponse) Merge(other Response) error
Merge get meetings responses
func (*GetMeetingsResponse) SetHeader ¶
func (res *GetMeetingsResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*GetMeetingsResponse) SetStatus ¶
func (res *GetMeetingsResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*GetMeetingsResponse) Status ¶
func (res *GetMeetingsResponse) Status() int
Status returns the HTTP response status code
type GetRecordingTextTracksResponse ¶
type GetRecordingTextTracksResponse struct { Returncode string `json:"returncode"` MessageKey string `json:"messageKey,omitempty"` Message string `json:"message,omitempty"` Tracks []*TextTrack `json:"tracks"` // contains filtered or unexported fields }
GetRecordingTextTracksResponse lists all tracks
func UnmarshalGetRecordingTextTracksResponse ¶
func UnmarshalGetRecordingTextTracksResponse( data []byte, ) (*GetRecordingTextTracksResponse, error)
UnmarshalGetRecordingTextTracksResponse decodes the json
func (*GetRecordingTextTracksResponse) Header ¶
func (res *GetRecordingTextTracksResponse) Header() http.Header
Header returns the HTTP response headers
func (*GetRecordingTextTracksResponse) Marshal ¶
func (res *GetRecordingTextTracksResponse) Marshal() ([]byte, error)
Marshal GetRecordingTextTracksResponse to JSON
func (*GetRecordingTextTracksResponse) Merge ¶
func (res *GetRecordingTextTracksResponse) Merge(other Response) error
Merge GetRecordingTextTracksResponse
func (*GetRecordingTextTracksResponse) SetHeader ¶
func (res *GetRecordingTextTracksResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response header
func (*GetRecordingTextTracksResponse) SetStatus ¶
func (res *GetRecordingTextTracksResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*GetRecordingTextTracksResponse) Status ¶
func (res *GetRecordingTextTracksResponse) Status() int
Status returns the HTTP response status code
type GetRecordingsResponse ¶
type GetRecordingsResponse struct { *XMLResponse Recordings []*Recording `xml:"recordings>recording"` }
GetRecordingsResponse is the response of the getRecordings resource
func UnmarshalGetRecordingsResponse ¶
func UnmarshalGetRecordingsResponse( data []byte, ) (*GetRecordingsResponse, error)
UnmarshalGetRecordingsResponse deserializes the response XML
func (*GetRecordingsResponse) Header ¶
func (res *GetRecordingsResponse) Header() http.Header
Header returns the HTTP response headers
func (*GetRecordingsResponse) Marshal ¶
func (res *GetRecordingsResponse) Marshal() ([]byte, error)
Marshal a GetRecordingsResponse to XML
func (*GetRecordingsResponse) Merge ¶
func (res *GetRecordingsResponse) Merge(other Response) error
Merge another GetRecordingsResponse
func (*GetRecordingsResponse) SetHeader ¶
func (res *GetRecordingsResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*GetRecordingsResponse) SetStatus ¶
func (res *GetRecordingsResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*GetRecordingsResponse) Status ¶
func (res *GetRecordingsResponse) Status() int
Status returns the HTTP response status code
type Image ¶
type Image struct { XMLName xml.Name `xml:"image"` Alt string `xml:"alt,attr"` Height int `xml:"height,attr"` Width int `xml:"width,attr"` }
Image is a preview image of the format
type IsMeetingRunningResponse ¶
type IsMeetingRunningResponse struct { *XMLResponse Running bool `xml:"running"` }
IsMeetingRunningResponse is a meeting status resonse
func UnmarshalIsMeetingRunningResponse ¶
func UnmarshalIsMeetingRunningResponse( data []byte, ) (*IsMeetingRunningResponse, error)
UnmarshalIsMeetingRunningResponse decodes the XML data.
func (*IsMeetingRunningResponse) Header ¶
func (res *IsMeetingRunningResponse) Header() http.Header
Header returns the HTTP response headers
func (*IsMeetingRunningResponse) Marshal ¶
func (res *IsMeetingRunningResponse) Marshal() ([]byte, error)
Marshal a IsMeetingRunningResponse to XML
func (*IsMeetingRunningResponse) Merge ¶
func (res *IsMeetingRunningResponse) Merge(other Response) error
Merge IsMeetingRunning responses
func (*IsMeetingRunningResponse) SetHeader ¶
func (res *IsMeetingRunningResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*IsMeetingRunningResponse) SetStatus ¶
func (res *IsMeetingRunningResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*IsMeetingRunningResponse) Status ¶
func (res *IsMeetingRunningResponse) Status() int
Status returns the HTTP response status code
type JSONResponse ¶
type JSONResponse struct {
Response interface{} `json:"response"`
}
JSONResponse encapsulates a json reponse
type JoinResponse ¶
type JoinResponse struct { *XMLResponse MeetingID string `xml:"meeting_id"` UserID string `xml:"user_id"` AuthToken string `xml:"auth_token"` SessionToken string `xml:"session_token"` URL string `xml:"url"` // contains filtered or unexported fields }
JoinResponse of the join resource. WARNING: the join response might be a html page without any meaningful data.
func UnmarshalJoinResponse ¶
func UnmarshalJoinResponse(data []byte) (*JoinResponse, error)
UnmarshalJoinResponse decodes the serialized XML data
func (*JoinResponse) Header ¶
func (res *JoinResponse) Header() http.Header
Header returns the HTTP response headers
func (*JoinResponse) IsRaw ¶
func (res *JoinResponse) IsRaw() bool
IsRaw returns true if the response could not be decoded from XML data
func (*JoinResponse) Marshal ¶
func (res *JoinResponse) Marshal() ([]byte, error)
Marshal encodes a JoinResponse as XML
func (*JoinResponse) Merge ¶
func (res *JoinResponse) Merge(other Response) error
Merge another response
func (*JoinResponse) SetHeader ¶
func (res *JoinResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*JoinResponse) SetRaw ¶
func (res *JoinResponse) SetRaw(data []byte)
SetRaw will set a raw content
func (*JoinResponse) SetStatus ¶
func (res *JoinResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*JoinResponse) Status ¶
func (res *JoinResponse) Status() int
Status returns the HTTP response status code
type Meeting ¶
type Meeting struct { XMLName xml.Name `xml:"meeting"` MeetingName string `xml:"meetingName"` MeetingID string `xml:"meetingID"` InternalMeetingID string `xml:"internalMeetingID"` CreateTime Timestamp `xml:"createTime"` CreateDate string `xml:"createDate"` VoiceBridge string `xml:"voiceBridge"` DialNumber string `xml:"dialNumber"` AttendeePW string `xml:"attendeePW"` ModeratorPW string `xml:"moderatorPW"` Running bool `xml:"running"` Duration int `xml:"duration"` Recording bool `xml:"recording"` HasBeenForciblyEnded bool `xml:"hasBeenForciblyEnded"` StartTime Timestamp `xml:"startTime"` EndTime Timestamp `xml:"endTime"` ParticipantCount int `xml:"participantCount"` ListenerCount int `xml:"listenerCount"` VoiceParticipantCount int `xml:"voiceParticipantCount"` VideoCount int `xml:"videoCount"` MaxUsers int `xml:"maxUsers"` ModeratorCount int `xml:"moderatorCount"` IsBreakout bool `xml:"isBreakout"` Metadata Metadata `xml:"metadata"` Attendees []*Attendee `xml:"attendees>attendee"` BreakoutRooms []string `xml:"breakoutRooms>breakout"` Breakout *Breakout `xml:"breakout"` }
Meeting information
type MeetingCreatedEvent ¶
MeetingCreatedEvent indicates the start of a meeting
type MeetingDestroyedEvent ¶
type MeetingDestroyedEvent struct {
InternalMeetingID string
}
MeetingDestroyedEvent indicates a meeting destroyed
type MeetingEndedEvent ¶
type MeetingEndedEvent struct {
InternalMeetingID string
}
MeetingEndedEvent indicates the end of a meeting
type Metadata ¶
Metadata about the BBB instance, this is not exactly specified in the docs, so we are using a map with string keys and an empty interface for the values.
func (Metadata) MarshalXML ¶
MarshalXML encodes Metadata as XML
func (*Metadata) UnmarshalXML ¶
UnmarshalXML decodes an unordered key, value mapping from XML.
type Params ¶
Params for the BBB API (we opt for stringly typed.)
type PublishRecordingsResponse ¶
type PublishRecordingsResponse struct { *XMLResponse Published bool `xml:"published"` }
PublishRecordingsResponse indicates if the recordings were published. This also has the potential for tasks failed successfully. Also the endpoint is designed badly because you can send a set of recordings and receive just a single published true or false.
func UnmarshalPublishRecordingsResponse ¶
func UnmarshalPublishRecordingsResponse( data []byte, ) (*PublishRecordingsResponse, error)
UnmarshalPublishRecordingsResponse decodes the XML response
func (*PublishRecordingsResponse) Header ¶
func (res *PublishRecordingsResponse) Header() http.Header
Header returns the HTTP response headers
func (*PublishRecordingsResponse) Marshal ¶
func (res *PublishRecordingsResponse) Marshal() ([]byte, error)
Marshal a publishRecodingsResponse to XML
func (*PublishRecordingsResponse) Merge ¶
func (res *PublishRecordingsResponse) Merge(other Response) error
Merge a PublishRecordingsResponse
func (*PublishRecordingsResponse) SetHeader ¶
func (res *PublishRecordingsResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*PublishRecordingsResponse) SetStatus ¶
func (res *PublishRecordingsResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*PublishRecordingsResponse) Status ¶
func (res *PublishRecordingsResponse) Status() int
Status returns the HTTP response status code
type PutRecordingTextTrackResponse ¶
type PutRecordingTextTrackResponse struct { Returncode string `json:"returncode"` MessageKey string `json:"messageKey,omitempty"` Message string `json:"message,omitempty"` RecordID string `json:"recordId,omitempty"` // contains filtered or unexported fields }
PutRecordingTextTrackResponse is the response when uploading a text track. Response is in JSON.
func UnmarshalPutRecordingTextTrackResponse ¶
func UnmarshalPutRecordingTextTrackResponse( data []byte, ) (*PutRecordingTextTrackResponse, error)
UnmarshalPutRecordingTextTrackResponse decodes the json response
func (*PutRecordingTextTrackResponse) Header ¶
func (res *PutRecordingTextTrackResponse) Header() http.Header
Header returns the HTTP response headers
func (*PutRecordingTextTrackResponse) Marshal ¶
func (res *PutRecordingTextTrackResponse) Marshal() ([]byte, error)
Marshal a PutRecordingTextTrackResponse to JSON
func (*PutRecordingTextTrackResponse) Merge ¶
func (res *PutRecordingTextTrackResponse) Merge(other Response) error
Merge a put recording text track
func (*PutRecordingTextTrackResponse) SetHeader ¶
func (res *PutRecordingTextTrackResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response header
func (*PutRecordingTextTrackResponse) SetStatus ¶
func (res *PutRecordingTextTrackResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*PutRecordingTextTrackResponse) Status ¶
func (res *PutRecordingTextTrackResponse) Status() int
Status returns the HTTP response status code
type Recording ¶
type Recording struct { XMLName xml.Name `xml:"recording"` RecordID string `xml:"recordID"` MeetingID string `xml:"meetingID"` InternalMeetingID string `xml:"internalMeetingID"` Name string `xml:"name"` IsBreakout bool `xml:"isBreakout"` Published bool `xml:"published"` State string `xml:"state"` StartTime Timestamp `xml:"startTime"` EndTime Timestamp `xml:"endTime"` Participants int `xml:"participants"` Metadata Metadata `xml:"metadata"` Formats []*Format `xml:"playback>format"` }
Recording is a recorded bbb session
type Request ¶
type Request struct { *http.Request Resource string Params Params Body []byte Checksum string Backend *Backend Frontend *Frontend }
Request is a bbb request as decoded from the incoming url - but can be directly passed on to a BigBlueButton server.
It is associated with a backend and a frontend.
func CreateRequest ¶
CreateRequest creates a new create request
func GetMeetingInfoRequest ¶
GetMeetingInfoRequest creates a new getMeetingInfo request
func GetMeetingsRequest ¶
GetMeetingsRequest builds a new getMeetings request
func IsMeetingRunningRequest ¶
IsMeetingRunningRequest makes a new isMeetingRunning request
func UnmarshalURLSafeRequest ¶
UnmarshalURLSafeRequest will decode an encoded request. Remember not to trust any user data! THIS IS NOT SIGNED.
func (*Request) MarshalURLSafe ¶
MarshalURLSafe will encode the request in an urlsafe way using json+base64.
func (*Request) Verify ¶
Verify request coming from a frontend: Compare checksum with the checksum calculated from the incoming raw query string and the frontend secret
func (*Request) WithBackend ¶
WithBackend adds a backend to the request
func (*Request) WithFrontend ¶
WithFrontend adds a frontend to the request
type Response ¶
type Response interface { Marshal() ([]byte, error) Merge(response Response) error Header() http.Header SetHeader(http.Header) Status() int SetStatus(int) }
Response interface
type SetConfigXMLResponse ¶
type SetConfigXMLResponse struct { *XMLResponse Token string `xml:"token"` }
SetConfigXMLResponse encodes the result of setting the config
func UnmarshalSetConfigXMLResponse ¶
func UnmarshalSetConfigXMLResponse( data []byte, ) (*SetConfigXMLResponse, error)
UnmarshalSetConfigXMLResponse decodes the XML data
func (*SetConfigXMLResponse) Header ¶
func (res *SetConfigXMLResponse) Header() http.Header
Header returns the HTTP response headers
func (*SetConfigXMLResponse) Marshal ¶
func (res *SetConfigXMLResponse) Marshal() ([]byte, error)
Marshal encodes a SetConfigXMLResponse as XML
func (*SetConfigXMLResponse) Merge ¶
func (res *SetConfigXMLResponse) Merge(other Response) error
Merge SetConfigXMLResponse
func (*SetConfigXMLResponse) SetHeader ¶
func (res *SetConfigXMLResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*SetConfigXMLResponse) SetStatus ¶
func (res *SetConfigXMLResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*SetConfigXMLResponse) Status ¶
func (res *SetConfigXMLResponse) Status() int
Status returns the HTTP response status code
type TextTrack ¶
type TextTrack struct { Href string `json:"href"` Kind string `json:"kind"` Label string `json:"label"` Source string `json:"source"` }
TextTrack of a Recording
type Timestamp ¶
Timestamp is the milliseconds passed since beginning of the epoch.
func (Timestamp) MarshalXML ¶
MarshalXML encodes the timestamp into XML data
func (*Timestamp) UnmarshalXML ¶
UnmarshalXML decodes the timestamp from XML data
type UpdateRecordingsResponse ¶
type UpdateRecordingsResponse struct { *XMLResponse Updated bool `xml:"updated"` }
UpdateRecordingsResponse indicates if the update was successful in the attribute updated. Might be different from Returncode. I guess.
func UnmarshalUpdateRecordingsResponse ¶
func UnmarshalUpdateRecordingsResponse( data []byte, ) (*UpdateRecordingsResponse, error)
UnmarshalUpdateRecordingsResponse decodes the XML data
func (*UpdateRecordingsResponse) Header ¶
func (res *UpdateRecordingsResponse) Header() http.Header
Header returns the HTTP response headers
func (*UpdateRecordingsResponse) Marshal ¶
func (res *UpdateRecordingsResponse) Marshal() ([]byte, error)
Marshal UpdateRecordingsResponse to XML
func (*UpdateRecordingsResponse) Merge ¶
func (res *UpdateRecordingsResponse) Merge(other Response) error
Merge a UpdateRecordingsResponse
func (*UpdateRecordingsResponse) SetHeader ¶
func (res *UpdateRecordingsResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*UpdateRecordingsResponse) SetStatus ¶
func (res *UpdateRecordingsResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*UpdateRecordingsResponse) Status ¶
func (res *UpdateRecordingsResponse) Status() int
Status returns the HTTP response status code
type UserJoinedMeetingEvent ¶
UserJoinedMeetingEvent indicates that a user joined the meeting
type UserLeftMeetingEvent ¶
type UserLeftMeetingEvent struct { InternalMeetingID string InternalUserID string InternalID string }
UserLeftMeetingEvent indicates that a user has left the meeting
type XMLResponse ¶
type XMLResponse struct { XMLName xml.Name `xml:"response"` Returncode string `xml:"returncode"` Message string `xml:"message,omitempty"` MessageKey string `xml:"messageKey,omitempty"` Version string `xml:"version,omitempty"` // contains filtered or unexported fields }
A XMLResponse from the server
func (*XMLResponse) Header ¶
func (res *XMLResponse) Header() http.Header
Header returns the HTTP response headers
func (*XMLResponse) Marshal ¶
func (res *XMLResponse) Marshal() ([]byte, error)
Marshal a XMLResponse to XML
func (*XMLResponse) Merge ¶
func (res *XMLResponse) Merge(other Response) error
Merge XMLResponses. However, in general this should not be merged.
func (*XMLResponse) MergeXMLResponse ¶
func (res *XMLResponse) MergeXMLResponse(other *XMLResponse) error
MergeXMLResponse is a specific merge
func (*XMLResponse) SetHeader ¶
func (res *XMLResponse) SetHeader(h http.Header)
SetHeader sets the HTTP response headers
func (*XMLResponse) SetStatus ¶
func (res *XMLResponse) SetStatus(s int)
SetStatus sets the HTTP response status code
func (*XMLResponse) Status ¶
func (res *XMLResponse) Status() int
Status returns the HTTP response status code