konqi / roborock-bridge

Bridge between a local mqtt broker and your roborock vaccuum through the vendor apis
MIT License
7 stars 2 forks source link

Error at application start #106

Open DeepflashX opened 6 days ago

DeepflashX commented 6 days ago

Hello,

I am trying to run the application with Java 21 at Windows 10 and get an error after launching. Do you have an idea, what is going wrong?

PS C:\Users\rogue\Downloads\roborock> java -jar .\roborock-bridge-0.0.8-SNAPSHOT.jar 20:12:14.827 [main] ERROR org.springframework.boot.SpringApplication -- Application run failed org.yaml.snakeyaml.parser.ParserException: while parsing a block mapping in 'reader', line 8, column 3: url: tcp://192.168.178.61:1883 ... ^ expected , but found '' in 'reader', line 10, column 4: username: loxberry ^

    at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:654)
    at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:161)
konqi commented 2 days ago

Looks like there is a formatting issue in your configuration file

DeepflashX commented 1 day ago

yes u are right, there were too spaces too much at the beginning of two lines. Fixed the yaml in a yaml checker and now I have a different error: java -jar .\roborock-bridge-0.0.8-SNAPSHOT.jar 2024-12-02T20:39:49.905+01:00 INFO 8492 --- [ main] d.k.r.RoborockBridgeApplicationKt : Starting RoborockBridgeApplicationKt v0.0.8-SNAPSHOT using Java 21.0.1 with PID 8492 (C:\Users\rogue\Downloads\roborock\roborock-bridge-0.0.8-SNAPSHOT.jar started by rogue in C:\Users\rogue\Downloads\roborock) 2024-12-02T20:39:49.921+01:00 INFO 8492 --- [ main] d.k.r.RoborockBridgeApplicationKt : The following 1 profile is active: "bridge" 2024-12-02T20:39:50.935+01:00 INFO 8492 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2024-12-02T20:39:50.998+01:00 INFO 8492 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 62 ms. Found 5 JPA repository interfaces. 2024-12-02T20:39:51.570+01:00 INFO 8492 --- [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] 2024-12-02T20:39:51.627+01:00 INFO 8492 --- [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.5.2.Final 2024-12-02T20:39:51.674+01:00 INFO 8492 --- [ main] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled 2024-12-02T20:39:52.033+01:00 INFO 8492 --- [ main] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer 2024-12-02T20:39:52.071+01:00 INFO 8492 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2024-12-02T20:39:52.221+01:00 INFO 8492 --- [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection conn0: url=jdbc:h2:mem:h2 user=SA 2024-12-02T20:39:52.221+01:00 INFO 8492 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2024-12-02T20:39:53.072+01:00 INFO 8492 --- [ main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) 2024-12-02T20:39:53.133+01:00 INFO 8492 --- [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default' 2024-12-02T20:39:53.919+01:00 INFO 8492 --- [ main] o.s.d.j.r.query.QueryEnhancerFactory : Hibernate is in classpath; If applicable, HQL parser will be used. 2024-12-02T20:39:54.710+01:00 INFO 8492 --- [ main] d.k.r.remote.RoborockCredentials : clientId not configured. Using auto-generated clientId LFvZeAacVyU6Aepa7PRvNQ==. 2024-12-02T20:39:55.244+01:00 INFO 8492 --- [ main] d.k.r.RoborockBridgeApplicationKt : Started RoborockBridgeApplicationKt in 5.788 seconds (process running for 6.269) 2024-12-02T20:39:55.719+01:00 ERROR 8492 --- [ main] o.s.boot.SpringApplication : Application run failed

org.springframework.security.core.userdetails.UsernameNotFoundException: Unknown user at de.konqi.roborockbridge.remote.rest.LoginApi.login(LoginApi.kt:55) ~[!/:0.0.8-SNAPSHOT] at de.konqi.roborockbridge.BridgeService.init(BridgeService.kt:58) ~[!/:0.0.8-SNAPSHOT] at de.konqi.roborockbridge.BridgeService.worker(BridgeService.kt:118) ~[!/:0.0.8-SNAPSHOT] at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[na:na] at org.springframework.context.event.ApplicationListenerMethodAdapter.doInvoke(ApplicationListenerMethodAdapter.java:365) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.context.event.ApplicationListenerMethodAdapter.processEvent(ApplicationListenerMethodAdapter.java:237) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.context.event.ApplicationListenerMethodAdapter.onApplicationEvent(ApplicationListenerMethodAdapter.java:168) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:185) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:178) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:156) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:452) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:385) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.boot.context.event.EventPublishingRunListener.ready(EventPublishingRunListener.java:109) ~[spring-boot-3.3.2.jar!/:3.3.2] at org.springframework.boot.SpringApplicationRunListeners.lambda$ready$6(SpringApplicationRunListeners.java:80) ~[spring-boot-3.3.2.jar!/:3.3.2] at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[na:na] at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) ~[spring-boot-3.3.2.jar!/:3.3.2] at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:112) ~[spring-boot-3.3.2.jar!/:3.3.2] at org.springframework.boot.SpringApplicationRunListeners.ready(SpringApplicationRunListeners.java:80) ~[spring-boot-3.3.2.jar!/:3.3.2] at org.springframework.boot.SpringApplication.run(SpringApplication.java:349) ~[spring-boot-3.3.2.jar!/:3.3.2] at de.konqi.roborockbridge.RoborockBridgeApplicationKt.main(RoborockBridgeApplication.kt:38) ~[!/:0.0.8-SNAPSHOT] at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[na:na] at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:91) ~[roborock-bridge-0.0.8-SNAPSHOT.jar:0.0.8-SNAPSHOT] at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:53) ~[roborock-bridge-0.0.8-SNAPSHOT.jar:0.0.8-SNAPSHOT] at org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:58) ~[roborock-bridge-0.0.8-SNAPSHOT.jar:0.0.8-SNAPSHOT]

2024-12-02T20:39:55.735+01:00 INFO 8492 --- [ main] de.konqi.roborockbridge.BridgeService : Shutting down bridge service 2024-12-02T20:39:55.735+01:00 WARN 8492 --- [ main] .s.c.a.CommonAnnotationBeanPostProcessor : Destroy method on bean with name 'roborockMqtt' threw an exception: kotlin.UninitializedPropertyAccessException: lateinit property mqttClient has not been initialized 2024-12-02T20:39:55.751+01:00 INFO 8492 --- [ main] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default' 2024-12-02T20:39:55.751+01:00 INFO 8492 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated... 2024-12-02T20:39:55.767+01:00 INFO 8492 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.

konqi commented 1 day ago

I was told recently that this can happen on Windows. Apparently it uses the windows user name instead. You can try to unset the username environment variable in the shell that you use to start the jar for now.

DeepflashX commented 1 day ago

ok I now ran it on my raspberry Pi5 and get another error:

openjdk version "17.0.13" 2024-10-15
OpenJDK Runtime Environment (build 17.0.13+11-Debian-2deb12u1)
OpenJDK 64-Bit Server VM (build 17.0.13+11-Debian-2deb12u1, mixed mode, sharing)
root@loxberry:~# sudo mkdir /etc/roborock
root@loxberry:~# mv roborock-bridge-0.0.8-SNAPSHOT.jar /etc/roborock/
root@loxberry:~# mv /opt/loxberry/application.yaml /etc/roborock/
root@loxberry:~# cd /etc/roborock/
root@loxberry:/etc/roborock# chmod +777 roborock-bridge-0.0.8-SNAPSHOT.jar
root@loxberry:/etc/roborock# java -jar roborock-bridge-0.0.8-SNAPSHOT.jar
2024-12-02T21:57:43.319Z INFO 2812352 --- [ main] d.k.r.RoborockBridgeApplicationKt : Starting RoborockBridgeApplicationKt v0.0.8-SNAPSHOT using Java 17.0.13 with PID 2812352 (/etc/roborock/roborock-bridge-0.0.8-SNAPSHOT.jar started by root in /etc/roborock)
2024-12-02T21:57:43.354Z INFO 2812352 --- [ main] d.k.r.RoborockBridgeApplicationKt : The following 1 profile is active: "bridge" 2024-12-02T21:57:46.680Z INFO 2812352 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2024-12-02T21:57:46.855Z INFO 2812352 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 159 ms. Found 5 JPA repository interfaces.
2024-12-02T21:57:48.464Z INFO 2812352 --- [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] 2024-12-02T21:57:48.616Z INFO 2812352 --- [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.5.2.Final 2024-12-02T21:57:48.706Z INFO 2812352 --- [ main] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled 2024-12-02T21:57:49.757Z INFO 2812352 --- [ main] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer 2024-12-02T21:57:49.834Z INFO 2812352 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2024-12-02T21:57:50.235Z INFO 2812352 --- [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection conn0: url=jdbc:h2:mem:h2 user= SA
2024-12-02T21:57:50.240Z INFO 2812352 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2024-12-02T21:57:52.083Z INFO 2812352 --- [ main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transactio n.jta.platform' to enable JTA platform integration)
2024-12-02T21:57:52.197Z INFO 2812352 --- [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'defa ult'
2024-12-02T21:57:54.626Z INFO 2812352 --- [ main] o.s.d.j.r.query.QueryEnhancerFactory : Hibernate is in classpath; If applicable, HQL parser will be us ed.
2024-12-02T21:57:55.959Z INFO 2812352 --- [ main] d.k.r.remote.RoborockCredentials : clientId not configured. Using auto-generated clientId fcK5F9Yi gn/H2dTamECdSg==.
2024-12-02T21:57:55.961Z INFO 2812352 --- [ main] d.k.r.remote.RoborockCredentials : Could not load credentials. No file 'auth.json' found. 2024-12-02T21:57:57.880Z INFO 2812352 --- [ main] d.k.r.RoborockBridgeApplicationKt : Started RoborockBridgeApplicationKt in 15.834 seconds (process running for 17.18)
2024-12-02T21:57:59.749Z INFO 2812352 --- [ main] d.k.roborockbridge.remote.rest.UserApi : ok true 2024-12-02T21:57:59.935Z INFO 2812352 --- [ main] d.k.roborockbridge.bridge.BridgeMqtt : Announcing new home with id '4998948' 2024-12-02T21:57:59.983Z INFO 2812352 --- [ main] d.k.roborockbridge.bridge.BridgeMqtt : Announcing new robot with id '3yNoBI8P2yqXhuMQ0x2MJU' 2024-12-02T21:58:00.341Z INFO 2812352 --- [ main] d.k.roborockbridge.bridge.BridgeMqtt : Announcing 0 rooms. 2024-12-02T21:58:00.467Z ERROR 2812352 --- [ main] o.s.boot.SpringApplication : Application run failed

java.util.NoSuchElementException: List is empty.
at kotlin.collections.CollectionsKt___CollectionsKt.first(_Collections.kt:221) ~[kotlin-stdlib-2.0.10.jar!/:2.0.10-release-540]
at de.konqi.roborockbridge.bridge.BridgeMqtt.announceRooms(BridgeMqtt.kt:132) ~[!/:0.0.8-SNAPSHOT]
at de.konqi.roborockbridge.BridgeService.init(BridgeService.kt:79) ~[!/:0.0.8-SNAPSHOT]
at de.konqi.roborockbridge.BridgeService.worker(BridgeService.kt:118) ~[!/:0.0.8-SNAPSHOT]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:569) ~[na:na]
at org.springframework.context.event.ApplicationListenerMethodAdapter.doInvoke(ApplicationListenerMethodAdapter.java:365) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.context.event.ApplicationListenerMethodAdapter.processEvent(ApplicationListenerMethodAdapter.java:237) ~[spring-context-6.1.11.jar!/:6.1 .11]
at org.springframework.context.event.ApplicationListenerMethodAdapter.onApplicationEvent(ApplicationListenerMethodAdapter.java:168) ~[spring-context-6.1.11.jar !/:6.1.11]
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:185) ~[spring-context-6.1.11.jar !/:6.1.11]
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:178) ~[spring-context-6.1.11.jar!/ :6.1.11]
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:156) ~[spring-context-6.1.11.jar!/ :6.1.11]
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:452) ~[spring-context-6.1.11.jar!/:6.1.11]
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:385) ~[spring-context-6.1.11.jar!/:6.1.11]
at org.springframework.boot.context.event.EventPublishingRunListener.ready(EventPublishingRunListener.java:109) ~[spring-boot-3.3.2.jar!/:3.3.2]
at org.springframework.boot.SpringApplicationRunListeners.lambda$ready$6(SpringApplicationRunListeners.java:80) ~[spring-boot-3.3.2.jar!/:3.3.2]
at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[na:na]
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) ~[spring-boot-3.3.2.jar!/:3.3.2]
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:112) ~[spring-boot-3.3.2.jar!/:3.3.2]
at org.springframework.boot.SpringApplicationRunListeners.ready(SpringApplicationRunListeners.java:80) ~[spring-boot-3.3.2.jar!/:3.3.2]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:349) ~[spring-boot-3.3.2.jar!/:3.3.2]
at de.konqi.roborockbridge.RoborockBridgeApplicationKt.main(RoborockBridgeApplication.kt:38) ~[!/:0.0.8-SNAPSHOT]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:569) ~[na:na]
at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:91) ~[roborock-bridge-0.0.8-SNAPSHOT.jar:0.0.8-SNAPSHOT]
at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:53) ~[roborock-bridge-0.0.8-SNAPSHOT.jar:0.0.8-SNAPSHOT]
at org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:58) ~[roborock-bridge-0.0.8-SNAPSHOT.jar:0.0.8-SNAPSHOT]

2024-12-02T21:58:00.518Z INFO 2812352 --- [ main] de.konqi.roborockbridge.BridgeService : Shutting down bridge service 2024-12-02T21:58:00.524Z WARN 2812352 --- [ main] .s.c.a.CommonAnnotationBeanPostProcessor : Destroy method on bean with name 'roborockMqtt' threw an except ion: kotlin.UninitializedPropertyAccessException: lateinit property mqttClient has not been initialized
2024-12-02T21:58:00.571Z INFO 2812352 --- [ main] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default' 2024-12-02T21:58:00.575Z INFO 2812352 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated... 2024-12-02T21:58:00.583Z INFO 2812352 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed. root@loxberry:/etc/roborock# ls
application.yaml auth.json roborock-bridge-0.0.8-SNAPSHOT.jar root@loxberry:/etc/roborock# java -jar roborock-bridge-0.0.8-SNAPSHOT.jar
2024-12-02T21:58:51.959Z INFO 2848680 --- [ main] d.k.r.RoborockBridgeApplicationKt : Starting RoborockBridgeApplicationKt v0.0.8-SNAPSHOT using Java 17.0.13 with PID 2848680 (/etc/roborock/roborock-bridge-0.0.8-SNAPSHOT.jar started by root in /etc/roborock)
2024-12-02T21:58:51.976Z INFO 2848680 --- [ main] d.k.r.RoborockBridgeApplicationKt : The following 1 profile is active: "bridge" 2024-12-02T21:58:55.521Z INFO 2848680 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. 2024-12-02T21:58:55.679Z INFO 2848680 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 144 ms. Found 5 JPA repository interfaces.
2024-12-02T21:58:57.210Z INFO 2848680 --- [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] 2024-12-02T21:58:57.335Z INFO 2848680 --- [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.5.2.Final 2024-12-02T21:58:57.392Z INFO 2848680 --- [ main] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled 2024-12-02T21:58:58.331Z INFO 2848680 --- [ main] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer 2024-12-02T21:58:58.403Z INFO 2848680 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2024-12-02T21:58:58.696Z INFO 2848680 --- [ main] com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Added connection conn0: url=jdbc:h2:mem:h2 user= SA
2024-12-02T21:58:58.700Z INFO 2848680 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2024-12-02T21:59:00.930Z INFO 2848680 --- [ main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transactio n.jta.platform' to enable JTA platform integration)
2024-12-02T21:59:01.077Z INFO 2848680 --- [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'defa ult'
2024-12-02T21:59:03.945Z INFO 2848680 --- [ main] o.s.d.j.r.query.QueryEnhancerFactory : Hibernate is in classpath; If applicable, HQL parser will be us ed.
2024-12-02T21:59:05.283Z INFO 2848680 --- [ main] d.k.r.remote.RoborockCredentials : clientId not configured. Using auto-generated clientId fcK5F9Yi gn/H2dTamECdSg==.
2024-12-02T21:59:07.155Z INFO 2848680 --- [ main] d.k.r.RoborockBridgeApplicationKt : Started RoborockBridgeApplicationKt in 16.639 seconds (process running for 18.039)
2024-12-02T21:59:08.611Z INFO 2848680 --- [ main] d.k.roborockbridge.remote.rest.UserApi : ok true 2024-12-02T21:59:08.790Z INFO 2848680 --- [ main] d.k.roborockbridge.bridge.BridgeMqtt : Announcing new home with id '4998948' 2024-12-02T21:59:08.867Z INFO 2848680 --- [ main] d.k.roborockbridge.bridge.BridgeMqtt : Announcing new robot with id '3yNoBI8P2yqXhuMQ0x2MJU' 2024-12-02T21:59:09.105Z INFO 2848680 --- [ main] d.k.roborockbridge.bridge.BridgeMqtt : Announcing 0 rooms. 2024-12-02T21:59:09.222Z ERROR 2848680 --- [ main] o.s.boot.SpringApplication : Application run failed

java.util.NoSuchElementException: List is empty.
at kotlin.collections.CollectionsKt___CollectionsKt.first(_Collections.kt:221) ~[kotlin-stdlib-2.0.10.jar!/:2.0.10-release-540]
at de.konqi.roborockbridge.bridge.BridgeMqtt.announceRooms(BridgeMqtt.kt:132) ~[!/:0.0.8-SNAPSHOT]
at de.konqi.roborockbridge.BridgeService.init(BridgeService.kt:79) ~[!/:0.0.8-SNAPSHOT]
at de.konqi.roborockbridge.BridgeService.worker(BridgeService.kt:118) ~[!/:0.0.8-SNAPSHOT]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:569) ~[na:na]
at org.springframework.context.event.ApplicationListenerMethodAdapter.doInvoke(ApplicationListenerMethodAdapter.java:365) ~[spring-context-6.1.11.jar!/:6.1.11] at org.springframework.context.event.ApplicationListenerMethodAdapter.processEvent(ApplicationListenerMethodAdapter.java:237) ~[spring-context-6.1.11.jar!/:6.1 .11]
at org.springframework.context.event.ApplicationListenerMethodAdapter.onApplicationEvent(ApplicationListenerMethodAdapter.java:168) ~[spring-context-6.1.11.jar !/:6.1.11]
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:185) ~[spring-context-6.1.11.jar !/:6.1.11]
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:178) ~[spring-context-6.1.11.jar!/ :6.1.11]
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:156) ~[spring-context-6.1.11.jar!/ :6.1.11]
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:452) ~[spring-context-6.1.11.jar!/:6.1.11]
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:385) ~[spring-context-6.1.11.jar!/:6.1.11]
at org.springframework.boot.context.event.EventPublishingRunListener.ready(EventPublishingRunListener.java:109) ~[spring-boot-3.3.2.jar!/:3.3.2]
at org.springframework.boot.SpringApplicationRunListeners.lambda$ready$6(SpringApplicationRunListeners.java:80) ~[spring-boot-3.3.2.jar!/:3.3.2]
at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[na:na]
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:118) ~[spring-boot-3.3.2.jar!/:3.3.2]
at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:112) ~[spring-boot-3.3.2.jar!/:3.3.2]
at org.springframework.boot.SpringApplicationRunListeners.ready(SpringApplicationRunListeners.java:80) ~[spring-boot-3.3.2.jar!/:3.3.2]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:349) ~[spring-boot-3.3.2.jar!/:3.3.2]
at de.konqi.roborockbridge.RoborockBridgeApplicationKt.main(RoborockBridgeApplication.kt:38) ~[!/:0.0.8-SNAPSHOT]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:569) ~[na:na]
at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:91) ~[roborock-bridge-0.0.8-SNAPSHOT.jar:0.0.8-SNAPSHOT]
at org.springframework.boot.loader.launch.Launcher.launch(Launcher.java:53) ~[roborock-bridge-0.0.8-SNAPSHOT.jar:0.0.8-SNAPSHOT]
at org.springframework.boot.loader.launch.JarLauncher.main(JarLauncher.java:58) ~[roborock-bridge-0.0.8-SNAPSHOT.jar:0.0.8-SNAPSHOT]

2024-12-02T21:59:09.256Z INFO 2848680 --- [ main] de.konqi.roborockbridge.BridgeService : Shutting down bridge service 2024-12-02T21:59:09.261Z WARN 2848680 --- [ main] .s.c.a.CommonAnnotationBeanPostProcessor : Destroy method on bean with name 'roborockMqtt' threw an except ion: kotlin.UninitializedPropertyAccessException: lateinit property mqttClient has not been initialized
2024-12-02T21:59:09.315Z INFO 2848680 --- [ main] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default' 2024-12-02T21:59:09.320Z INFO 2848680 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown initiated... 2024-12-02T21:59:09.337Z INFO 2848680 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Shutdown completed.

konqi commented 1 day ago

The log says that there is no room configured. You can try to create one in the roborock app. If you already have rooms, roborock changed something in the APIs. Fixing the empty room collection should be simple, but let's make sure that it's the root cause.

DeepflashX commented 1 day ago

I have set up 3 floors with several rooms each. the home assistant integration seems to work. So I am not sure what to change.