Gajim - 2024-05-15


  1. Sally

    The messages I send from Android device with Conversations app, when I open them on Gajim, it shows like this: "This message was encrypted with OMEMO, but not for your device."

  2. Sally

    I use OMEMO in both devices,

  3. Sally

    Is there away that I can see all my messages in both devices?

  4. cal0pteryx

    Polarian: gajim never segfaults due to corrupted configs.

  5. cal0pteryx

    Segfaults in general are rather rare and mostly triggered by libraries

  6. cal0pteryx

    Since gajim is python, almost every issue results in a traceback

  7. 222m5

    Sally: open the account in Conversations and change the trust setting under "Other devices" (for Gajim fingerprint)

  8. treefingers

    Hi I'm on Windows. When I try to play a sound from the chat it plays out of my laptop's speakers instead of my Bluetooth headphones. My Bluetooth headphones are the main sound device and YouTube on my web browser plays out of them.

  9. lovetox

    Maybe you can route different sounds to different devices

  10. lovetox

    Check system sounds

  11. chud

    lovetox How do I test iq_request_task stuff

  12. chud

    you don't like coroutines but use coroutines just done wrong

  13. chud

    is there an example of a @iq_request_task'd function being unit tested

  14. treefingers

    lovetox: In the Audio/Video section of preferences all the options are disabled because video calls are not enabled on Windows

  15. treefingers

    So I can't change the settings to route it to a different device

  16. treefingers

    https://xmpp.jix.im/upload/945e6e922a22dd0bd15ac626fae70cc3d7c542d8/UjVmdWpl5Tw3phNVc08Ph5LuaBCkHswziwIjU6Ml/01614104-0617-4f98-8856-7d147a835b76.png

  17. treefingers

    Another issue is that I can't open images on Windows because the path doesn't exist

  18. treefingers

    Maybe this client isn't really very Windows friendly....

  19. treefingers

    Although I'm very new to XMPP and I don't know of any better options

  20. treefingers

    At least this one has a nice UI

  21. cal0pteryx

    treefingers: did you install via Microsoft Store?

  22. 222m5

    treefingers: if you haven't already, try connecting your Bluetooth headphones _before_ starting gajim; also check any *windows* system audio options/settings

  23. treefingers

    Yes

  24. treefingers

    22m5 that's what I did

  25. cal0pteryx

    treefingers: the audio video section in gajim's preferences is not about notification sounds, so there are no relevant settings there.

  26. cal0pteryx

    I'd suggest to check the windows sound routing, but I'm no expert on that

  27. cal0pteryx

    treefingers: the file open issue is known to be a problem of the ms store version. I'll have to investigate

  28. treefingers

    Oh actually, setting the headphones in the Windows volume mixer to Gajim does work

  29. treefingers

    I'm used to it happening automatically, but this is fine

  30. treefingers

    It's okay

  31. treefingers

    Nice application

  32. treefingers

    https://xmpp.jix.im/upload/945e6e922a22dd0bd15ac626fae70cc3d7c542d8/pWdjM0z0IwHZm2L3QdyK045BGiM3uXNsHGEewGuA/0e3e9029-8cfa-4db5-bf63-2ac0d34eba50.png

  33. cal0pteryx

    treefingers: I'm glad that works, thanks for the feedback

  34. cal0pteryx

    I'll check why opening files doesn't work as intended

  35. lovetox

    It's probably the Ms store version

  36. lovetox

    chud, https://dev.gajim.org/gajim/gajim/-/merge_requests/995/diffs#604c873585e1777d16c20ff7606d35fe19081c75

  37. lovetox

    > chud, https://dev.gajim.org/gajim/gajim/-/merge_requests/995/diffs#604c873585e1777d16c20ff7606d35fe19081c75_162_222

  38. lovetox

    chud, https://dev.gajim.org/gajim/gajim/-/merge_requests/995/diffs#604c873585e1777d16c20ff7606d35fe19081c75_162_222

  39. lovetox

    in the MR from intelfx, basic JMI and service discovery are already added in a for me acceptable state, so i dont think its a good use of your time to try and work on that.

  40. lovetox

    I think the best way would be, that i can merge intelfx, MR which refactors and fixes probably many little things in the jingle code

  41. lovetox

    then you could simply write your own jingle content module, which lives beside jingle_rtp.py, and is used whenever datachannels are available

  42. chud

    Wdym datachannels...

  43. chud

    intelfxs stuff implements dtls rtp too although I figure this will still take plenty of time to push changes into gsteamer etc. but then I guess if time were a priority here perhaps my stuff would already have been merged a long time ago.

  44. chud

    Anyway I think both me and him want to hear a final decision from you guys to determine which of us should do any further work.

  45. lovetox

    maybe i was misunderstanding this the whole time, i understand that both libs use dtls-srtp, but there is this XEP https://xmpp.org/extensions/xep-0343.html

  46. lovetox

    Signaling WebRTC datachannels in Jingle

  47. lovetox

    and your lib is called libdatachannel, so i thought, it does use these signaled datachannels here

  48. lovetox

    and i thought farstream works without these datachannels

  49. lovetox

    making it 2 libs which do the same, but in a different way

  50. chud

    Yeah

  51. chud

    Webrtc datachannels can be used for jingle ft (are already used by Conversations). That's part of webrtc as well as the audio/video stuff. Libdatachannel is just the name they picked. The audio/video done with libdatachannel is entirely compatible with Conversations and Dino, and thus by extension would be compatible with farstream patches. So it's the same thing in terms of protocol. Just different approaches.

  52. chud

    I have even successfully tested webrtc datachannel file transfer against Conversations but didn't implement an interface.

  53. nicoco

    Crazy idea: what if we had optional trans-workspace "superpinned chats" ? I think I'd like that feature.

  54. lovetox

    chud, hm ok so you are saying they are doing exactly the same

  55. chud

    lovetox: Yes... You didn't know both are compatible with conversations etc?...

  56. lovetox

    compatible does not mean, both do the same thing, i can transfer files via direct tcp connection, via an xml stream, via webrtc datachannels

  57. lovetox

    this is a diverse eco system, not all client will support the one and only thing everyone uses

  58. lovetox

    clients use the thing thats available for there env, language, os, whatever

  59. lovetox

    clients use the thing thats available for theire env, language, os, whatever

  60. chud

    Converstaions just uses google's webrtc library, it will refuse to work without dtls rtp, Dino will too, and imho that's for the better

  61. lovetox

    if also filetransfer could work in the future with libdatachannel, its probably a good choice. But the work in Gajim is not what library we pass the negotiated parameteres to. if the jingle negotiation works correctly in Gajim, exchanging the lib at a later point is probably a trivial thing. Thats what i was trying to convey the whole time, i dont care about the current transport library of the month. Thats why i want a good abstraction of jingle in Gajim, so when something new becomes hip and cool, i add a single module NewAndCoolTransport, where i implement the exchange of the data. The negotiation layer in jingle will stay the same.

  62. chud

    how has that been working out with the broken file transfer and calls?

  63. chud

    also, libdatachannel does fewer things than farstream, it doesn't encode/decode audio/video, I do that with gstreamer

  64. lovetox

    are you saying you wrote the first code in history that does not need any maintainance at all anymore after merging?

  65. lovetox

    it will break the same as all other code will break, when things change over the years

  66. chud

    I am saying it's not broken, while the code you believe to be easier to be maintained isn't maintained.

  67. chud

    I see you want to have another abstraction level but jingle is itself pretty trivial already at least when you're doing calls. You could of course mess around with routing stanzas in fancy ways between callbacks, state machines, additional modules just to do a simple extdisco request etc. But imho it is much more trivial if the code is linear thus easier to reason thus making less need for abstraction. Less abstraction less code less to maintain to begin with.

  68. chud

    anyway, I could shove libdatachannel along with encoding/decoding into the unmaintained jingle code somehow I guess. Would still be less maintenance in the future bceause libdatachannel is actually used maintained and sponsored by people other than gajim. But up to you.

  69. chud

    anyway, I could shove libdatachannel along with encoding/decoding into the unmaintained jingle code somehow I guess. Would still probably be less maintenance in the future bceause libdatachannel is actually used maintained and sponsored by people other than gajim. But up to you.

  70. goran

    Someone running Gajim under Voidlinux? Do I need to install further dependencies to get a call-button to call or to get called by Conversations-clients?

  71. lovetox

    goran, calling is not currently supported

  72. lovetox

    chud, i think we need to agree to disagree on the point of architecture. I agree that libdatachannel is a probably a good choice for the future. The MR from intelfx builds on the existing code and tries to improve it, which i feel more comfortable with. I want to keep the current abstraction. My plan is to merge the improvements to the jingle code that are in intelfx code, independent of the fact if farstream patches get merged or not. This means working JMI, and also external service discovery. If you are afterwards still interested to add libdatachannel as an alternative to the (then maybe working) farstream, and are willing to integrate it into the existing architecture, im happy to merge it.

  73. lovetox

    Maybe you get the libdatachannel bindings in the meantime published, python typehints for the bindings would also be a good addition.

  74. taba

    he's still talking about this?

  75. taba

    chud, you can just create a fork if that's what you want...

  76. goran

    lovetox, two years ago I could call a Conversations client.

  77. goran

    Who has paid to remove that feature? 😂😂 And how much?

  78. lovetox

    the world moved to new protocols which we are in the processing of getting implemented

  79. lovetox

    nicoco, about the nickname MR

  80. lovetox

    i think this will only work if you send the nickname also in all messages

  81. lovetox

    presence is not gonna cut it

  82. nicoco

    lovetox: I’m not against the idea, so we check if the punycoded-resource matches the nickname on each message? I’ll keep it in presence too since that’s what cheogram uses, but sure, I can add it to every message too.

  83. nicoco

    You did merge the change required for processing the MUC nickname in nbxmpp though 😄

  84. nicoco

    I know you’re in the ‘let’s put everything in every message’ team, I remember you’d like the same thing for hats. It’s non-standard (the XEP is experimental though), but I can put hats in all messages too if you want 😉

  85. nicoco

    lovetox: it would be super cool if that transport icon in room-avatar PR makes it to the next release too, it’s a bit sad that we have these icons for 1:1 chats but not MUCs 😕

  86. nicoco

    lovetox: it would be super cool if that transport icon in room avatar PR makes it to the next release too, it’s a bit sad that we have these icons for 1:1 chats but not MUCs 😕

  87. fjklp

    if I made a merge request to make the debug log name be in ISO 8601 format, would that be acceptable?

  88. lovetox

    fjklp, show an example please

  89. fjklp

    I don't have one

  90. fjklp

    oh

  91. fjklp

    time format?

  92. lovetox

    nicoco, its important for presence too, there are people in the room which never write a message

  93. lovetox

    the same as sometimes we receive a message without the person beeing present in the room

  94. lovetox

    but you dont need to adapt your MR, i currently refactor the nickname code, so it will be later a lot easier to add this feature

  95. Sally

    222m5, It's a bit tricky, but finally I found it, thank you so much

  96. fjklp

    Why did gajim automatically consider the trust of omemo keys of my account on other devices as "Not Decided" instead of "Blind Trust"? This was causing my message to be unreadable on other devices.

  97. fjklp

    Why did gajim automatically consider the trust of omemo keys of my account on other devices as "Not Decided" instead of "Blind Trust"? This was causing my messages to be unreadable on other devices.

  98. lovetox

    either because you disabled blind trust

  99. lovetox

    or because you trusted one of your other devices

  100. fjklp

    I don't know if I ever trusted one in the past but there wasn't one trusted presently

  101. fjklp

    blind trust is enabled

  102. fjklp

    I don't understand why trusting a key would disable blind trust

  103. lovetox

    maybe you distrusted a device

  104. fjklp

    this is what I'm talking about https://en.wikipedia.org/wiki/ISO_8601

  105. fjklp

    but there are options, apparently, to do things differently

  106. fjklp

    so, YYYY-MM-DD or YYYYMMDD

  107. fjklp

    Thh:mm:ss or Thhmmss

  108. fjklp

    if it's used in unambiguous contexts, which I assume ours is:

  109. fjklp

    if it's used in unambiguous contexts, which I assume ours is:, you can ommit the 'T'

  110. fjklp

    so hh:mm:ss or hhmmss

  111. lovetox

    it already looks like that for me

  112. fjklp

    Really? for me it's DDMMYYYY-hhmmss-debug.log

  113. lovetox

    ah ok you mean the filename

  114. fjklp

    yes

  115. lovetox

    yeah shure why not

  116. lovetox

    but i rather not have ":" in my filename

  117. lovetox

    so simply turning the date around, i guess is what you mean

  118. lovetox

    so its better sortable

  119. fjklp

    That's mostly what I wanted, but there are additional possibilities

  120. fjklp

    2007-04-05T123018−02:00 has the T separator and the UTC offset

  121. fjklp

    - as separator is probably easier to read

  122. fjklp

    2007-04-05-123018

  123. lovetox

    2024-05-15-225115-debug.log

  124. lovetox

    is that alright for you?

  125. fjklp

    yeah

  126. lovetox

    ok i push this myself

  127. fjklp

    oh, nice :)

  128. bot

    lovetox pushed 6 commits to branch gajim/master https://conference.gajim.org:5281/pastebin/1d13fdff-6cd6-40da-9c66-58da6050b34c

  129. fjklp

    thanks

  130. bot

    wurstsalat pushed 1 commits to branch gajim/master other: Set correct pyGObject stub config for dev_env script - https://dev.gajim.org/gajim/gajim/-/commit/31820540d789353243c044f44b1d56dd6a194b6d

  131. Link Mauve

    “17:55:36 chud> Converstaions just uses google's webrtc library, it will refuse to work without dtls rtp, Dino will too, and imho that's for the better”, that’s wrong about Dino, it uses Gstreamer not libwebrtc, and it also implements unencrypted calls for compatibility with e.g. Gajim or Pidgin or Psi or the PSTN.

  132. lovetox

    nicoco, how should mentioning someone work for such a contact that supplies a nickname?

  133. lovetox

    do i need to mention the punycode name or the one from the nickname tag

  134. lovetox

    probably the one supplied from the nickname, as this is how they would see it on the other side of the bridge i guess

  135. Link Mauve

    chud, intelfx, do either of you already implement screen sharing in your MRs? Do you support selecting PipeWire camera and/or audio streams? What about through a portal?