private Amazon.ChimeSDKMeetings.Model.CreateMeetingResponse CallAWSServiceOperation(IAmazonChimeSDKMeetings client, Amazon.ChimeSDKMeetings.Model.CreateMeetingRequest request) { Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon Chime SDK Meetings", "CreateMeeting"); try { #if DESKTOP return(client.CreateMeeting(request)); #elif CORECLR return(client.CreateMeetingAsync(request).GetAwaiter().GetResult()); #else #error "Unknown build edition" #endif } catch (AmazonServiceException exc) { var webException = exc.InnerException as System.Net.WebException; if (webException != null) { throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException); } throw; } }
public object Execute(ExecutorContext context) { var cmdletContext = context as CmdletContext; // create request var request = new Amazon.ChimeSDKMeetings.Model.CreateMeetingRequest(); if (cmdletContext.ClientRequestToken != null) { request.ClientRequestToken = cmdletContext.ClientRequestToken; } if (cmdletContext.ExternalMeetingId != null) { request.ExternalMeetingId = cmdletContext.ExternalMeetingId; } if (cmdletContext.MediaRegion != null) { request.MediaRegion = cmdletContext.MediaRegion; } // populate MeetingFeatures var requestMeetingFeaturesIsNull = true; request.MeetingFeatures = new Amazon.ChimeSDKMeetings.Model.MeetingFeaturesConfiguration(); Amazon.ChimeSDKMeetings.Model.AudioFeatures requestMeetingFeatures_meetingFeatures_Audio = null; // populate Audio var requestMeetingFeatures_meetingFeatures_AudioIsNull = true; requestMeetingFeatures_meetingFeatures_Audio = new Amazon.ChimeSDKMeetings.Model.AudioFeatures(); Amazon.ChimeSDKMeetings.MeetingFeatureStatus requestMeetingFeatures_meetingFeatures_Audio_audio_EchoReduction = null; if (cmdletContext.Audio_EchoReduction != null) { requestMeetingFeatures_meetingFeatures_Audio_audio_EchoReduction = cmdletContext.Audio_EchoReduction; } if (requestMeetingFeatures_meetingFeatures_Audio_audio_EchoReduction != null) { requestMeetingFeatures_meetingFeatures_Audio.EchoReduction = requestMeetingFeatures_meetingFeatures_Audio_audio_EchoReduction; requestMeetingFeatures_meetingFeatures_AudioIsNull = false; } // determine if requestMeetingFeatures_meetingFeatures_Audio should be set to null if (requestMeetingFeatures_meetingFeatures_AudioIsNull) { requestMeetingFeatures_meetingFeatures_Audio = null; } if (requestMeetingFeatures_meetingFeatures_Audio != null) { request.MeetingFeatures.Audio = requestMeetingFeatures_meetingFeatures_Audio; requestMeetingFeaturesIsNull = false; } // determine if request.MeetingFeatures should be set to null if (requestMeetingFeaturesIsNull) { request.MeetingFeatures = null; } if (cmdletContext.MeetingHostId != null) { request.MeetingHostId = cmdletContext.MeetingHostId; } // populate NotificationsConfiguration var requestNotificationsConfigurationIsNull = true; request.NotificationsConfiguration = new Amazon.ChimeSDKMeetings.Model.NotificationsConfiguration(); System.String requestNotificationsConfiguration_notificationsConfiguration_LambdaFunctionArn = null; if (cmdletContext.NotificationsConfiguration_LambdaFunctionArn != null) { requestNotificationsConfiguration_notificationsConfiguration_LambdaFunctionArn = cmdletContext.NotificationsConfiguration_LambdaFunctionArn; } if (requestNotificationsConfiguration_notificationsConfiguration_LambdaFunctionArn != null) { request.NotificationsConfiguration.LambdaFunctionArn = requestNotificationsConfiguration_notificationsConfiguration_LambdaFunctionArn; requestNotificationsConfigurationIsNull = false; } System.String requestNotificationsConfiguration_notificationsConfiguration_SnsTopicArn = null; if (cmdletContext.NotificationsConfiguration_SnsTopicArn != null) { requestNotificationsConfiguration_notificationsConfiguration_SnsTopicArn = cmdletContext.NotificationsConfiguration_SnsTopicArn; } if (requestNotificationsConfiguration_notificationsConfiguration_SnsTopicArn != null) { request.NotificationsConfiguration.SnsTopicArn = requestNotificationsConfiguration_notificationsConfiguration_SnsTopicArn; requestNotificationsConfigurationIsNull = false; } System.String requestNotificationsConfiguration_notificationsConfiguration_SqsQueueArn = null; if (cmdletContext.NotificationsConfiguration_SqsQueueArn != null) { requestNotificationsConfiguration_notificationsConfiguration_SqsQueueArn = cmdletContext.NotificationsConfiguration_SqsQueueArn; } if (requestNotificationsConfiguration_notificationsConfiguration_SqsQueueArn != null) { request.NotificationsConfiguration.SqsQueueArn = requestNotificationsConfiguration_notificationsConfiguration_SqsQueueArn; requestNotificationsConfigurationIsNull = false; } // determine if request.NotificationsConfiguration should be set to null if (requestNotificationsConfigurationIsNull) { request.NotificationsConfiguration = null; } CmdletOutput output; // issue call var client = Client ?? CreateClient(_CurrentCredentials, _RegionEndpoint); try { var response = CallAWSServiceOperation(client, request); object pipelineOutput = null; pipelineOutput = cmdletContext.Select(response, this); output = new CmdletOutput { PipelineOutput = pipelineOutput, ServiceResponse = response }; } catch (Exception e) { output = new CmdletOutput { ErrorResponse = e }; } return(output); }