Module: ChimeSdk::Controller::Common
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/chime_sdk/controller/common.rb
Overview
Common implementation for controllers.
Instance Method Summary collapse
-
#attendee_id ⇒ String
protected
Return attendee id from @attendee object or attendee id param.
-
#create_attendee ⇒ Hash
protected
Create attendee by MeetingCoordinator.
-
#create_attendee_from_meeting ⇒ Hash
protected
Create attendee from meeting by MeetingCoordinator.
-
#create_meeting ⇒ Hash
protected
Create meeting by MeetingCoordinator.
-
#create_meeting_with_attendee ⇒ Hash
protected
Create meeting with attendee by MeetingCoordinator.
-
#delete_attendee ⇒ void
protected
Delete attendee by MeetingCoordinator.
-
#delete_meeting ⇒ void
protected
Delete meeting by MeetingCoordinator.
-
#error_response(error_info = {}) ⇒ Hash
protected
Returns error response as Hash.
-
#get_attendee ⇒ Hash
protected
Get attendee by MeetingCoordinator.
-
#get_meeting ⇒ Hash
protected
Get meeting by MeetingCoordinator.
-
#list_attendees ⇒ Array<Hash>
protected
List attendees by MeetingCoordinator.
-
#meeting_id ⇒ String
protected
Return meeting id from @meeting object or meeting id param.
-
#meeting_tags ⇒ Array<Hash>
protected
Return tags for meetings from defined optional_meeting_tags.
-
#merge_application_attendee_metadata(attendee) ⇒ Hash
protected
Merge application metadata into attendee instance and return.
-
#merge_application_meeting_metadata(meeting) ⇒ Hash
protected
Merge application metadata into meeting instance and return.
-
#render_forbidden(error = nil) ⇒ void
protected
Render Forbidden error with 403 status.
-
#render_resource_not_found(error = nil) ⇒ void
protected
Render Resource Not Found error with 404 status.
-
#tags ⇒ Array<Hash>
protected
Return common tags for meetings and attendees.
Instance Method Details
#attendee_id ⇒ String (protected)
Return attendee id from @attendee object or attendee id param.
38 39 40 |
# File 'lib/chime_sdk/controller/common.rb', line 38 def attendee_id @attendee ? @attendee[:Attendee][:AttendeeId] : attendee_id_param end |
#create_attendee ⇒ Hash (protected)
Create attendee by MeetingCoordinator.
76 77 78 79 |
# File 'lib/chime_sdk/controller/common.rb', line 76 def create_attendee @attendee = ChimeSdk::MeetingCoordinator.create_attendee(meeting_id, attendee_request_id) @attendee = (@attendee) end |
#create_attendee_from_meeting ⇒ Hash (protected)
Create attendee from meeting by MeetingCoordinator.
108 109 110 111 112 113 114 |
# File 'lib/chime_sdk/controller/common.rb', line 108 def create_attendee_from_meeting create_attendee @meeting = @meeting.merge(@attendee) @meeting = (@meeting) @meeting = (@meeting) @attendee = (@attendee) end |
#create_meeting ⇒ Hash (protected)
Create meeting by MeetingCoordinator.
45 46 47 48 |
# File 'lib/chime_sdk/controller/common.rb', line 45 def create_meeting @meeting = ChimeSdk::MeetingCoordinator.create_meeting(meeting_request_id, tags: ) @meeting = (@meeting) end |
#create_meeting_with_attendee ⇒ Hash (protected)
Create meeting with attendee by MeetingCoordinator.
99 100 101 102 103 |
# File 'lib/chime_sdk/controller/common.rb', line 99 def create_meeting_with_attendee create_meeting create_attendee_from_meeting @meeting end |
#delete_attendee ⇒ void (protected)
This method returns an undefined value.
Delete attendee by MeetingCoordinator.
92 93 94 |
# File 'lib/chime_sdk/controller/common.rb', line 92 def delete_attendee ChimeSdk::MeetingCoordinator.delete_attendee(meeting_id, attendee_id) end |
#delete_meeting ⇒ void (protected)
This method returns an undefined value.
Delete meeting by MeetingCoordinator.
61 62 63 |
# File 'lib/chime_sdk/controller/common.rb', line 61 def delete_meeting ChimeSdk::MeetingCoordinator.delete_meeting(meeting_id) end |
#error_response(error_info = {}) ⇒ Hash (protected)
Returns error response as Hash
160 161 162 |
# File 'lib/chime_sdk/controller/common.rb', line 160 def error_response(error_info = {}) { gem: "chime-sdk-rails", error: error_info } end |
#get_attendee ⇒ Hash (protected)
Get attendee by MeetingCoordinator.
84 85 86 87 |
# File 'lib/chime_sdk/controller/common.rb', line 84 def get_attendee @attendee = ChimeSdk::MeetingCoordinator.get_attendee(meeting_id, attendee_id) @attendee = (@attendee) end |
#get_meeting ⇒ Hash (protected)
Get meeting by MeetingCoordinator.
53 54 55 56 |
# File 'lib/chime_sdk/controller/common.rb', line 53 def get_meeting @meeting = ChimeSdk::MeetingCoordinator.get_meeting(meeting_id) @meeting = (@meeting) end |
#list_attendees ⇒ Array<Hash> (protected)
List attendees by MeetingCoordinator.
68 69 70 71 |
# File 'lib/chime_sdk/controller/common.rb', line 68 def list_attendees @attendees = ChimeSdk::MeetingCoordinator.list_attendees(meeting_id) @attendees = @attendees.map { |attendee| (attendee) } end |
#meeting_id ⇒ String (protected)
Return meeting id from @meeting object or meeting id param.
31 32 33 |
# File 'lib/chime_sdk/controller/common.rb', line 31 def meeting_id @meeting ? @meeting[:Meeting][:MeetingId] : meeting_id_param end |
#meeting_tags ⇒ Array<Hash> (protected)
Return tags for meetings from defined optional_meeting_tags.
135 136 137 |
# File 'lib/chime_sdk/controller/common.rb', line 135 def + end |
#merge_application_attendee_metadata(attendee) ⇒ Hash (protected)
Merge application metadata into attendee instance and return.
152 153 154 155 |
# File 'lib/chime_sdk/controller/common.rb', line 152 def (attendee) attendee[:Attendee][:ApplicationMetadata] = (attendee) attendee end |
#merge_application_meeting_metadata(meeting) ⇒ Hash (protected)
Merge application metadata into meeting instance and return.
143 144 145 146 |
# File 'lib/chime_sdk/controller/common.rb', line 143 def (meeting) meeting[:Meeting][:ApplicationMetadata] = (meeting) meeting end |
#render_forbidden(error = nil) ⇒ void (protected)
This method returns an undefined value.
Render Forbidden error with 403 status
167 168 169 170 171 172 173 |
# File 'lib/chime_sdk/controller/common.rb', line 167 def render_forbidden(error = nil) = error.respond_to?(:message) ? error. : error respond_to do |format| format.html { redirect_to meeting_resources_path, notice: "Forbidden: #{}" } format.json { render status: 403, json: error_response(code: 403, message: "Forbidden", type: ) } end end |
#render_resource_not_found(error = nil) ⇒ void (protected)
This method returns an undefined value.
Render Resource Not Found error with 404 status
178 179 180 181 182 183 184 |
# File 'lib/chime_sdk/controller/common.rb', line 178 def render_resource_not_found(error = nil) = error.respond_to?(:message) ? error. : error respond_to do |format| format.html { redirect_to meeting_resources_path, notice: "Resource not found: #{}" } format.json { render status: 404, json: error_response(code: 404, message: "Resource not found", type: ) } end end |