class BigMarkerClient::Api::V1::Conference
Constants
- ASSOCIATED_SERIES_CONFERENCES
- CREATE_CONFERENCE
- DELETE_CONFERENCE
- ENTER_CONFERENCE
- GET_CONFERENCE
- GET_CONFERENCE_ATTENDEES
- GET_CONFERENCE_PRESENTERS
- LIST_CONFERENCES
- RECURRING_CONFERENCES
- SEARCH_CONFERENCES
- UPDATE_CONFERENCE
Public Class Methods
get series related to a conference. @param conference_id [String] conference identifier @param params [Hash] recognized are:
-
page: pagination page
-
per_page: pagination page size (20*)
@return [BigMarkerClient::Models::Conference
# File lib/big_marker_client/api/v1/conference.rb, line 91 def associated_series(conference_id, params = {}) result = get(replace_path_params(path: ASSOCIATED_SERIES_CONFERENCES, replacements: { "{id}": conference_id }), params) return map_to_model_array(result["conferences"]) if result["conferences"] result end
helper method to retrieve all pages for the associated_series method @see associated_series
# File lib/big_marker_client/api/v1/conference.rb, line 102 def associated_series_all(conference_id, params = {}) path = replace_path_params(path: ASSOCIATED_SERIES_CONFERENCES, replacements: { "{id}": conference_id }) loop_over(path, "conferences", ::BigMarkerClient::Models::Conference, params) end
Get all registered attendees of a conference. Recognized @params are: @param conference_id [String] conference identifier @param params [Hash] recognized are:
-
page: pagination page
-
per_page: pagination page size (20*)
@return [BigMarkerClient::Models::Attendee
# File lib/big_marker_client/api/v1/conference.rb, line 202 def attendees(conference_id, params = {}) result = get(replace_path_params(path: GET_CONFERENCE_ATTENDEES, replacements: { "{id}": conference_id }), params) return map_to_model_array(result["attendees"], ::BigMarkerClient::Models::Attendee) if result["attendees"] result end
helper method to retrieve all pages for the attendees method @see attendees
# File lib/big_marker_client/api/v1/conference.rb, line 213 def attendees_all(conference_id, params = {}) path = replace_path_params(path: GET_CONFERENCE_ATTENDEES, replacements: { "{id}": conference_id }) loop_over(path, "attendees", ::BigMarkerClient::Models::Attendee, params) end
create a conference either with a Models::Conference
object or single properties as hash @param body [Hash or BigMarkerClient::Models::Conference
] @return [BigMarkerClient::Models::Conference]
# File lib/big_marker_client/api/v1/conference.rb, line 149 def create(body = {}) body = body.to_h if body.is_a?(::BigMarkerClient::Models::Base) result = post(CREATE_CONFERENCE, body) return ::BigMarkerClient::Models::Conference.new(result["conference"]) if result["conference"] result end
delete a conference @param conference_id [String] conference identifier
# File lib/big_marker_client/api/v1/conference.rb, line 160 def destroy(conference_id) delete(replace_path_params(path: DELETE_CONFERENCE, replacements: { "{id}": conference_id })) end
enter a conference towards an enterprise iframe, @param conference_id [String] conference identifier @param name [String] attendee name @param email [String] attendee email @param body [Hash] recognized are:
-
register_attendee_to_webinar: true/false*
-
attendee_first_name: First name of the attendee for registration (see register_attendee_to_webinar)
-
attendee_last_name: Last name of the attendee for registration (see register_attendee_to_webinar)
-
custom_user_id: an external user id for matching
-
role: the role of the user that is entering the webinar (attendee*, moderator, presenter)
-
exit_uri: URL that attendees will be redirected to after the webinar
@return [Hash] enter_token: auth token for conference, enter_uri: URL to enter conference
# File lib/big_marker_client/api/v1/conference.rb, line 177 def enter(conference_id, name, email, body = {}) body.merge!(id: conference_id, attendee_name: name, attendee_email: email) post(ENTER_CONFERENCE, body) end
lists all conferences, where date range con only be influenced indirectly. @param params [Hash] recognized are:
-
role: Filter by member role (all*, hosting, attending)
-
type: Filter by conference type (future*, past, all, multiple_times, future_do_not_include_happening,
future_with_24_hour_room, past_with_recording, always_open, happening_now)
-
query: search in conference title
-
page: pagination page
-
page_count: pagination page size (20*), ATTENTION: this is called per_page everywhere else!
@return [BigMarkerClient::Models::Conference
# File lib/big_marker_client/api/v1/conference.rb, line 29 def list(params = {}) params["page_count"] ||= params["per_page"] if params["per_page"] result = get(LIST_CONFERENCES, params) return map_to_model_array(result["conferences"]) if result["conferences"] result end
helper method to retrieve all pages for the list method @see list
# File lib/big_marker_client/api/v1/conference.rb, line 40 def list_all(params = {}) params["page_count"] ||= params["per_page"] if params["per_page"] loop_over(LIST_CONFERENCES, "conferences", ::BigMarkerClient::Models::Conference, params) end
Get all presenters of a conference. @param conference_id [String] conference identifier @return [BigMarkerClient::Models::Presenter
# File lib/big_marker_client/api/v1/conference.rb, line 186 def presenters(conference_id) result = get(replace_path_params(path: GET_CONFERENCE_PRESENTERS, replacements: { "{id}": conference_id })) if result["presenters"] return map_to_model_array(result["presenters"], ::BigMarkerClient::Models::Presenter) end result end
get child conferences of a parent recurring conference. @param conference_id [String] conference identifier @param params [Hash] recognized are:
-
start_time: conferences with start time after this date (Unix timestamp)
-
end_time: conferences with end time before this date (Unix timestamp)
-
page: pagination page
-
per_page: pagination page size (20*)
@return [BigMarkerClient::Models::Conference
# File lib/big_marker_client/api/v1/conference.rb, line 116 def recurring(conference_id, params = {}) result = get(replace_path_params(path: RECURRING_CONFERENCES, replacements: { "{id}": conference_id }), params) return map_to_model_array(result["child_conferences"]) if result["child_conferences"] result end
helper method to retrieve all pages for the recurring method @see recurring
# File lib/big_marker_client/api/v1/conference.rb, line 127 def recurring_all(conference_id, params = {}) path = replace_path_params(path: RECURRING_CONFERENCES, replacements: { "{id}": conference_id }) loop_over(path, "child_conferences", ::BigMarkerClient::Models::Conference, params) end
search for conferences with specific matching criteria. @param params [Hash] recognized are:
-
title: search in conference title
-
start_time: conferences with start time after this date (Unix timestamp)
-
end_time: conferences with end time before this date (Unix timestamp)
-
conference_ids: select conferences based on their IDs (comma separated)
-
presenter_member_ids: select conferences based on their presenters IDs (comma separated)
-
role: Filter by member role (all*, hosting, attending)
-
type: Filter by conference type (evergreen_parent evergreen_child recurring_parent recurring_child
meetingspace ondemand live_webinar webcast)
-
page: pagination page
-
per_page: pagination page size (20*)
@return [BigMarkerClient::Models::Conference
# File lib/big_marker_client/api/v1/conference.rb, line 59 def search(params = {}) result = post(SEARCH_CONFERENCES, params) return map_to_model_array(result["conferences"]) if result["conferences"] result end
helper method to retrieve all pages for the search method @see search
# File lib/big_marker_client/api/v1/conference.rb, line 69 def search_all(params = {}) loop_over(SEARCH_CONFERENCES, "conferences", ::BigMarkerClient::Models::Conference, params, :post) end
get one conference based on it’s ID @param conference_id [String] conference identifier @return [BigMarkerClient::Models::Conference]
# File lib/big_marker_client/api/v1/conference.rb, line 77 def show(conference_id) result = get(replace_path_params(path: GET_CONFERENCE, replacements: { "{id}": conference_id })) return ::BigMarkerClient::Models::Conference.new(result["conference"]) if result["conference"] result end
update a conference either with a Models::Conference
object or single properties as hash @param conference_id [String] conference identifier @param body [Hash or BigMarkerClient::Models::Conference
] @return [BigMarkerClient::Models::Conference]
# File lib/big_marker_client/api/v1/conference.rb, line 137 def update(conference_id, body = {}) body = body.to_h if body.is_a?(::BigMarkerClient::Models::Conference) result = put(replace_path_params(path: UPDATE_CONFERENCE, replacements: { "{id}": conference_id }), body) return ::BigMarkerClient::Models::Conference.new(result["conference"]) if result["conference"] result end
Private Class Methods
# File lib/big_marker_client/api/v1/conference.rb, line 220 def map_to_model_array(hash_array, model_class = ::BigMarkerClient::Models::Conference) hash_array.map { |hash| model_class.new(hash) } end