I am trying to configure on h2d some help?
I have the window with only external spool and no one can selected
but spools are present on /spool page on unformatted data
Im trying to use it with the AMS Lite and like the others it only shows the external Spool and not the AMS.
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[14]
spoolman-update-1 | Now listening on: http://[::]:8080
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Application started. Press Ctrl+C to shut down.
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Hosting environment: Production
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Content root path: /app
spoolman-update-1 | Unhandled exception. System.Net.Http.HttpRequestException: An error occurred while sending the request.
spoolman-update-1 | ---> System.Net.Http.HttpIOException: The response ended prematurely. (ResponseEnded)
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | --- End of inner exception stack trace ---
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
spoolman-update-1 | at Gateways.HealthCheckSpoolmanEndpoint.CheckHealthAsync() in /src/Gateways/Spoolman/Endpoints/Health.cs:line 10
spoolman-update-1 | at Gateways.SpoolmanClient.CheckHealthAsync() in /src/Gateways/Spoolman/Client.cs:line 25
spoolman-update-1 | at Gateways.GatewayChecker.CheckGatewayConnectionAsync() in /src/Gateways/GatewayChecker.cs:line 7
spoolman-update-1 | at Program.<>c__DisplayClass0_0.<<<Main>$>b__2>d.MoveNext() in /src/Application/Program.cs:line 56
spoolman-update-1 | --- End of stack trace from previous location ---
spoolman-update-1 | at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
spoolman-update-1 | at System.Threading.ThreadPoolWorkQueue.Dispatch()
spoolman-update-1 | at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
spoolman-update-1 exited with code 0
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[14]
spoolman-update-1 | Now listening on: http://[::]:8080
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Application started. Press Ctrl+C to shut down.
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Hosting environment: Production
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Content root path: /app
spoolman-update-1 | Unhandled exception. System.Net.Http.HttpRequestException: An error occurred while sending the request.
spoolman-update-1 | ---> System.Net.Http.HttpIOException: The response ended prematurely. (ResponseEnded)
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | --- End of inner exception stack trace ---
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
spoolman-update-1 | at Gateways.HealthCheckSpoolmanEndpoint.CheckHealthAsync() in /src/Gateways/Spoolman/Endpoints/Health.cs:line 10
spoolman-update-1 | at Gateways.SpoolmanClient.CheckHealthAsync() in /src/Gateways/Spoolman/Client.cs:line 25
spoolman-update-1 | at Gateways.GatewayChecker.CheckGatewayConnectionAsync() in /src/Gateways/GatewayChecker.cs:line 7
spoolman-update-1 | at Program.<>c__DisplayClass0_0.<<<Main>$>b__2>d.MoveNext() in /src/Application/Program.cs:line 56
spoolman-update-1 | --- End of stack trace from previous location ---
spoolman-update-1 | at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
spoolman-update-1 | at System.Threading.ThreadPoolWorkQueue.Dispatch()
spoolman-update-1 | at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
spoolman-update-1 exited with code 0
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[14]
spoolman-update-1 | Now listening on: http://[::]:8080
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Application started. Press Ctrl+C to shut down.
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Hosting environment: Production
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Content root path: /app
spoolman-update-1 | Unhandled exception. System.Net.Http.HttpRequestException: An error occurred while sending the request.
spoolman-update-1 | ---> System.Net.Http.HttpIOException: The response ended prematurely. (ResponseEnded)
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | --- End of inner exception stack trace ---
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
spoolman-update-1 | at Gateways.HealthCheckSpoolmanEndpoint.CheckHealthAsync() in /src/Gateways/Spoolman/Endpoints/Health.cs:line 10
spoolman-update-1 | at Gateways.SpoolmanClient.CheckHealthAsync() in /src/Gateways/Spoolman/Client.cs:line 25
spoolman-update-1 | at Gateways.GatewayChecker.CheckGatewayConnectionAsync() in /src/Gateways/GatewayChecker.cs:line 7
spoolman-update-1 | at Program.<>c__DisplayClass0_0.<<<Main>$>b__2>d.MoveNext() in /src/Application/Program.cs:line 56
spoolman-update-1 | --- End of stack trace from previous location ---
spoolman-update-1 | at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
spoolman-update-1 | at System.Threading.ThreadPoolWorkQueue.Dispatch()
spoolman-update-1 | at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
spoolman-update-1 exited with code 139
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[14]
spoolman-update-1 | Now listening on: http://[::]:8080
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Application started. Press Ctrl+C to shut down.
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Hosting environment: Production
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Content root path: /app
spoolman-update-1 | Unhandled exception. System.Net.Http.HttpRequestException: An error occurred while sending the request.
spoolman-update-1 | ---> System.Net.Http.HttpIOException: The response ended prematurely. (ResponseEnded)
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | --- End of inner exception stack trace ---
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
spoolman-update-1 | at Gateways.HealthCheckSpoolmanEndpoint.CheckHealthAsync() in /src/Gateways/Spoolman/Endpoints/Health.cs:line 10
spoolman-update-1 | at Gateways.SpoolmanClient.CheckHealthAsync() in /src/Gateways/Spoolman/Client.cs:line 25
spoolman-update-1 | at Gateways.GatewayChecker.CheckGatewayConnectionAsync() in /src/Gateways/GatewayChecker.cs:line 7
spoolman-update-1 | at Program.<>c__DisplayClass0_0.<<<Main>$>b__2>d.MoveNext() in /src/Application/Program.cs:line 56
spoolman-update-1 | --- End of stack trace from previous location ---
spoolman-update-1 | at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
spoolman-update-1 | at System.Threading.ThreadPoolWorkQueue.Dispatch()
spoolman-update-1 | at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[14]
spoolman-update-1 | Now listening on: http://[::]:8080
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Application started. Press Ctrl+C to shut down.
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Hosting environment: Production
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Content root path: /app
spoolman-update-1 | Unhandled exception. System.Net.Http.HttpRequestException: An error occurred while sending the request.
spoolman-update-1 | ---> System.Net.Http.HttpIOException: The response ended prematurely. (ResponseEnded)
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | --- End of inner exception stack trace ---
spoolman-update-1 | at System.Net.Http.HttpConnection.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
spoolman-update-1 | at System.Net.Http.HttpClient.<SendAsync>g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
spoolman-update-1 | at Gateways.HealthCheckSpoolmanEndpoint.CheckHealthAsync() in /src/Gateways/Spoolman/Endpoints/Health.cs:line 10
spoolman-update-1 | at Gateways.SpoolmanClient.CheckHealthAsync() in /src/Gateways/Spoolman/Client.cs:line 25
spoolman-update-1 | at Gateways.GatewayChecker.CheckGatewayConnectionAsync() in /src/Gateways/GatewayChecker.cs:line 7
spoolman-update-1 | at Program.<>c__DisplayClass0_0.<<<Main>$>b__2>d.MoveNext() in /src/Application/Program.cs:line 56
spoolman-update-1 | --- End of stack trace from previous location ---
spoolman-update-1 | at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_1(Object state)
spoolman-update-1 | at System.Threading.ThreadPoolWorkQueue.Dispatch()
spoolman-update-1 | at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart()
spoolman-update-1 exited with code 139
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[14]
spoolman-update-1 | Now listening on: http://[::]:8080
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Application started. Press Ctrl+C to shut down.
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Hosting environment: Production
spoolman-update-1 | info: Microsoft.Hosting.Lifetime[0]
spoolman-update-1 | Content root path: /app
Try Application__HomeAssistant__AMSEntities__0
There might be something not up to date with the documentation.
Let me know if it works
How do you run the docker container? Have you use the env vars?
Either your spoolman isnt running or the url provided is wrong
It doenst work for me with:
services:
spoolman-updater:
image: marcokreeft/spoolman-updater:latest
container_name: spoolman-updater-stack
ports:
- "8088:8080"
environment:
APPLICATION__HOMEASSISTANT__URL: http://172.16.2.2:8123
APPLICATION__HOMEASSISTANT__TOKEN: ****
APPLICATION__SPOOLMAN__URL: http://172.16.2.1:7912
Application__HomeAssistant__AMSEntities__0: sensor.a1_ams_slot_
APPLICATION__HOMEASSISTANT__AMSEXTERNALSPOOL: sensor.a1_externalspool
restart: unless-stopped
My Logs:
text error warn system array login
info: Microsoft.Hosting.Lifetime[14]
Now listening on: http://[::]:8080
info: Microsoft.Hosting.Lifetime[0]
Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
Hosting environment: Production
info: Microsoft.Hosting.Lifetime[0]
Content root path: /app
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNCQTHCQG9T4", Request id "0HNCQTHCQG9T4:00000001": An unhandled exception was thrown by the application.
System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at System.Net.Http.Json.HttpClientJsonExtensions.<FromJsonAsyncCore>g__Core|12_0[TValue,TJsonOptions](HttpClient client, Task`1 responseTask, Boolean usingResponseHeadersRead, CancellationTokenSource linkedCTS, Func`4 deserializeMethod, TJsonOptions jsonOptions, CancellationToken cancellationToken)
at Gateways.HomeAssistantClient.GetTrayInfoAsync(String entity) in /src/Gateways/HomeAssistant/Client.cs:line 48
at Gateways.HomeAssistantClient.GetExternalSpoolAsync() in /src/Gateways/HomeAssistant/Client.cs:line 44
at Domain.GetAllAMSUseCase.ExecuteAsync(GetAllAMSInput input) in /src/Domain/UseCases/Tray/GetAll/UseCase.cs:line 11
at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
at Application.Controllers.TraysController.Get(GetAllAMSInput input) in /src/Application/Controllers/Trays.cs:line 12
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
It also doesnt work with:
services:
spoolman-updater:
image: marcokreeft/spoolman-updater:latest
container_name: spoolman-updater-stack
ports:
- "8088:8080"
environment:
APPLICATION__HOMEASSISTANT__URL: http://172.16.2.2:8123
APPLICATION__HOMEASSISTANT__TOKEN: ***
APPLICATION__SPOOLMAN__URL: http://172.16.2.1:7912
APPLICATION__HOMEASSISTANT__AMSENTITIES__0: sensor.a1_ams_slot_1
APPLICATION__HOMEASSISTANT__AMSENTITIES__1: sensor.a1_ams_slot_2
APPLICATION__HOMEASSISTANT__AMSENTITIES__2: sensor.a1_ams_slot_3
APPLICATION__HOMEASSISTANT__AMSENTITIES__3: sensor.a1_ams_slot_4
APPLICATION__HOMEASSISTANT__AMSEXTERNALSPOOL: sensor.a1_externalspool
restart: unless-stopped
@marcokreeft87
I managed to run it via portatainer, however on the web interface I only get external spool
I use X1C with AMS,
shall I define separate entries for APPLICATION__HOMEASSISTANT__AMSENTITIES__0
1
2
3
to point to each tray or one that points to
sensor.x1c…tray_
I simply used this:
docker run -d -p 8088:8080
-e APPLICATION__HOMEASSISTANT__URL=http://homeassistant.local
-e APPLICATION__HOMEASSISTANT__TOKEN=your-token
-e APPLICATION__SPOOLMAN__URL=http://spoolman.local
–name spoolman-updater marcokreeft/spoolman-updater
how to set vars?
I managed to set vars… but… as @tashev I have only external spool and I cannot select any spool
docker:~/spoolman-updater# docker container logs spoolman-updater
info: Microsoft.Hosting.Lifetime[14]
Now listening on: http://[::]:8080
info: Microsoft.Hosting.Lifetime[0]
Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
Hosting environment: Production
info: Microsoft.Hosting.Lifetime[0]
Content root path: /app
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNCR7QKJ9TUG", Request id "0HNCR7QKJ9TUG:00000001": An unhandled exception was thrown by the application.
System.InvalidOperationException: Spool with ID 0 not found.
at Gateways.SpoolSpoolmanEndpoint.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Endpoints/Spool.cs:line 91
at Gateways.SpoolmanClient.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Client.cs:line 19
at Domain.UpdateTrayUseCase.ExecuteAsync(UpdateTrayInput input) in /src/Domain/UseCases/Spool/Tray/UseCase.cs:line 18
at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
at Application.Controllers.SpoolsController.UpdateTray(UpdateTrayInput input) in /src/Application/Controllers/Spools.cs:line 16
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNCR7QKJ9TUG", Request id "0HNCR7QKJ9TUG:00000002": An unhandled exception was thrown by the application.
System.InvalidOperationException: Spool with ID 0 not found.
at Gateways.SpoolSpoolmanEndpoint.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Endpoints/Spool.cs:line 91
at Gateways.SpoolmanClient.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Client.cs:line 19
at Domain.UpdateTrayUseCase.ExecuteAsync(UpdateTrayInput input) in /src/Domain/UseCases/Spool/Tray/UseCase.cs:line 18
at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
at Application.Controllers.SpoolsController.UpdateTray(UpdateTrayInput input) in /src/Application/Controllers/Spools.cs:line 16
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNCR7QKJ9TUG", Request id "0HNCR7QKJ9TUG:00000003": An unhandled exception was thrown by the application.
System.InvalidOperationException: Spool with ID 0 not found.
at Gateways.SpoolSpoolmanEndpoint.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Endpoints/Spool.cs:line 91
at Gateways.SpoolmanClient.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Client.cs:line 19
at Domain.UpdateTrayUseCase.ExecuteAsync(UpdateTrayInput input) in /src/Domain/UseCases/Spool/Tray/UseCase.cs:line 18
at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
at Application.Controllers.SpoolsController.UpdateTray(UpdateTrayInput input) in /src/Application/Controllers/Spools.cs:line 16
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNCR7QKJ9TUG", Request id "0HNCR7QKJ9TUG:00000004": An unhandled exception was thrown by the application.
System.InvalidOperationException: Spool with ID 0 not found.
at Gateways.SpoolSpoolmanEndpoint.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Endpoints/Spool.cs:line 91
at Gateways.SpoolmanClient.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Client.cs:line 19
at Domain.UpdateTrayUseCase.ExecuteAsync(UpdateTrayInput input) in /src/Domain/UseCases/Spool/Tray/UseCase.cs:line 18
at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
at Application.Controllers.SpoolsController.UpdateTray(UpdateTrayInput input) in /src/Application/Controllers/Spools.cs:line 16
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNCR7QKJ9TUI", Request id "0HNCR7QKJ9TUI:00000001": An unhandled exception was thrown by the application.
System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at System.Net.Http.Json.HttpClientJsonExtensions.<FromJsonAsyncCore>g__Core|12_0[TValue,TJsonOptions](HttpClient client, Task`1 responseTask, Boolean usingResponseHeadersRead, CancellationTokenSource linkedCTS, Func`4 deserializeMethod, TJsonOptions jsonOptions, CancellationToken cancellationToken)
at Gateways.HomeAssistantClient.GetTrayInfoAsync(String entity) in /src/Gateways/HomeAssistant/Client.cs:line 48
at Gateways.HomeAssistantClient.GetExternalSpoolAsync() in /src/Gateways/HomeAssistant/Client.cs:line 44
at Domain.GetAllAMSUseCase.ExecuteAsync(GetAllAMSInput input) in /src/Domain/UseCases/Tray/GetAll/UseCase.cs:line 11
at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
at Application.Controllers.TraysController.Get(GetAllAMSInput input) in /src/Application/Controllers/Trays.cs:line 12
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNCR7QKJ9TUJ", Request id "0HNCR7QKJ9TUJ:00000001": An unhandled exception was thrown by the application.
System.InvalidOperationException: Spool with ID 0 not found.
at Gateways.SpoolSpoolmanEndpoint.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Endpoints/Spool.cs:line 91
at Gateways.SpoolmanClient.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Client.cs:line 19
at Domain.UpdateTrayUseCase.ExecuteAsync(UpdateTrayInput input) in /src/Domain/UseCases/Spool/Tray/UseCase.cs:line 18
at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
at Application.Controllers.SpoolsController.UpdateTray(UpdateTrayInput input) in /src/Application/Controllers/Spools.cs:line 16
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNCR7QKJ9TUJ", Request id "0HNCR7QKJ9TUJ:00000004": An unhandled exception was thrown by the application.
System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at System.Net.Http.Json.HttpClientJsonExtensions.<FromJsonAsyncCore>g__Core|12_0[TValue,TJsonOptions](HttpClient client, Task`1 responseTask, Boolean usingResponseHeadersRead, CancellationTokenSource linkedCTS, Func`4 deserializeMethod, TJsonOptions jsonOptions, CancellationToken cancellationToken)
at Gateways.HomeAssistantClient.GetTrayInfoAsync(String entity) in /src/Gateways/HomeAssistant/Client.cs:line 48
at Gateways.HomeAssistantClient.GetExternalSpoolAsync() in /src/Gateways/HomeAssistant/Client.cs:line 44
at Domain.GetAllAMSUseCase.ExecuteAsync(GetAllAMSInput input) in /src/Domain/UseCases/Tray/GetAll/UseCase.cs:line 11
at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
at Application.Controllers.TraysController.Get(GetAllAMSInput input) in /src/Application/Controllers/Trays.cs:line 12
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HNCR7QKJ9TUK", Request id "0HNCR7QKJ9TUK:00000002": An unhandled exception was thrown by the application.
System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (Not Found).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at System.Net.Http.Json.HttpClientJsonExtensions.<FromJsonAsyncCore>g__Core|12_0[TValue,TJsonOptions](HttpClient client, Task`1 responseTask, Boolean usingResponseHeadersRead, CancellationTokenSource linkedCTS, Func`4 deserializeMethod, TJsonOptions jsonOptions, CancellationToken cancellationToken)
at Gateways.HomeAssistantClient.GetTrayInfoAsync(String entity) in /src/Gateways/HomeAssistant/Client.cs:line 48
at Gateways.HomeAssistantClient.GetExternalSpoolAsync() in /src/Gateways/HomeAssistant/Client.cs:line 44
at Domain.GetAllAMSUseCase.ExecuteAsync(GetAllAMSInput input) in /src/Domain/UseCases/Tray/GetAll/UseCase.cs:line 11
at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
at Application.Controllers.TraysController.Get(GetAllAMSInput input) in /src/Application/Controllers/Trays.cs:line 12
at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)```
I had them in the same Docker-Compose. So it tried to connect before Spoolman was ready.
I changed that and confirmed it could pull the data from spoolman by going to ip:8088/spools
Now i get the error: “Spool with ID 0 not found”
spoolman-update-1 | fail: Microsoft.AspNetCore.Server.Kestrel[13]
spoolman-update-1 | Connection id "0HNCRDN8I7D03", Request id "0HNCRDN8I7D03:00000002": An unhandled exception was thrown by the application.
spoolman-update-1 | System.InvalidOperationException: Spool with ID 0 not found.
spoolman-update-1 | at Gateways.SpoolSpoolmanEndpoint.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Endpoints/Spool.cs:line 91
spoolman-update-1 | at Gateways.SpoolmanClient.SetActiveTray(Int32 spoolId, String activeTrayId) in /src/Gateways/Spoolman/Client.cs:line 19
spoolman-update-1 | at Domain.UpdateTrayUseCase.ExecuteAsync(UpdateTrayInput input) in /src/Domain/UseCases/Spool/Tray/UseCase.cs:line 18
spoolman-update-1 | at Domain.InputHandler.HandleAsync[TInput](TInput input) in /src/Domain/UseCases/InputHandler.cs:line 13
spoolman-update-1 | at Application.Controllers.SpoolsController.UpdateTray(UpdateTrayInput input) in /src/Application/Controllers/Spools.cs:line 16
spoolman-update-1 | at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(ActionContext actionContext, IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
spoolman-update-1 | at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
spoolman-update-1 | at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
spoolman-update-1 | at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
spoolman-update-1 | at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
spoolman-update-1 | at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
spoolman-update-1 | at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
spoolman-update-1 | at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
spoolman-update-1 | at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
spoolman-update-1 | at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
spoolman-update-1 | at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
spoolman-update-1 | at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
spoolman-update-1 | at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
spoolman-update-1 | at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)
Which makes since my /spools shows the first one to have the ID 2
{"spools":[{"id":2,"registered":"2025-05-24T10:17:54Z","first_used":"2025-05-22T15:00:00Z","last_used":null,"filament_id":0,"filament":{"id":1,"registered":"2025-05-24T10:16:37Z","name":"rPLA Zarter Pfirsich","vendor_id":0,"vendor":{"id":1,"registered":"2025-05-24T10:15:01Z","name":"Recycling Fabrik","comment":null,"empty_spool_weight":142,"external_id":null,"extra":{}},"material":"PLA","price":19.0,"density":1,"diameter":1.75,"weight":1000,"spool_weight":139,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"de701b","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":1000,"initial_weight":1000,"spool_weight":143,"used_weight":0,"remaining_length":415751.68807678786,"used_length":0,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}},{"id":3,"registered":"2025-05-24T11:22:56Z","first_used":"2025-05-21T22:00:00Z","last_used":null,"filament_id":0,"filament":{"id":2,"registered":"2025-05-24T11:22:35Z","name":"rPLA Frische Brise","vendor_id":0,"vendor":{"id":1,"registered":"2025-05-24T10:15:01Z","name":"Recycling Fabrik","comment":null,"empty_spool_weight":142,"external_id":null,"extra":{}},"material":"PLA","price":19.0,"density":1.24,"diameter":1.75,"weight":1000,"spool_weight":142,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"5defea","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":1000,"initial_weight":1000,"spool_weight":142,"used_weight":0,"remaining_length":335283.6194167644,"used_length":0,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}},{"id":4,"registered":"2025-05-24T11:24:31Z","first_used":null,"last_used":null,"filament_id":0,"filament":{"id":3,"registered":"2025-05-24T11:23:56Z","name":"rPLA Flottes Veilchen","vendor_id":0,"vendor":{"id":1,"registered":"2025-05-24T10:15:01Z","name":"Recycling Fabrik","comment":null,"empty_spool_weight":142,"external_id":null,"extra":{}},"material":"PLA","price":19.0,"density":1.24,"diameter":1.75,"weight":1000,"spool_weight":142,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"de94f2","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":1000,"initial_weight":1000,"spool_weight":142,"used_weight":0,"remaining_length":335283.6194167644,"used_length":0,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}},{"id":5,"registered":"2025-05-24T11:39:45Z","first_used":null,"last_used":null,"filament_id":0,"filament":{"id":4,"registered":"2025-05-24T11:38:58Z","name":"rPLA Nasser Elefant","vendor_id":0,"vendor":{"id":1,"registered":"2025-05-24T10:15:01Z","name":"Recycling Fabrik","comment":null,"empty_spool_weight":142,"external_id":null,"extra":{}},"material":"PLA","price":24.0,"density":1.24,"diameter":1.75,"weight":1000,"spool_weight":142,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"9b9191","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":1000,"initial_weight":1000,"spool_weight":139,"used_weight":0,"remaining_length":335283.6194167644,"used_length":0,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}},{"id":6,"registered":"2025-05-24T11:42:00Z","first_used":null,"last_used":null,"filament_id":0,"filament":{"id":5,"registered":"2025-05-24T11:40:42Z","name":"Grau","vendor_id":0,"vendor":{"id":2,"registered":"2025-05-24T11:38:16Z","name":"Generic","comment":"Schwarze Plastic Spule","empty_spool_weight":139,"external_id":null,"extra":{}},"material":"PLA","price":17.0,"density":1.24,"diameter":1.75,"weight":1000,"spool_weight":139,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"877b7b","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":103,"initial_weight":1000,"spool_weight":139,"used_weight":897,"remaining_length":34534.21279992673,"used_length":300749.40661683766,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}},{"id":7,"registered":"2025-05-24T11:44:32Z","first_used":null,"last_used":null,"filament_id":0,"filament":{"id":6,"registered":"2025-05-24T11:44:08Z","name":"Blau Transparent","vendor_id":0,"vendor":{"id":2,"registered":"2025-05-24T11:38:16Z","name":"Generic","comment":"Schwarze Plastic Spule","empty_spool_weight":139,"external_id":null,"extra":{}},"material":"Transparent PLA","price":18.0,"density":1.24,"diameter":1.75,"weight":1000,"spool_weight":139,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"3457f4","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":283,"initial_weight":1000,"spool_weight":139,"used_weight":717,"remaining_length":94885.26429494433,"used_length":240398.35512182012,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}},{"id":8,"registered":"2025-05-24T11:45:33Z","first_used":null,"last_used":null,"filament_id":0,"filament":{"id":7,"registered":"2025-05-24T11:45:15Z","name":"Blau ","vendor_id":0,"vendor":{"id":2,"registered":"2025-05-24T11:38:16Z","name":"Generic","comment":"Schwarze Plastic Spule","empty_spool_weight":139,"external_id":null,"extra":{}},"material":"PLA","price":17.0,"density":1.24,"diameter":1.75,"weight":1000,"spool_weight":139,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"0832ec","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":638,"initial_weight":1000,"spool_weight":139,"used_weight":362,"remaining_length":213910.9491878957,"used_length":121372.67022886872,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}},{"id":9,"registered":"2025-05-24T11:47:43Z","first_used":null,"last_used":null,"filament_id":0,"filament":{"id":8,"registered":"2025-05-24T11:47:23Z","name":"rPETG Gute Nacht","vendor_id":0,"vendor":{"id":1,"registered":"2025-05-24T10:15:01Z","name":"Recycling Fabrik","comment":null,"empty_spool_weight":142,"external_id":null,"extra":{}},"material":"PETG","price":23.0,"density":1,"diameter":1.27,"weight":1000,"spool_weight":165,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"000000","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":1000,"initial_weight":1000,"spool_weight":165,"used_weight":0,"remaining_length":789410.0965559941,"used_length":0,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}},{"id":10,"registered":"2025-05-24T11:48:52Z","first_used":null,"last_used":null,"filament_id":0,"filament":{"id":10,"registered":"2025-05-24T11:48:44Z","name":"Schwarz","vendor_id":0,"vendor":{"id":2,"registered":"2025-05-24T11:38:16Z","name":"Generic","comment":"Schwarze Plastic Spule","empty_spool_weight":139,"external_id":null,"extra":{}},"material":"PLA","price":17.0,"density":1.24,"diameter":1.75,"weight":1000,"spool_weight":139,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"000000","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":1000,"initial_weight":1000,"spool_weight":139,"used_weight":0,"remaining_length":335283.6194167644,"used_length":0,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}},{"id":11,"registered":"2025-05-24T11:49:02Z","first_used":null,"last_used":null,"filament_id":0,"filament":{"id":9,"registered":"2025-05-24T11:48:22Z","name":"Weiß","vendor_id":0,"vendor":{"id":2,"registered":"2025-05-24T11:38:16Z","name":"Generic","comment":"Schwarze Plastic Spule","empty_spool_weight":139,"external_id":null,"extra":{}},"material":"PLA","price":17.0,"density":1.24,"diameter":1.75,"weight":1000,"spool_weight":139,"article_number":null,"comment":null,"extruder_temp":0,"bed_temp":0,"color_hex":"ffffff","multi_color_hexes":null,"multi_color_direction":null,"external_id":null,"extra":{}},"price":null,"remaining_weight":1000,"initial_weight":1000,"spool_weight":139,"used_weight":0,"remaining_length":335283.6194167644,"used_length":0,"location":"Büro","lot_number":null,"comment":null,"archived":false,"extra":{}}]}
But even then i can only see the External Spool and cant select anything for it just like the others.
@ everyone here. The AMSEntities var needs to be the AMS entity so for me its
X1C_00M09Cxxxxxxxxx_AMS_1.
So dont put every tray of slot entity in it, just the ams entity in Application__HomeAssistant__AMSEntities__0
I have:
APPLICATION__HOMEASSISTANT__AMSENTITIES__0=sensor.bambu_h2d_ams_1_slot_1
APPLICATION__HOMEASSISTANT__AMSENTITIES__1=sensor.bambu_h2d_ams_1_slot_2
APPLICATION__HOMEASSISTANT__AMSENTITIES__2=sensor.bambu_h2d_ams_1_slot_3
APPLICATION__HOMEASSISTANT__AMSENTITIES__3=sensor.bambu_h2d_ams_1_slot_4
APPLICATION__HOMEASSISTANT__AMSEXTERNALSPOOL=sensor.h2d_externalspool_bobina_esterna
For the AMS Lite, there are no separate entities for the AMS itself, only for each individual slot.
No read what i am saying plz
Oh really? So if you go to the bambulab integration you dont see 3 devices?
For me it displays 3 devices
- my x1c
- ams1
- external spool
yes, i have 3 devices:
but the entitiie for the AMS doens´t exist:
sensor.A1_0***********6_AMS_1
only the 4 trays & humidity:
Some basic questions, since the forum and GitHub unfortunately differ a bit here.
For the REST command, should the URL be:
url: "http://<your-server>:8088/Spools/spool" or
url: "http://<your-server>:8088/Spools"?
Also the REST Command is different:
Is the REST command and the automation strictly required for this function?
My Logs:
I’ve already added the printer via cloud and LAN using ha-bambulab, but that didn’t make any difference either.
sorry but your project is great, but there is lack of instructions, many of us are not programmers, and I can’t follow the instructions that are also different from here and github, please write then better… ![]()
Yes, there are differences, but he’s trying to help you, and you’re not doing what he’s telling you to do. ![]()






