thirdroom icon indicating copy to clipboard operation
thirdroom copied to clipboard

Profile interop: Use public/private key/value storage provided by Matrix protocol

Open vintprox opened this issue 3 years ago • 4 comments

We can see such data as "Default Display Name", "Preffered Pronouns", "Bio" in #70. Matrix doesn't have these on protocol level, but they can be arbitrarily added to user's key/value storage without the need for such room as of type org.matrix.msc3815.profile (but it's most needed for storing avatar attachments, see #379).

You can even choose between public and private storage. Public key/value storage may be used for bio, preferred pronouns, and etc. Private - for Third Room preferences synchronized between devices/browsers.

vintprox avatar Sep 30 '22 06:09 vintprox

Yup, agreed that we should not be using custom "profile rooms" for this.

robertlong avatar Oct 13 '22 21:10 robertlong

afaik, Profiles are limited to display name and avatar. What public key/value storage are you talking about?

ajbura avatar Oct 14 '22 13:10 ajbura

Specification seems to be mentioning the ability to publish arbitrary data on user, but I couldn't find any endpoint that does it.

My point is that Thirdroom's implementation can go along with extensible profiles once they are described for implementation:

  • https://github.com/matrix-org/matrix-spec-proposals/pull/1769
  • https://github.com/matrix-org/matrix-spec-proposals/issues/3795

vintprox avatar Oct 14 '22 13:10 vintprox

https://github.com/matrix-org/matrix-spec-proposals/pull/1769 seems to describe extensible profiles with similar approach as of Thirdroom's, and that is publishing them as rooms. I recommend looking into that one and see if it gets finally unified.

vintprox avatar Oct 14 '22 16:10 vintprox