black-sheep-dev / harbour-quartermaster Goto Github PK
View Code? Open in Web Editor NEWQuartermaster is a native Sailfish OS Home Assistant client
License: MIT License
Quartermaster is a native Sailfish OS Home Assistant client
License: MIT License
I'm having problem with the app of connecting to my HA instance after connection settings page.
List of useful info:
-Sailfish 4.5 and Home Assitant Core (pyvenv) 2023.1.3
-Latest version of Quatermaster
-App is always starting with welcome screen
-App's Reset button doesn't function
-Timeout of finding my HA server after connection settings, native sfos browser access works well.
Hi! Thanks for this initiative!
My config:
[API]
external_url=https://ha.rubdos.be/
hostname=ha.rubdos.be
internal_url=https://ha.rubdos.be/
port=443
ssl=true
[APP]
tracking_modes=2
update_modes=7
websocket_notify=true
[DEVELOPER_MODE]
api_logging=false
[DEVICE]
name=Xperia 10
[HOMEZONE]
networks\1\identifier=/net/connman/service/wifi_3878625de747_536561726368696e67_managed_psk
networks\1\name=Searching
networks\size=1
[SENSORS]
autoupdate=true
[WEBHOOK_API]
encryption=false
(gdb) bt
#0 0xf6829fd0 in syscall () from /lib/libc.so.6
#1 0xf6a44e96 in QBasicMutex::lockInternal() () from /usr/lib/libQt5Core.so.5
#2 0xf6df97a2 in ?? () from /usr/lib/libQt5Network.so.5
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb) info threads
Id Target Id Frame
* 1 LWP 22268 "harbour-quarter" 0xf6829fd0 in syscall () from /lib/libc.so.6
2 LWP 22308 "QQmlThread" 0xf6791da4 in ?? () from /lib/libc.so.6
3 LWP 22309 "gmain" 0xf6791da4 in ?? () from /lib/libc.so.6
4 LWP 22310 "dconf worker" 0xf6791da4 in ?? () from /lib/libc.so.6
5 LWP 22311 "gdbus" 0xf6791da4 in ?? () from /lib/libc.so.6
6 LWP 22312 "QDBusConnection" 0xf6791da4 in ?? () from /lib/libc.so.6
7 LWP 22319 "Qt bearer threa" 0xf6791da4 in ?? () from /lib/libc.so.6
8 LWP 22326 "Thread (pooled)" 0xf66df364 in ?? () from /lib/libpthread.so.0
9 LWP 22328 "Qt HTTP thread" 0xf66df364 in ?? () from /lib/libpthread.so.0
10 LWP 22329 "QSGRenderThread" 0xf66df364 in ?? () from /lib/libpthread.so.0
11 LWP 22337 "NemoThumbnailLo" 0xf66df364 in ?? () from /lib/libpthread.so.0
12 LWP 22338 "QSGRenderThread" 0xf66df364 in ?? () from /lib/libpthread.so.0
13 LWP 22339 "Qt HTTP thread" 0xf6829fd0 in syscall () from /lib/libc.so.6
Looks like thread 13 and 1 are locking on each other.
Probably some combination of options triggers this, but I figured I should report this as a bug. Let me know if you need a trace of one of these threads with symbols, or whether you need anything else.
This occurs right when starting the applications, I only see the Ambience background appearing and literally nothing else.
My home assistant is configured as follows:
homeassistant:
internal_url: "https://ha.rubdos.be/"
external_url: "https://ha.rubdos.be/"
which has worked correctly before I started using Quartermaster.
Many weird things happen now.
If I want to register my device with https://ha.rubdos.be/
, then QM appends :8123
, which creates the invalid url https://ha.rubdos.be/:8123
. It appears when you press next, see the "could not connect" text, and then go back: the field has changed.
If I manually append :443, I get to the next step. In the next step, the internal and external connections are preset to https://ha.rubdos.be:8123
. Again, I manually change this to read 443, because otherwise QM tries to alter the URL to be invalid.
I can then proceed to enter my long-lived access token, get all tests to pass, see it show :443 for both URLs
After that, I get into device registration, and get "Registration failed". Going back a bit and forward again to entering the LLAT, I get "Error connecting to Home Assistant API".
What's even more funky, is that I now added :443
in the home assistant config, but I get the exact same problem. It seems like HA correctly assumes that it can leave out the :443
port when sending the URL information, and then QM incorrectly assumes :8123
.
My suggestion would be to entirely stop trying to fix the URL in the application code, and instead have the default UI component show http://localhost:8123
as a reminder.
Climates/Thermostats shows wrong unit label for target temp when system is using US customary (Fahrenheit ). Current temp shows correct value and unit label.
ed: I should add that while it shows target temperature as degrees Celsius, it sets the thermostat to the intended Fahrenheit temp, in the case of the screenshot, to 81F. I guess that is self-evident given that I'm here and typing this and I would have been incinerated at 81C . . .
I just upgraded to Quartermaster 0.2.1, but I cannot complete the initial setup that needs to be redone.
For the "Connection Settings" step it says I should fill in a hostname or IP-address in the local network. However, if I enter a hostname or IP address in the Hostname field, the value is considered invalid ("Valid hostname or IP required")? It reallly seems to want an URL in the hostname field? But that makes the Port field weird. I'm guessing the validation for the Hostname field is set incorrectly?
If I do enter the URL (http://something.local.domain) in the Hostname field, the Connect becomes available, but when pressing it I get for Connection Infos: "Failed to connect to server. Go back and check your data".
Also, I don't want to use an internal URL with HTTP at all! Even though traffic goes over a local network, HTTP is still not recommended and to use HTTPS internally is really a hassle given that the hostname should be validatable by Let's Encrypt so I always use my external URL.
Due to the use of mdm-battery info, sailfish-mdm is added when the app is installed, and prompts quite a scary warning about the device being managed. Perhaps another method could be used to get battery status?
I'm unable to setup this app with the latest version. On the second screen I see the message "Seite konnte nicht geladen werden" (site could not be loaded).
When starting the app in the terminal, I get the following output:
nemo@Sailfish ~]$ harbour-quartermaster
[D] unknown:0 - Using Wayland-EGL
[W] unknown:9 - file:///usr/share/harbour-quartermaster/qml/harbour-quartermaster.qml:9:30: QML OverviewPage: Bi
nding loop detected for property "status"
[W] unknown:1283 - file:///usr/lib/qt5/qml/Sailfish/Silica/PageStack.qml:1283:13: QML AnimatedLoader: (file:///u
sr/share/harbour-quartermaster/qml/pages/wizard/WizardConnectionPage.qml:77:22: Cannot assign a value to a signa
l (expecting a script to be run)
EnterKey.onClicked: false
^)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.