libera/#maemo-leste/ Thursday, 2023-12-14

uvoscan some one think of a hildon application with stackable windows thats also fullscreen?01:50
Wizzupfreemangordon: I will look at this tomorrow but something seems to bring tp into off state oe so02:21
Wizzupwhen I enable mobile data but set ui presence to offline, tpring appears in sphone02:21
Wizzupif I turn off mobile data it is gone02:21
freemangordonwhat ui presence? IIRC tpring should not appear in accounts ui07:40
* freemangordon checks07:40
freemangordonhttps://github.com/maemo-leste/rtcom-presence-ui/blob/maemo/chimaera/lib/pui-master.c#L92607:48
freemangordonso, if tpring appears in presence ui, that's a bug07:49
freemangordonalso, please provide result of  mc-tool show ring/tel/account007:52
arno11the new release works fine on n900: boost freq are ok, we have overclock ootb now, nice08:01
freemangordonarno11: nice08:07
freemangordonWizzup: also, ring supports neither TP_IFACE_CONNECTION_INTERFACE_PRESENCE nor TP_IFACE_CONNECTION_INTERFACE_SIMPLE_PRESENCE08:07
freemangordonso you should not try to check the presence on ring account08:07
freemangordonit is either enabled or disabled08:08
freemangordonsee https://github.com/maemo-leste/rtcom-presence-ui/blob/maemo/chimaera/lib/pui-master.c#L18808:14
Wizzupfreemangordon: will check10:43
Wizzupfreemangordon: could be that voicecall program doesn't deal with this properly11:28
Wizzupfreemangordon: lol so this is a tp-ring special path:11:31
Wizzup        if (d->shouldForceReconnect()) {11:31
Wizzup            WARNING_T("Forcing account %s back online immediately", qPrintable(d->account.data()->uniqueIdentifier()));11:31
Wizzup            d->account->setRequestedPresence(Tp::Presence::available());11:31
Wizzup        }11:31
WizzupI think I have an idea what is going on11:34
Wizzupfreemangordon: looks like tp-ring reports presence on dbus11:37
Wizzupit looks like voicecall things that it's not even 'online'11:38
Wizzupthinks*11:38
Wizzupbut why would tp-ring even act on things like connecting to wifi, feels like something else is instructing it11:41
freemangordonWizzup:  I see nothing like that here11:42
freemangordondo you have empathy or something installed?11:43
freemangordonalso, you *cannot* request presence for tpring11:43
freemangordonit does not implement the required interface11:43
freemangordonmaybe they have that patched in SF11:44
Wizzupwhat causes the tp accounts to connect when connected to the network11:44
Wizzupfreemangordon: it seems happen to change presence in our repo11:44
Wizzups/happen/happy/11:44
freemangordonwhat presence?11:45
Wizzupsignal time=1702550119.441680 sender=:1.39 -> destination=(null destination) serial=998 path=/org/freedesktop/Telepathy/Account/ring/tel/account0; interface=org.freedesktop.Telepathy.Account; member=AccountPropertyChanged11:45
Wizzup         string "CurrentPresence"11:45
Wizzup         variant             struct {11:45
Wizzup               uint32 111:45
Wizzup               string "offline"11:45
Wizzup               string ""11:45
Wizzup            }11:45
freemangordonno11:45
freemangordonwait11:45
freemangordonplease give me 'mc-tool show ring/tel/account0'11:45
freemangordonforget about dbus11:46
freemangordonuse mc-tool11:46
Wizzuphttps://paste.villavu.com/raw/RIJ4Ju5ITdc0KzTNh0Uhwr5Ai981oOtXApp14fUl/11:46
freemangordon"Connects: automatically"11:46
freemangordonthats what brings it online11:47
freemangordonwe should not request online status11:47
Wizzupso you want auto-connect off?11:47
freemangordonno11:47
freemangordonit is ok11:47
freemangordonmy question is - what exactly the code you pasted ^^^ is supposed to do?11:48
freemangordon if (d->shouldForceReconnect()) {11:48
freemangordonetc11:48
freemangordontp already does that for us11:48
Wizzupthat checks if the account is tp11:48
Wizzupas11:48
Wizzuper11:48
Wizzupcheck if it is tp-ring11:48
Wizzupand then it 'forces' it online again11:48
Wizzupbut that still doesn't have the proper effect11:48
Wizzupso, my question is11:48
Wizzupwhat would cause tp-ring to change it's presence or not be online11:49
Wizzupwhat *software* tells it to do that11:49
freemangordontp-ring *cannot* be online, offline, not available, etc11:49
freemangordonbecause it does not support presence :)11:49
Wizzupok, but in dbus it reports that it is 'connecting' and not 'connected'11:50
freemangordonconnected has nothign to do with being online11:50
freemangordonthose are orthogonal11:50
Wizzupand this tracks having wifi or gprs11:50
freemangordonwait11:50
freemangordon'connected' is TpConnection preoperty11:50
Wizzuphttps://telepathy.freedesktop.org/doc/telepathy-qt/a06885.html#ga601f90d95125a95ed0ff9a546fb1363f11:50
freemangordon'online' is TpAccount property11:50
Wizzupthis yes11:50
Wizzupyes11:51
freemangordonso, what is the issue? conneciton is not 'connected' or account is not 'online'?11:51
Wizzupso I think I know how to 'fix' voicecall, but still I would like to what *what* in maemo triggers presence11:51
Wizzupfreemangordon: voicecall sees it as not available and unregisters it with sphone11:51
Wizzupbut this happens only when not on wifi or gprs somehow11:52
freemangordonbased on the presence?11:52
freemangordonwhere is that code, link please11:52
Wizzupok, but there's still my question ^^ : D11:52
freemangordonnothing in maemo triggers presence in general11:52
freemangordoneach protocol either supports presence or not11:53
Wizzupwhat makes it *act* on wifi/gprs change11:53
sicelolayman explanation ... tp-ring is offline when we're in Flight Mode ... maybe it's the answer to the question?11:53
Wizzupbecause they start to connect immediately11:53
Wizzuphttps://github.com/maemo-leste-upstream-forks/voicecall/blob/master/plugins/providers/telepathy/src/telepathyprovider.cpp#L23511:53
siceloso it does support some 'primitive' presence11:53
Wizzupand the status applet also knows immediately11:54
freemangordonsicelo: what is 'it'?11:54
Wizzupfreemangordon: specifically this check https://github.com/maemo-leste-upstream-forks/voicecall/blob/master/plugins/providers/telepathy/src/telepathyprovider.cpp#L24011:54
Wizzupit checks for status connected11:54
siceloi mean, tp-ring has a basic type of presence. it can be offline when we're in flight mode for example11:55
freemangordonso, which one is false there?11:55
Wizzupfreemangordon: from dbus-monitor, the last one11:55
Wizzupd->account.data()->connectionStatus()11:55
Wizzupbut I haven't added any debug logging yet11:55
freemangordonthis is not presence11:55
freemangordonso lets stop talking about 'online', ok? because we're mixing the things and that doesn't make it any easier :)11:56
freemangordonsicelo: no, tp-ring does not have any concept of presence11:56
Wizzupfreemangordon: I'm not talking about 'online'11:56
freemangordonsicelo: "also, ring supports neither TP_IFACE_CONNECTION_INTERFACE_PRESENCE nor TP_IFACE_CONNECTION_INTERFACE_SIMPLE_PRESENCE"11:57
WizzupI'm just asking what piece of software in maemo makes it so that tp knows when to reconnect, regardless of this issue11:57
freemangordonthis is mc related11:57
Wizzupbecause it directly correlates with tp-ring saying it's no longer 'connected'11:57
Wizzupso tp-mc is icd2 aware?11:57
freemangordonmaybe11:57
freemangordonI dunno11:57
freemangordonthere might be some remnants11:57
WizzupI always assumed we have something icd2 aware that restarts things11:57
Wizzupit could just be netlink for network interfaces11:57
freemangordonno11:57
freemangordonis there is something, it is over dbus11:58
freemangordonor, it could be ofono11:58
Wizzupok11:58
freemangordonWizzup: sorry, my blood sugar level is very low, bbl in 20 minutes11:58
freemangordon:)11:58
Wizzuptake it easy11:58
Wizzupso I will check again in a bit (outside atm), but it looks like tp-ring connection status goes into 'connecting' insteaf of 'connected'11:58
Wizzupand this causes voicecall to say 'well, you're not ready then'11:59
Wizzupgod I wish there was a program that takes a dbus-monitor log and makes it easily to filter it12:00
freemangordonafaik there is something12:00
freemangordonsome gnome tool12:01
WizzupI know of the one to explore interfaces12:01
Wizzupnot one to monitor12:01
freemangordonah, could be12:01
sicelowhat do you want to filter?12:01
freemangordonwait, I'll check what's going on in tp-ring code12:01
* sicelo uses busctl nowadays ... seems versatile12:02
Wizzupsicelo: like, I want to see all messages related to ring, but grep won't help since it's all multi line and indented12:02
Wizzupsicelo: and 'ring' matches 'string' too, so in general it's pretty stupid12:02
freemangordonWizzup: it seems it changes the status to "connected" when a modem is bound12:02
WizzupI can navigate in vi with seaching for 'ring/' but then there is still a lot of clutter12:02
sicelobusctl can probably help ... even has json output, so you can use jq and similar stuff12:02
Wizzupfreemangordon: well the modem doesn't go anywhere12:02
Wizzupsicelo: will check12:02
freemangordonsee   ring_connection_bind_modem()12:03
Wizzupfreemangordon: when does it change to 'connecting' ?12:03
freemangordonon the constructor :)12:03
freemangordon*in12:03
Wizzupthat would mean somethings sets it offline then12:03
Wizzupmaybe auto-reconnect is exactly the opposite of what we want12:04
freemangordonI'd recommend to start tpring from cmdline with logs enabled12:04
freemangordoncould be12:04
Wizzupto me it seems like tp cm just turns it off12:04
siceloonly shortcoming of busctl is that you need to be root in order to monitor. otherwise it's flexible12:04
Wizzup(but I didn't see that on dbus)12:04
Wizzupsicelo: even for non system bus?12:04
sicelono, only system :-)12:04
Wizzupyeah none of the tp stuff is on system bus12:05
Wizzuplol yep, tp-ring has a new pid now that I reconnect to wifi12:05
Wizzupok, I will look at this later12:13
Wizzuptp-ring logs tp_base_connection_change_status: was 0, now 2, for reason 1'12:21
Wizzup'mcd_account_connection_proceed_with_reason: ring/tel/account0 wants to connect, but we're offline, queuing it up'12:26
Wizzupyeah it uses GNetworkMonitor to see if we're 'at least partially online'12:26
Wizzupok, so the problem is in mission control12:26
Wizzupnot in voicecall manager or ring12:26
freemangordonyep, I was about to say that maybe tp/mc oversmarts itself12:29
freemangordonwe shal check what SF are doing12:29
* Wizzup debugged all of that on the screen+keyboard of the d4 btw12:29
freemangordonwhy?12:29
Wizzupbecause it was sunny out :)12:30
freemangordonheh12:30
Wizzupalso having to debug a problem that only shows up when ssh doesn't work is tricky12:30
freemangordonah12:30
freemangordonyeah12:30
freemangordonWizzup: which file is that?12:32
Wizzuphttps://bugs.freedesktop.org/show_bug.cgi?id=6871212:32
Wizzup./src/mcd-account-connection.c12:33
Wizzupfunction mcd_account_connection_proceed_with_reason12:33
freemangordonok12:33
Wizzupmy bet is that this code was never in nokia ;)12:34
freemangordon"...use GNetworkMonitor (which is also pluggable),"12:34
Wizzupwe don't want to fake a network connection for cm12:34
Wizzupthen it will try to online others12:34
Wizzupwe want a property to let some cm's connect anyway12:34
freemangordonwe shall check how do they overcome that in SF12:34
WizzupI don't think they use tp-ring, but ok :)12:35
Wizzupvoicecall manager has an ofono backend12:35
freemangordonah12:35
Wizzupsee 957795838715b3b95f2bf8bc116b2328bf6a2881,12:35
WizzupA possible refinement in future Tp versions would be a way for a CM12:35
Wizzupto tell MC "this connection does its own connectivity-monitoring,12:35
Wizzupso don't kick it when we get disconnected". For now, we assume that12:35
Wizzupeverything needs the Internet, unless it's one of the accounts that12:35
Wizzupwouldn't previously have been bound to a connection (i.e.12:35
Wizzup_mcd_account_needs_dispatch() returns FALSE).12:35
freemangordonyeah, I was about to look in the code12:36
freemangordonto see if we can workaround that12:36
Wizzupin ring maybe?12:36
freemangordonlemme see12:36
Wizzupseems to be 'always_dispatch'12:37
Wizzup    /* In addition to affecting dispatching, this flag also makes this12:37
Wizzup     * account bypass connectivity checks. */12:37
Wizzup    gboolean always_dispatch;12:37
Wizzup./src/mcd-account-config.h:#define MC_ACCOUNTS_KEY_ALWAYS_DISPATCH "always_dispatch"12:37
freemangordonis that some account property?12:37
Wizzuptrying now12:37
Wizzupand yes12:37
Wizzupthere is also an 'always on' property12:38
Wizzupnot sure if that's also helpful12:38
Wizzuplooks like now12:39
Wizzupnot12:39
Wizzupeither I did something wrong or it did not work12:41
WizzupI set always_dispatch=false12:41
freemangordonno, it should be true12:41
Wizzupbut then needs_dispatch will be true12:42
freemangordonah12:42
freemangordon /* special case flag (for ring accounts, so far) */12:42
Wizzupwhich one is this12:42
freemangordon  p, li { white-space: pre-wrap; }  always_dispatch12:43
Wizzupright12:43
Wizzuplet me try again12:43
freemangordonbut you shall set it to true12:44
freemangordonit defaults to false12:44
freemangordonsee   p, li { white-space: pre-wrap; }  mcd_connection_need_dispatch12:44
Wizzupah12:45
Wizzup    if (mcd_connectivity_monitor_is_online (12:45
Wizzup              mcd_account_get_connectivity_monitor (account)) || _mcd_account_needs_dispatch (account))12:45
Wizzupok12:45
freemangordonmhm12:45
Wizzupok, just called myself with wifi off, we're good, but we'll need to set this12:46
freemangordonthis should be part of ring account creation, no?12:46
Wizzupyeah12:46
freemangordonlike, who created ring/tel/account0?12:46
Wizzupwe don't have a 'ring account creation' process atm :)12:46
freemangordonmhm12:46
Wizzupwell, this is progress, I'm going to take a break for a moment12:47
freemangordonmhm12:47
Wizzupso where would we want to make the account?13:14
uvoswould make sense if the sphone plugin did this OR?13:36
freemangordonuvos: no, I don;t think sphone should deal with tp accounts13:59
freemangordonWizzup: who will depend on tp-ring?14:00
freemangordonBTW, IIRC, back then tp-ring was creating the account on installation14:01
freemangordonWizzup: wait...14:02
freemangordonlook at   mcp_account_manager_ring_init()14:03
freemangordonwhy is that not called?14:10
siceloarno11 - when you have a chance, please checkout https://github.com/sicelo/libcmtspeechdata/commits/compile-fixes/ and see if it works fine. if so, i will make an MR14:13
sicelobasically tries to fix the numerous (annoying) compile errors for cmtspeech14:13
siceloand of course, anyone else is free to look at the commits. tbf, that code can do with some serious refactoring :p14:25
freemangordonWizzup: I think I found what's going on14:51
freemangordonring mc plugin is not installed, IIUC14:51
freemangordonthat's why we shall create the account by hand14:51
freemangordonwhile rpm installs   %{_libdir}/mission-control-plugins.0/mcp-account-manager-ring.so :)14:52
freemangordondh_missing: warning: usr/lib/x86_64-linux-gnu/mission-control-plugins.0/mcp-account-manager-ring.so exists in debian/tmp but is not installed to anywhere14:55
freemangordondh_missing: warning: usr/share/man/man8/telepathy-ring.8 exists in debian/tmp but is not installed to anywhere14:55
freemangordon:)14:55
freemangordonshall I fork?14:59
uvosfreemangordon: i agree sphone should not deal with tp accounts15:01
uvosbut ring is special since its not a "real" account, and simply has to exist any where sphone runs15:02
freemangordonuvos: anyway, I found what the issue is15:02
freemangordonyes, but tp-ring debian packaging is broken15:02
uvosok15:02
freemangordonthat's why no account is created15:02
uvosok15:02
freemangordongoing to fix that15:02
uvosthats fine then15:03
uvosi just want to ensure it works if only tp sphone (and vcm) is installe15:03
uvosd15:03
uvossince imo it should15:03
freemangordonit will15:03
freemangordonwell, you need telepathy as well :)15:03
freemangordonah, 'tp'15:04
freemangordonyeah15:04
uvosyou need ofono too15:04
uvosbut you know what i mean15:04
freemangordonwell15:04
freemangordonyeah15:04
freemangordonI just installed empathy(and friends) from my d415:04
freemangordon*uninstalleds15:04
arno11sicelo: currently looking @cmtspeech15:14
arno11wooo, indeed lot of errors fixed15:15
arno11let me try it15:17
Wizzupfreemangordon: what does this mc ring plugin do? set this property?15:18
Wizzupfreemangordon: but yes, we can fork if we have to15:18
freemangordonI already did15:19
freemangordonbut it fails to build :)15:19
freemangordonsee ci15:19
freemangordonI don;t get what's wrong with it15:19
Wizzuplet me take a quick look15:19
freemangordonfails to find the tag, but it is there15:19
WizzupI am pretty sure I knpw15:20
Wizzupjust a sec15:20
Wizzupfreemangordon:15:20
Wizzupmaemo/chimaera != chimaera15:20
Wizzup:)15:20
freemangordonoh15:20
freemangordon:)15:21
freemangordonthanks15:21
freemangordonwill fix it15:21
freemangordonWizzup: I think you shall delete ring account before upgrade15:22
freemangordonalso, we shall start tp-ring from xsession, mlocked etc. see   RING_REALTIME and RING_MEMLOCK15:24
Wizzupmhm15:25
freemangordonRING_PERSIST=1 as well15:25
WizzupI need to go do some other things first, I'll be back in an hour or so15:25
Wizzupfeel free to hack away15:25
freemangordonwell, I don;t see what more I can do now15:25
Wizzupmaybe write an xsession file, but not sure where it would go15:26
freemangordonwe shall decide first who depends on tp-ring15:26
freemangordonconnectivity mp?15:26
Wizzupyeah, I don't know if we need another maemo-telephony pkg, or if the existing one works15:27
freemangordonto me connectivity is ok15:27
freemangordonso xsession file belongs there15:28
Wizzupsounds good15:29
arno11sicelo: works fine and commit 51a6f6c fixed the random weird tone issue apparently :) well done man15:30
freemangordonthe fuck, account is still not created :(15:30
Wizzupare you sure that should make the account?15:31
Wizzupfreemangordon: I think you can just do mc-tool add ring/tel account0 -p always_dispatch=true or so (note I didn't test this and maybe even got the var name wrong)15:32
Wizzupactually ignore the '-p' too15:32
freemangordonugh:15:32
freemangordon could not load plugins from /usr/lib/mission-control-plugins.0: Error opening directory ?/usr/lib/mission-control-plugins.0?: No such file or directory15:32
freemangordonthat's wrong dir15:33
freemangordonit should be /usr/lib/$arch/mission-control-plugins.015:33
siceloarno11, wow! i only compile-tested this. actually i'm surprised there's a positive 'visible' effect. i was only hoping that i didn't break anything or introduce problems.16:09
siceloWizzup: so there's a PR for cmtspeech - https://github.com/maemo-leste/libcmtspeechdata/pull/316:10
Wizzupwill checl later tonight ty16:19
freemangordonWizzup: tp-ring creation is fixed16:26
siceloWizzup: please hold off merging. seems there's a compilation error that only shows up on armhf, but not amd64. i want to fix that one too21:11
Wizzupokay, sure21:11
Wizzupfreemangordon: so I delete the account and apt update / upgrade ?21:12
Wizzupfreemangordon: btw, if tp-ring autostarts in -devel it means calls will no longer work21:20
Wizzup(tp-ring will just hang up if there is no tp client, and sphone uses ofono directly in -devel)21:21
uvosso new sphone has /usr/share/sphone/sphone.ini.d and should update the combobox when a backend is added or removed without needing to reopen the window22:23
uvosthe latter is untested22:23
Wizzupgreat, I'll rebase22:24
siceloWizzup: https://github.com/maemo-leste/libcmtspeechdata/pull/4  ... this one has better fixes for the compilation errors (compiles equally well with both amd64 and armv7)23:16
freemangordonWizzup: well, one shall install tp-ring by hand23:46
freemangordonnothing depends on it still23:47
freemangordonsicelo: next time you'd better force-push, instead of creating new PR23:53
freemangordonit is easier to review that way23:53

Generated by irclog2html.py 2.17.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!