require 'microsoft_kiota_abstractions' require_relative '../../../../../../microsoft_graph' require_relative '../../../../../../models/mute_participant_operation' require_relative '../../../../../../models/o_data_errors/o_data_error' require_relative '../../../../../communications' require_relative '../../../../calls' require_relative '../../../item' require_relative '../../participants' require_relative '../item' require_relative './mute' module MicrosoftGraph module Communications module Calls module Item module Participants module Item module Mute ## # Provides operations to call the mute method. class MuteRequestBuilder ## # Path parameters for the request @path_parameters ## # The request adapter to use to execute the requests. @request_adapter ## # Url template to use to build the URL for the current request builder @url_template ## ## Instantiates a new MuteRequestBuilder and sets the default values. ## @param pathParameters Path parameters for the request ## @param requestAdapter The request adapter to use to execute the requests. ## @return a void ## def initialize(path_parameters, request_adapter) raise StandardError, 'path_parameters cannot be null' if path_parameters.nil? raise StandardError, 'request_adapter cannot be null' if request_adapter.nil? @url_template = "{+baseurl}/communications/calls/{call%2Did}/participants/{participant%2Did}/mute" @request_adapter = request_adapter path_parameters = { "request-raw-url" => path_parameters } if path_parameters.is_a? String @path_parameters = path_parameters if path_parameters.is_a? Hash end ## ## Mute a specific participant in the call. This is a server mute, meaning that the server will drop all audio packets for this participant, even if the participant continues to stream audio. For more information about how to handle mute operations, see muteParticipantOperation. ## @param body The request body ## @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. ## @return a Fiber of mute_participant_operation ## def post(body, request_configuration=nil) raise StandardError, 'body cannot be null' if body.nil? request_info = self.to_post_request_information( body, request_configuration ) error_mapping = Hash.new error_mapping["4XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrors::ODataError.create_from_discriminator_value(pn) } error_mapping["5XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrors::ODataError.create_from_discriminator_value(pn) } return @request_adapter.send_async(request_info, lambda {|pn| MicrosoftGraph::Models::MuteParticipantOperation.create_from_discriminator_value(pn) }, error_mapping) end ## ## Mute a specific participant in the call. This is a server mute, meaning that the server will drop all audio packets for this participant, even if the participant continues to stream audio. For more information about how to handle mute operations, see muteParticipantOperation. ## @param body The request body ## @param requestConfiguration Configuration for the request such as headers, query parameters, and middleware options. ## @return a request_information ## def to_post_request_information(body, request_configuration=nil) raise StandardError, 'body cannot be null' if body.nil? request_info = MicrosoftKiotaAbstractions::RequestInformation.new() request_info.url_template = @url_template request_info.path_parameters = @path_parameters request_info.http_method = :POST request_info.headers.add('Accept', 'application/json') unless request_configuration.nil? request_info.add_headers_from_raw_object(request_configuration.headers) request_info.add_request_options(request_configuration.options) end request_info.set_content_from_parsable(self.request_adapter, "application/json", body) return request_info end ## # Configuration for the request such as headers, query parameters, and middleware options. class MuteRequestBuilderPostRequestConfiguration ## # Request headers attr_accessor :headers ## # Request options attr_accessor :options end end end end end end end end end