Class: Plivo::Resources::MaskingSessionInterface
- Inherits:
-
Base::ResourceInterface
- Object
- Base::ResourceInterface
- Plivo::Resources::MaskingSessionInterface
- Defined in:
- lib/plivo/resources/maskingsession.rb
Constant Summary
Constants included from Utils
Instance Method Summary collapse
- #create(first_party: nil, second_party: nil, session_expiry: nil, call_time_limit: nil, record: nil, record_file_format: nil, recording_callback_url: nil, initiate_call_to_first_party: nil, callback_url: nil, callback_method: nil, ring_timeout: nil, first_party_play_url: nil, second_party_play_url: nil, recording_callback_method: nil, is_pin_authentication_required: nil, generate_pin: nil, generate_pin_length: nil, first_party_pin: nil, second_party_pin: nil, pin_prompt_play: nil, pin_retry: nil, pin_retry_wait: nil, incorrect_pin_play: nil, unknown_caller_play: nil, subaccount: nil, geomatch: nil, force_pin_authentication: nil, virtual_number_cooloff_period: nil, create_session_with_single_party: nil) ⇒ Object
- #delete(session_uuid) ⇒ Object
- #each ⇒ Object
- #get(session_uuid) ⇒ Object
-
#initialize(client, resource_list_json = nil) ⇒ MaskingSessionInterface
constructor
A new instance of MaskingSessionInterface.
- #list(options = nil) ⇒ Object
- #update(session_uuid, options = nil) ⇒ Object
Methods included from Utils
GetSortedQueryParamString?, compute_signatureV3?, expected_type?, expected_value?, generate_url?, getMapFromQueryString?, is_one_among_string_url?, multi_valid_param?, raise_invalid_request, valid_account?, valid_date_format?, valid_mainaccount?, valid_multiple_destination_integers?, valid_multiple_destination_nos?, valid_param?, valid_range?, valid_signature?, valid_signatureV3?, valid_subaccount?, valid_url?
Constructor Details
#initialize(client, resource_list_json = nil) ⇒ MaskingSessionInterface
Returns a new instance of MaskingSessionInterface.
102 103 104 105 106 107 108 |
# File 'lib/plivo/resources/maskingsession.rb', line 102 def initialize(client, resource_list_json = nil) @_name = 'Masking/Session' @_resource_type = MaskingSession @_identifier_string = 'session_uuid' super @_is_voice_request = true end |
Instance Method Details
#create(first_party: nil, second_party: nil, session_expiry: nil, call_time_limit: nil, record: nil, record_file_format: nil, recording_callback_url: nil, initiate_call_to_first_party: nil, callback_url: nil, callback_method: nil, ring_timeout: nil, first_party_play_url: nil, second_party_play_url: nil, recording_callback_method: nil, is_pin_authentication_required: nil, generate_pin: nil, generate_pin_length: nil, first_party_pin: nil, second_party_pin: nil, pin_prompt_play: nil, pin_retry: nil, pin_retry_wait: nil, incorrect_pin_play: nil, unknown_caller_play: nil, subaccount: nil, geomatch: nil, force_pin_authentication: nil, virtual_number_cooloff_period: nil, create_session_with_single_party: nil) ⇒ Object
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 |
# File 'lib/plivo/resources/maskingsession.rb', line 115 def create(first_party: nil, second_party: nil, session_expiry: nil, call_time_limit: nil, record: nil, record_file_format: nil, recording_callback_url: nil, initiate_call_to_first_party: nil, callback_url: nil, callback_method: nil, ring_timeout: nil, first_party_play_url: nil, second_party_play_url: nil, recording_callback_method: nil, is_pin_authentication_required: nil, generate_pin: nil, generate_pin_length: nil, first_party_pin: nil, second_party_pin: nil, pin_prompt_play: nil, pin_retry: nil, pin_retry_wait: nil, incorrect_pin_play: nil, unknown_caller_play: nil, subaccount: nil, geomatch: nil, force_pin_authentication: nil, virtual_number_cooloff_period: nil, create_session_with_single_party: nil) valid_param?(:first_party, first_party, [String, Symbol], false) valid_param?(:second_party, second_party, [String, Symbol], false) params = {} params[:first_party] = first_party unless first_party.nil? params[:second_party] = second_party unless second_party.nil? params[:session_expiry] = session_expiry unless session_expiry.nil? params[:call_time_limit] = call_time_limit unless call_time_limit.nil? params[:record] = record unless record.nil? params[:record_file_format] = record_file_format unless record_file_format.nil? params[:recording_callback_url] = recording_callback_url unless recording_callback_url.nil? params[:initiate_call_to_first_party] = initiate_call_to_first_party unless initiate_call_to_first_party.nil? params[:callback_url] = callback_url unless callback_url.nil? params[:callback_method] = callback_method unless callback_method.nil? params[:ring_timeout] = ring_timeout unless ring_timeout.nil? params[:first_party_play_url] = first_party_play_url unless first_party_play_url.nil? params[:second_party_play_url] = second_party_play_url unless second_party_play_url.nil? params[:recording_callback_method] = recording_callback_method unless recording_callback_method.nil? params[:is_pin_authentication_required] = is_pin_authentication_required unless is_pin_authentication_required.nil? params[:generate_pin] = generate_pin unless generate_pin.nil? params[:generate_pin_length] = generate_pin_length unless generate_pin_length.nil? params[:first_party_pin] = first_party_pin unless first_party_pin.nil? params[:second_party_pin] = second_party_pin unless second_party_pin.nil? params[:pin_prompt_play] = pin_prompt_play unless pin_prompt_play.nil? params[:pin_retry] = pin_retry unless pin_retry.nil? params[:pin_retry_wait] = pin_retry_wait unless pin_retry_wait.nil? params[:incorrect_pin_play] = incorrect_pin_play unless incorrect_pin_play.nil? params[:unknown_caller_play] = unknown_caller_play unless unknown_caller_play.nil? params[:subaccount] = subaccount unless subaccount.nil? params[:geomatch] = geomatch unless geomatch.nil? params[:force_pin_authentication] = force_pin_authentication unless force_pin_authentication.nil? params[:virtual_number_cooloff_period] = virtual_number_cooloff_period unless virtual_number_cooloff_period.nil? params[:create_session_with_single_party] = create_session_with_single_party unless create_session_with_single_party.nil? perform_create(params) end |
#delete(session_uuid) ⇒ Object
213 214 215 216 |
# File 'lib/plivo/resources/maskingsession.rb', line 213 def delete(session_uuid) valid_param?(:session_uuid, session_uuid, [String, Symbol], true) MaskingSession.new(@_client, resource_id: session_uuid).delete end |
#each ⇒ Object
203 204 205 206 |
# File 'lib/plivo/resources/maskingsession.rb', line 203 def each maskingsession_list = list maskingsession_list[:objects].each { |maskingsession| yield maskingsession } end |
#get(session_uuid) ⇒ Object
110 111 112 113 |
# File 'lib/plivo/resources/maskingsession.rb', line 110 def get(session_uuid) valid_param?(:session_uuid, session_uuid, [String, Symbol], true) perform_get_with_response(session_uuid) end |
#list(options = nil) ⇒ Object
157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 |
# File 'lib/plivo/resources/maskingsession.rb', line 157 def list( = nil) return perform_list_with_response if .nil? valid_param?(:options, , Hash, true) raise_invalid_request("Offset can't be negative") if .key?(:offset) && [:offset] < 0 if .key?(:limit) && ([:limit] > 20 || [:limit] <= 0) raise_invalid_request('The maximum number of results that can be '\ "fetched is 20. limit can't be more than 20 or less than 1") end params = %i[ first_party second_party virtual_number status created_time created_time__lt created_time__gt created_time__lte created_time__gte expiry_time expiry_time__lt expiry_time__gt expiry_time__lte expiry_time__gte duration duration__lt duration__gt duration__lte duration__gte limit offset subaccount ].reduce({}) do |result_hash, param| if .key?(param) if valid_param?(param, [param], [String, Symbol], true) result_hash[param] = [param] end end result_hash end perform_list_with_response(params) end |
#update(session_uuid, options = nil) ⇒ Object
208 209 210 211 |
# File 'lib/plivo/resources/maskingsession.rb', line 208 def update(session_uuid, = nil) valid_param?(:session_uuid, session_uuid, [String, Symbol], true) MaskingSession.new(@_client, resource_id: session_uuid).update() end |