Class: BigBlueButton::BigBlueButtonModules

Inherits:
Object
  • Object
show all
Defined in:
lib/bigbluebutton_modules.rb

Overview

A class to store the modules configuration to be passed in BigBlueButtonApi#create_meeting().

Usage example:

modules = BigBlueButton::BigBlueButtonModules.new

# adds presentations by URL
modules.add_presentation(:url, "http://www.samplepdf.com/sample.pdf")
modules.add_presentation(:url, "http://www.samplepdf.com/sample2.pdf")

# adds presentations from a local file
# the file will be opened and encoded in base64
modules.add_presentation(:file, "presentations/class01.ppt")

# adds a base64 encoded presentation
modules.add_presentation(:base64, "JVBERi0xLjQKJ....[clipped here]....0CiUlRU9GCg==", "first-class.pdf")

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeBigBlueButtonModules

Returns a new instance of BigBlueButtonModules.



28
29
30
31
32
# File 'lib/bigbluebutton_modules.rb', line 28

def initialize
  @presentation_urls = []
  @presentation_files = []
  @presentation_base64s = []
end

Instance Attribute Details

#presentation_base64sObject

Returns the value of attribute presentation_base64s.



26
27
28
# File 'lib/bigbluebutton_modules.rb', line 26

def presentation_base64s
  @presentation_base64s
end

#presentation_filesObject

Returns the value of attribute presentation_files.



25
26
27
# File 'lib/bigbluebutton_modules.rb', line 25

def presentation_files
  @presentation_files
end

#presentation_urlsObject

Returns the value of attribute presentation_urls.



24
25
26
# File 'lib/bigbluebutton_modules.rb', line 24

def presentation_urls
  @presentation_urls
end

Instance Method Details

#add_presentation(type, value, name = nil) ⇒ Object



34
35
36
37
38
39
40
41
42
43
# File 'lib/bigbluebutton_modules.rb', line 34

def add_presentation(type, value, name=nil)
  case type
  when :url
    @presentation_urls.push(value)
  when :file
    @presentation_files.push(value)
  when :base64
    @presentation_base64s.push([name, value])
  end
end

#to_xmlObject



45
46
47
48
49
50
51
52
53
# File 'lib/bigbluebutton_modules.rb', line 45

def to_xml
  unless has_presentations?
    ""
  else
    xml  = xml_header
    xml << presentations_to_xml
    xml << xml_footer
  end
end