-
Notifications
You must be signed in to change notification settings - Fork 265
Description
Describe the issue
The Media Platform fails to initialize, causing the entire application to halt.
Code Snippet
/* Build client */
var builder = new CommunicationsClientBuilder(_appOptions.Value.Name, _appOptions.Value.Id, _graphLogger);
builder.SetAuthenticationProvider(_authProvider);
Debug.Assert(!string.IsNullOrEmpty(_options.Value.NotificationUrl));
builder.SetNotificationUrl(new Uri(_options.Value.NotificationUrl));
Debug.Assert(!string.IsNullOrWhiteSpace(_options.Value.CertificateThumbprint));
var certificate = GetCertificate(_options.Value.CertificateThumbprint);
var mediaPlatformSettings = new MediaPlatformSettings() {
MediaPlatformInstanceSettings = new() {
Certificate = certificate,
InstanceInternalPort = _options.Value.InstanceInternalPort,
InstancePublicIPAddress = IPAddress.Any,
InstancePublicPort = _options.Value.InstancePublicPort,
ServiceFqdn = _options.Value.ServiceFqdn,
},
ApplicationId = _appOptions.Value.Id,
MediaPlatformLogger = _mediaPlatformLogger,
};
builder.SetMediaPlatformSettings(mediaPlatformSettings);
builder.SetServiceBaseUrl(new Uri(PlaceCallEndpointUrl));
_clinet = builder.Build();
_clinet.OnNotificationQueued += OnNotificationQueued;
_clinet.OnNotificationProcessed += OnNotificationProcessed;
_clinet.OnNotificationException += OnNotificationException;Expected behavior
Execute without error.
Graph SDK (please complete the following information):
- Target Framework: net8.0-windows
- Target Platform: x64
- C++ Redistributable: x64 14.44.35211
- Microsoft.Graph.Communications.Client: 1.2.0.15382
- Microsoft.Graph.Communications.Calls.Media: 1.2.0.15382
- Microsoft.Skype.Bots.Media: 1.31.0.225-preview
Call ID
N/A
Logs
[17:00:01 INF] User profile is available. Using 'C:\Users\***\AppData\Local\ASP.NET\DataProtection-Keys' as key repository and Windows DPAPI to encrypt keys at rest. <s:Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Created a new Aria trace listener with token ***-***-***-***-***-***-*** <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Setting MediaAgents platform log level to Information <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Setting MediaApiLogLevel to Warning <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Setting AvMP log level to Error <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Attempting to apply the UnifiedLogging configuration: UnifiedLoggingConfiguration: [ IsEnabled: False ScenarioStrings: ] <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Setting UnifiedLogging Info: [isEnabled: False] [ScenarioStrings: ] <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Logger initialized for application ID ***-***-***-***-***. Logging configuration: LoggingConfiguration: [ MediaAgentsPlatformLogLevel: Information; MediaApiLogLevel: Warning; MediaProcessorLogLevel: Error; AriaLoggingConfiguration: AriaLoggingConfiguration: [ AriaTenantToken: ***-***-***-***-***-***-***; AriaTraceEventName: SkypeMediaBotsTraces; SplitAriaTracesByLevel: True; DisableAriaTracing: ]; UnifiedLoggingConfiguration: UnifiedLoggingConfiguration: [ IsEnabled: False ScenarioStrings: ] ] <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Whitelist config value changed: cipnoam.api.mpaas.trafficmanager.net,intnoam.api.mpaas.trafficmanager.net,dognoam.api.mpaas.trafficmanager.net,prdnoam.api.mpaas.trafficmanager.net,prdapac.api.mpaas.trafficmanager.net,prdemea.api.mpaas.trafficmanager.net,prd00apac.mpaas.trafficmanager.net,prd00noam.mpaas.trafficmanager.net,prd00emea.mpaas.trafficmanager.net,mediapaas-api-test-01-wus.cloudapp.net,ucapnoam.api.mpaas.trafficmanager.net,mediapaas-api-apac.pub.ngcmtls.com,mediapaas-api-aus.pub.ngcmtls.com,mediapaas-api-dog.pub.ngcmtls.com,mediapaas-api-emea.pub.ngcmtls.com,mediapaas-api-int.pub.ngcmtls.com,mediapaas-api-noam.pub.ngcmtls.com,mediapaas-api-test.pub.ngcmtls.com,mediapaas-api-prod.gov.ngcmtls.us,mediapaas-api-prod.dod.ngcmtls.us,mediapaas-api.pub.ngcmtls.com,mediapaas-api-prd.pub.ngcmtls.com,mediapaas-api-mp.pub.ngcmtls.com,mediapaas-api-mp.dod.ngcmtls.us,mediapaas-api-mp.gov.ngcmtls.us,mediapaas-api-mp.ngcmtls.cn,mediapaas-api-mp.teams.azclient.eaglex.ic.gov,mediapaas-api-mp.teams.azclient.microsoft.scloud <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] IssuerChainList changed: [ameroot,AME G1 TLS RSA 2048 SHA256 2024 CUS CA 07],[ameroot,AME G1 TLS RSA 2048 SHA256 2024 EUS2 CA 07],[ameroot,AME G1 TLS RSA 2048 SHA256 2024 EUS2EUAP CA 07],[ameroot,AME G1 TLS RSA 2048 SHA256 2024 WCUS CA 07],[ameroot,AME G1 TLS RSA 2048 SHA256 2024 WUS2 CA 07],[ameroot,AME INFRA CA 01],[ameroot,AME Infra CA 02],[ameroot,AME Infra CA 03],[ameroot,AME Infra CA 04],[ameroot,AME Infra CA 05],[ameroot,AME Infra CA 06],[Baltimore CyberTrust Root,MSFT BALT RS256 CA],[DigiCert Global Root CA,DigiCert SHA2 Secure Server CA],[DigiCert Global Root CA,DigiCert TLS Hybrid ECC SHA384 2020 CA1],[DigiCert Global Root CA,DigiCert TLS RSA SHA256 2020 CA1],[DigiCert Global Root G2,DigiCert Global G2 TLS RSA SHA256 2020 CA1],[DigiCert Global Root G2,Microsoft Azure RSA TLS Issuing CA 03],[DigiCert Global Root G2,Microsoft Azure RSA TLS Issuing CA 04],[DigiCert Global Root G2,Microsoft Azure RSA TLS Issuing CA 07],[DigiCert Global Root G2,Microsoft Azure RSA TLS Issuing CA 08],[DigiCert Global Root G2,MSFT RS256 CA-1],[DigiCert Global Root G3,Microsoft Azure ECC TLS Issuing CA 03],[DigiCert Global Root G3,Microsoft Azure ECC TLS Issuing CA 04],[DigiCert Global Root G3,Microsoft Azure ECC TLS Issuing CA 07],[DigiCert Global Root G3,Microsoft Azure ECC TLS Issuing CA 08],[Entrust Root Certification Authority - G2,Entrust Certification Authority - L1K],[Entrust Root Certification Authority - G2,Entrust Certification Authority - L1M],[Microsoft ECC Root Certificate Authority 2017,Microsoft Azure ECC TLS Issuing CA 03],[Microsoft ECC Root Certificate Authority 2017,Microsoft Azure ECC TLS Issuing CA 04],[Microsoft ECC Root Certificate Authority 2017,Microsoft Azure ECC TLS Issuing CA 07],[Microsoft ECC Root Certificate Authority 2017,Microsoft Azure ECC TLS Issuing CA 08],[Microsoft ECC Root Certificate Authority 2017,Microsoft ECC TLS Issuing AOC CA 01],[Microsoft ECC Root Certificate Authority 2017,Microsoft ECC TLS Issuing AOC CA 02],[Microsoft ECC Root Certificate Authority 2017,Microsoft ECC TLS Issuing EOC CA 01],[Microsoft ECC Root Certificate Authority 2017,Microsoft ECC TLS Issuing EOC CA 02],[Microsoft RSA Root Certificate Authority 2017,Microsoft Azure RSA TLS Issuing CA 03],[Microsoft RSA Root Certificate Authority 2017,Microsoft Azure RSA TLS Issuing CA 04],[Microsoft RSA Root Certificate Authority 2017,Microsoft Azure RSA TLS Issuing CA 07],[Microsoft RSA Root Certificate Authority 2017,Microsoft Azure RSA TLS Issuing CA 08],[Microsoft RSA Root Certificate Authority 2017,Microsoft RSA TLS Issuing AOC CA 01],[Microsoft RSA Root Certificate Authority 2017,Microsoft RSA TLS Issuing AOC CA 02],[Microsoft RSA Root Certificate Authority 2017,Microsoft RSA TLS Issuing EOC CA 01],[Microsoft RSA Root Certificate Authority 2017,Microsoft RSA TLS Issuing EOC CA 02] <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Comparing bots version 1.31.0.0225 and minimum supported version 0.0.0.0 <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Platform has 24 cores <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Initializing MP with Service FQDN: ***, Instance public port: ***, Instance internal port: *** <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] UseMPAzureAppHostPerfCounterProvider is false. Discarding MP perf counters <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] MediaPerf is not registered: no key found at SYSTEM\CurrentControlSet\Services\MediaPerf\Performance <s:***.***.MediaPlatformLogger>
[17:00:14 INF] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] UseMPAzureAppHostPerfCounterProvider is false. Not checking for perf counter registration <s:***.***.MediaPlatformLogger>
[17:00:32 FTL] Host terminated unexpectedly. <s:>
Status Code: 0
Microsoft.Graph.Communications.Core.Exceptions.ServiceException: Media platform failed to initialize
---> System.Runtime.InteropServices.SEHException (0x80004005): External component has thrown an exception.
at Microsoft.Rtc.Internal.Media.EngineAPI.CreateEngineApiInstance(IntPtr& pEngine, String pQualifier, Boolean pEnableAudioDevices, Boolean pEnableVideoDevices, Boolean pEnableHealth, RtpSystemConfig pSystemConfig, RtpSystemPriority pSystemPriority)
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.<InnerInitialize>b__149_0()
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.ExecuteUnderMonitor[T,O](T objectToAcquireMonitor, Func`1 f)
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.InnerInitialize()
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.<>c__DisplayClass35_0.<.ctor>b__0()
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.ExecuteUnderMonitor[T,O](T objectToAcquireMonitor, Func`1 f)
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal..ctor(RtpPlatform platform, String traceQualifier, Boolean enableAudioDevices, Boolean enableVideoDevices, Boolean enableHealth, RtpSystemConfig systemConfig, RtpSystemPriority systemPriority)
at Microsoft.Rtc.Internal.Media.RtpPlatform..ctor(String traceQualifier, Boolean enableAudioDevices, Boolean enableVideoDevices, Boolean enableHealth, RtpSystemConfig systemConfig, RtpSystemPriority systemPriority)
at Microsoft.Rtc.Internal.Media.RtpPlatform..ctor(Boolean enableAudioDevices, Boolean enableVideoDevices, Boolean enableHealth, RtpSystemConfig systemConfig)
at Microsoft.Rtc.MPService.MediaStackPlatform..ctor(Boolean enableHealth, Boolean enableAudioDevices, Boolean enableVideoDevices)
at Microsoft.Rtc.MPService.MediaStackFactory.CreateMediaPlatform()
at Microsoft.Rtc.MPService.MPPlatform.get_MediaPlatform()
at Microsoft.Rtc.Internal.MediaProcessor.WebAPI.DynamicCapacityEstimatorFromStack..ctor(IMPHostLogger logger, MPHealthManagerSettings healthSettings, IMpServiceHostMetricsFactory metricsLogger, IWebApiSettings webApiSettings)
at Microsoft.Rtc.Internal.MediaProcessor.WebAPI.MPHealthManager.Initialize(MPHealthManagerSettings settings, Boolean enableCPUPerfCounterMonitor)
at Microsoft.Rtc.Internal.MediaProcessor.WebAPI.MediaProcessorHost..ctor(MediaProcessorHostSettings settings, IMPHostLogger logger, IMPHealthManager healthManager, IMPServiceCounterProvider perfProvider, IMpServiceHostMetricsFactory mpServiceHostMetricsFactory, IRateTracker contextRateTracker)
at Microsoft.Rtc.Internal.MediaProcessor.WebAPI.WebApiStartup.ConfigureContainerBase(IUnityContainer container)
at Microsoft.Rtc.MPService.Internal.NetCoreBootstrap.AspNetCoreStartup.ConfigureContainer(IUnityContainer container)
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
at System.Reflection.MethodBaseInvoker.InvokeWithOneArg(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Microsoft.AspNetCore.Hosting.ConfigureContainerBuilder.InvokeCore(Object instance, Object container)
at Microsoft.AspNetCore.Hosting.GenericWebHostBuilder.ConfigureContainerImpl[TContainer](HostBuilderContext context, TContainer container)
at Microsoft.Extensions.Hosting.HostBuilder.InitializeServiceProvider()
at Microsoft.Extensions.Hosting.HostBuilder.Build()
at Microsoft.Rtc.MPService.Internal.NetCoreBootstrap.MPAzureHttpAppHostNetCore.RunWebServer(String localBaseAddress, String publicBaseAddress)
at Microsoft.Rtc.MPService.Internal.MPAzureAppHost.InitializeHttp(String localBaseAddress, String publicBaseAddress, IWebApiSettings webApiSettings, IMPServiceCounterProvider perfCounterProvider, IMPLogger logger, DelegatingHandler authorizationHandler, X509Certificate2 certificate, ICustomCertificateValidator certificateValidator)
at Microsoft.Skype.Bots.Media.MPAzureAppHostWrapper.Initialize(String publicRoleInstanceFQDN, X509Certificate2 certificate, MPServiceEventDelegate eventDelegate, GetTrustedServersDelegate getTrustedServersDelegate, String alternateConfigFilePath, IMPServiceCounterProvider perfCounterProvider, IMPLogger mpLogger, Boolean enableMediaStackPerConferenceTracing, HttpSettings httpSettings, ICustomCertificateValidator customCertificateValidator)
at Microsoft.Skype.Internal.Bots.Media.InternalMediaPlatform.Initialize(MediaPlatformSettings settings, IConfigurationManager configurationManager, Boolean isTest)
at Microsoft.Skype.Bots.Media.MediaPlatform.Initialize(MediaPlatformSettings settings, IConfigurationManager configManager, Boolean isTest)
at Microsoft.Skype.Bots.Media.MediaPlatform.Initialize(MediaPlatformSettings settings)
at Microsoft.Graph.Communications.Calls.Media.MediaCommunicationsClientBuilderExtensions.SetMediaPlatformSettings(ICommunicationsClientBuilder statefulClientBuilder, MediaPlatformSettings mediaSettings)
--- End of inner exception stack trace ---
at Microsoft.Graph.Communications.Calls.Media.MediaCommunicationsClientBuilderExtensions.SetMediaPlatformSettings(ICommunicationsClientBuilder statefulClientBuilder, MediaPlatformSettings mediaSettings)
at ***.***.Services.BotServices.BotService..ctor(IRequestAuthenticationProvider authProvider, IOptions`1 appOptions, IOptions`1 options, IGraphLogger graphLogger, IMediaPlatformLogger mediaPlatformLogger, ILogger`1 logger, IServiceProvider serviceProvider) in D:\***\***\Services\BotServices\BotService.cs:line 87
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeWithManyArgs(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, RuntimeResolverContext context)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSiteMain(ServiceCallSite callSite, TArgument argument)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitRootCache(ServiceCallSite callSite, RuntimeResolverContext context)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(ServiceCallSite callSite, TArgument argument)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, RuntimeResolverContext context)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSiteMain(ServiceCallSite callSite, TArgument argument)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitRootCache(ServiceCallSite callSite, RuntimeResolverContext context)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(ServiceCallSite callSite, TArgument argument)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitIEnumerable(IEnumerableCallSite enumerableCallSite, RuntimeResolverContext context)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSiteMain(ServiceCallSite callSite, TArgument argument)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitRootCache(ServiceCallSite callSite, RuntimeResolverContext context)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(ServiceCallSite callSite, TArgument argument)
at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.Resolve(ServiceCallSite callSite, ServiceProviderEngineScope scope)
at Microsoft.Extensions.DependencyInjection.ServiceProvider.CreateServiceAccessor(ServiceIdentifier serviceIdentifier)
at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
at Microsoft.Extensions.DependencyInjection.ServiceProvider.GetService(ServiceIdentifier serviceIdentifier, ServiceProviderEngineScope serviceProviderEngineScope)
at Microsoft.Extensions.DependencyInjection.ServiceProvider.GetService(Type serviceType)
at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)
at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService[T](IServiceProvider provider)
at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)
at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.RunAsync(IHost host, CancellationToken token)
at Microsoft.Extensions.Hosting.HostingAbstractionsHostExtensions.Run(IHost host)
at ***.***.Program.Main(String[] args) in D:\***\***\Program.cs:line 13
Additional context
I am resuming an old project that was running well a year ago. It uses .NET 8.0 with Microsoft.Skype.Bots.Media version 1.27.0.2-alpha, together with Microsoft.Graph.Communications packages version 1.2.0.10563.
A couple of days ago, when I ran the project as is, I found that the ASP.NET Core server launched successfully, including the Media Platform, but when I requested the bot to join a meeting, an SEHException was thrown. The exception looks like this:
[17:24:11 DBG] Joining a meeting at https://teams.microsoft.com/l/meetup-join/***. This call will have a scenario ID of ***-***-***-***-***. <s:***.***.Services.BotServices.BotService>
[17:24:12 ERR] [SkypeBotsMediaPlatform][AppId:***-***-***-***-***][***] Caught exception in GetMediaStackClientEcsSettings: System.Runtime.InteropServices.SEHException (0x80004005): External component has thrown an exception.
at Microsoft.Rtc.Internal.Media.EngineAPI.CreateEngineApiInstance(IntPtr& pEngine, String pQualifier, Boolean pEnableAudioDevices, Boolean pEnableVideoDevices, Boolean pEnableHealth, RtpSystemConfig pSystemConfig, RtpSystemPriority pSystemPriority)
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.<InnerInitialize>b__149_0()
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.ExecuteUnderMonitor[T,O](T objectToAcquireMonitor, Func`1 f)
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.InnerInitialize()
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.<>c__DisplayClass35_0.<.ctor>b__0()
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal.ExecuteUnderMonitor[T,O](T objectToAcquireMonitor, Func`1 f)
at Microsoft.Rtc.Internal.Media.RtpPlatformInternal..ctor(RtpPlatform platform, String traceQualifier, Boolean enableAudioDevices, Boolean enableVideoDevices, Boolean enableHealth, RtpSystemConfig systemConfig, RtpSystemPriority systemPriority)
at Microsoft.Rtc.Internal.Media.RtpPlatform..ctor(String traceQualifier, Boolean enableAudioDevices, Boolean enableVideoDevices, Boolean enableHealth, RtpSystemConfig systemConfig, RtpSystemPriority systemPriority)
at Microsoft.Rtc.Internal.Media.RtpPlatform..ctor(Boolean enableAudioDevices, Boolean enableVideoDevices, Boolean enableHealth, RtpSystemConfig systemConfig)
at Microsoft.Rtc.MPService.MediaStackPlatform..ctor(Boolean enableHealth, Boolean enableAudioDevices, Boolean enableVideoDevices)
at Microsoft.Rtc.MPService.MediaStackFactory.CreateMediaPlatform()
at Microsoft.Rtc.MPService.MPPlatform.get_MediaPlatform()
at Microsoft.Skype.Internal.Bots.Media.Helper.GetRtpPlatform()
at Microsoft.Skype.Bots.Media.MPAzureAppHostWrapper.GetMediaStackClientEcsSettings() <s:***.***.MediaPlatformLogger>
So, I thought the SDK might have changed, so I updated to the versions listed in the previous section. Nothing else was changed, and I ran it again, but this time my ASP.NET Core server failed to launch. The problem occurred around the SetMediaPlatformSettings() call. I’ve included its log in a previous section. I tried several intermediate versions as well — the error behavior varied, but none of them succeeded. I can see that all these failures encountered an error in CreateEngineApiInstance(), but no details were provided, so I’m not sure what went wrong. I am running my server app with Admin privileges, and the internal port is not in use. Ngrok TCP tunnel is used. Please help, thank you!