maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Applications (https://talk.maemo.org/forumdisplay.php?f=41)
-   -   [SFOS] Matrix - clients (https://talk.maemo.org/showthread.php?t=100038)

juiceme 2020-01-27 18:09

Re: Matrix - clients
 
Yes it might be doable.
I just installed synapse and have been studying how the api works.

cy8aer 2020-01-27 18:29

Re: Matrix - clients
 
Quote:

Originally Posted by juiceme (Post 1564808)
Yes it might be doable.
I just installed synapse and have been studying how the api works.

https://matrix.org/docs/spec/

wolke 2020-01-27 19:20

Re: Matrix - clients
 
i would fukken LOVE to have a native matrix client. first person to make a client that goes 'ping' when i get a message with my phone locked gets a prize (riot does not in fact do this on SFOS)

taixzo 2020-01-27 19:36

Re: Matrix - clients
 
It looks like the matrix nio Python library does support E2E encryption; I think that would be a good start for a SFOS client given that python3/QML is well integrated into the OS.

cy8aer 2020-01-27 20:14

Re: Matrix - clients
 
Quote:

Originally Posted by taixzo (Post 1564821)
It looks like the matrix nio Python library does support E2E encryption; I think that would be a good start for a SFOS client given that python3/QML is well integrated into the OS.

Yes and it is a catastrophy to implement the stuff to nio because it is *real* complex.
  • ca. 56MB additional libraries
  • python async seems not to really cooperate with pyotherside
  • the e2e-stuff looks good but the key handling is weird
  • some stuff is not implemented which is needed for a full client in nio so it must be implemented on the nio side too.

(and that is why it takes so much time to reimplement my bluepill client from matrix-python-sdk to nio)

Halftux 2020-01-27 20:25

Re: Matrix - clients
 
Quote:

Originally Posted by taixzo (Post 1564821)
matrix nio Python library does support E2E encryption; I think that would be a good start for a SFOS client given that python3/QML is well integrated into the OS.

Another way would be to update habour-matrix it is based on QMatrixClient and this got updated to Quotient and the new library also supports E2E encryption.

https://matrix.org/blog/2019/09/20/q...t-g-so-c-2019/

https://github.com/quotient-im/libQuotient
https://github.com/quotient-im/Quaternion

taixzo 2020-01-27 21:28

Re: Matrix - clients
 
Quote:

Originally Posted by cy8aer (Post 1564822)
Yes and it is a catastrophy to implement the stuff to nio because it is *real* complex.
  • ca. 56MB additional libraries
  • python async seems not to really cooperate with pyotherside
  • the e2e-stuff looks good but the key handling is weird
  • some stuff is not implemented which is needed for a full client in nio so it must be implemented on the nio side too.

(and that is why it takes so much time to reimplement my bluepill client from matrix-python-sdk to nio)

Ah, you were the one working on the SFOS app I was thinking of. Do you have a github repo or something? I'd love to try and help out.

r0kk3rz 2020-01-27 23:39

Re: Matrix - clients
 
Quote:

Originally Posted by Halftux (Post 1564823)
Another way would be to update habour-matrix it is based on QMatrixClient and this got updated to Quotient and the new library also supports E2E encryption.

https://matrix.org/blog/2019/09/20/q...t-g-so-c-2019/

https://github.com/quotient-im/libQuotient
https://github.com/quotient-im/Quaternion

I expect there would be a ton of breaking changes if you were to try and update the library in harbour-matrix. It also looks like they now require a much newer GCC than we currently have in SFOS as well, so you might need to wait until gcc8 is released or do another hack like I did with gcc6

I got tired of constantly trying to keep up with each wave of changes, which is the main reason I stopped working in it in the first place.

If anyone wants help understanding the code base, i'm happy to help

pacman 2020-01-28 11:19

Re: Matrix - clients
 
Quote:

Originally Posted by wolke (Post 1564820)
i would fukken LOVE to have a native matrix client. first person to make a client that goes 'ping' when i get a message with my phone locked gets a prize (riot does not in fact do this on SFOS)

Bluepill does exactly that (and also lights up the LED). You should be able to find (old) discussion of the client elsewhere on this forum. I'm using version 0.1-14 (find it at https://gitlab.com/cy8aer/bluepill/p...pe=tags&page=1, download the armv7hl deployer, unzip it and install the RPM file).

This client isn't feature complete yet, so I fall back to Riot sometimes, but getting notifications on SFOS was a huge step forward. Development seems to be moving forwards, but slowly. I wish that I had the time to contribute myself.

cy8aer, if you're reading this, I really appreciate what you have done so far!

EDIT: I speed-read this thread too quickly, and missed cy8ear's post from yesterday! Sorry! :o

cy8aer 2020-01-28 17:24

Re: Matrix - clients
 
Quote:

Originally Posted by taixzo (Post 1564824)
Ah, you were the one working on the SFOS app I was thinking of. Do you have a github repo or something? I'd love to try and help out.

https://gitlab.com/cy8aer/bluepill

working on nio branch.

wolke 2020-01-28 19:36

Re: Matrix - clients
 
yea, bluepill is hugely feature rich, but it kept giving me repeat messages (and a few other bugs) and i had to stop using it. when its done, i believe it will be the best matrix client anywhere.

EDIT: it also has the best name, which helps

cy8aer 2020-08-10 20:11

Re: Matrix - clients
 
Quote:

Originally Posted by wolke (Post 1564846)
yea, bluepill is hugely feature rich, but it kept giving me repeat messages (and a few other bugs) and i had to stop using it. when its done, i believe it will be the best matrix client anywhere.

EDIT: it also has the best name, which helps

Ok, you said it: release early.

https://gitlab.com/cy8aer/bluepill/-/pipelines

Here you can find the actual state of development. With test-0.0.19 you can log in and see the dashboard with the room list. Crypto included.

Be warned: This does not work together with the PoC. Use a playing machine. Be sure that ~nemo/.config/harbour-bluepill and ~nemo/.local/share/harbour-config is cleared (or moved away).

It is not ready

It will not be ready soon.

rinigus 2020-08-11 10:16

Re: Matrix - clients
 
I wonder if anyone managed to get subscribed rooms listed. I get empty. cy8aer, is it expected? Stdout shows some events, but nothing in gui, but empty Rooms

cy8aer 2020-08-12 18:40

Re: Matrix - clients
 
Quote:

Originally Posted by rinigus (Post 1568709)
I wonder if anyone managed to get subscribed rooms listed. I get empty. cy8aer, is it expected? Stdout shows some events, but nothing in gui, but empty Rooms

The list is full for me. Which version did you try? > 0.0.18? Crypted rooms? Did you restart the client? Did you cleanup ~nemo/.local/share/harbour-bluepill and ~/.cache/harbour-bluepill? Which server - self hosted or matrix.org? When self hosted: another server than matrix-synapse?

rinigus 2020-08-13 07:24

Re: Matrix - clients
 
Quote:

Originally Posted by cy8aer (Post 1568725)
The list is full for me. Which version did you try? > 0.0.18? Crypted rooms? Did you restart the client? Did you cleanup ~nemo/.local/share/harbour-bluepill and ~/.cache/harbour-bluepill? Which server - self hosted or matrix.org? When self hosted: another server than matrix-synapse?

Great to hear it is supposed to list rooms. :)

version: 0.0.19, trying now with .22

crypted rooms: could be some PM rooms, but I don't think so.

client restart: yes, also rebooted phone

cleanup: yes, and done it with the both versions

server: matrix.org

On stdout, I am getting exceptions in, surprise-surprise, client.get_room_list() call at ClientHandler.py(55). Looks like there are some issues with room.gen_avatar_uri) downloads. Exception is
"...ClientPayloadError: Response payload is not completed".

I can paste traceback if needed tonight (in 12h). If you wish, I can do it via opening new issue.

cy8aer 2020-08-13 08:43

Re: Matrix - clients
 
Quote:

Originally Posted by rinigus (Post 1568734)
Great to hear it is supposed to list rooms. :)

version: 0.0.19, trying now with .22

crypted rooms: could be some PM rooms, but I don't think so.

client restart: yes, also rebooted phone

cleanup: yes, and done it with the both versions

server: matrix.org

On stdout, I am getting exceptions in, surprise-surprise, client.get_room_list() call at ClientHandler.py(55). Looks like there are some issues with room.gen_avatar_uri) downloads. Exception is
"...ClientPayloadError: Response payload is not completed".

I can paste traceback if needed tonight (in 12h). If you wish, I can do it via opening new issue.

Try to write something in one of your crypted rooms and then open the client. There is some crazy thing I found out when I built the gui somehow my joined rooms list does not list crypted rooms somehow after first sync. If you then can see the room this would prove my expectation.

cy8aer 2020-08-13 08:45

Re: Matrix - clients
 
... or create a new crypted room and write something into it (for both - writing into a room or creating a new room can be done with a running client. But it only refreshs the list on getting messages by now...).

cy8aer 2020-08-13 08:47

Re: Matrix - clients
 
I am not sure if it is possible to have crypted avatar images. I tried to build up a new crypted room with another user and it worked out of the box - with avatar picture. But crypted pictures are not implemented. I probably need to except the ClientPayload error. Thanks for the error message.

cy8aer 2020-08-13 08:58

Re: Matrix - clients
 
Ok, it would be better if you open an issue with a traceback please. Eventually it would be nice if you put:

doSend("downloadUrl", url)

at line 550 in

/usr/share/harbour-bluepill/python/bluepill/client.py

(just before the o = urlparse(url)) before making the traceback.

rinigus 2020-08-13 10:46

Re: Matrix - clients
 
Quote:

Originally Posted by cy8aer (Post 1568738)
Ok, it would be better if you open an issue with a traceback please. Eventually it would be nice if you put:

doSend("downloadUrl", url)

at line 550 in

/usr/share/harbour-bluepill/python/bluepill/client.py

(just before the o = urlparse(url)) before making the traceback.

Thanks, I will do it tonigh

cy8aer 2020-08-22 10:43

Re: Matrix - clients
 
For all who look at my development build: Please count your rooms. I have a silly problem that on the devices rooms are missing after login.

If rooms are missing please add a note on

https://gitlab.com/cy8aer/bluepill/-/issues/30

Thank you.

cy8aer 2020-08-23 19:22

Re: Matrix - clients
 
Quote:

Originally Posted by cy8aer (Post 1568860)
For all who look at my development build: Please count your rooms. I have a silly problem that on the devices rooms are missing after login.

If rooms are missing please add a note on

https://gitlab.com/cy8aer/bluepill/-/issues/30

Thank you.

Hm found the bug. there are situations where a room does not have events on logon. And then they are filtered. Fix will be uploaded on gitlab: tag test-0.0.30 Edit 31!!


All times are GMT. The time now is 15:38.

vBulletin® Version 3.8.8