oxen-io / session-pysogs

Python implementation of the Session community server
GNU General Public License v3.0
77 stars 36 forks source link

[Feature request] API extension: Room language #186

Open mdPlusPlus opened 1 year ago

mdPlusPlus commented 1 year ago

Hi, maintainer of sessioncommunities.online here.

We're supposing the following API extension:

On sessioncommunities.online we aim to provide users with additional information about available communities. Right now this additional information consists of language flags that indicate what language is spoken in a specific community.
The goal is to help the user find the right community for them.

At the moment we aquire this information by hand, joining the communities with temporary accounts and relying on online tools to tell us which language we find there. Our current efforts can be seen here.
Ideally operators were able to specify these languages themselves during creation of new communities. That would allow third-party (and first-party, of course) tools to make use of that information programmatically.

There are several possible standards for how to present languages. The most popular ones are probably the ISO 639 variants with ISO_639-3 being the most comprehensive one.
There are other ways of course, using country flags for example. This however isn't ideal, since not every language has a flag that correctly represents it and not every country has a single main language.

As sessioncommunities.online we don't have a clear favorite on what standard to use. It would be great if some discussion about this could take place here, ideally resulting in an addition to the API.

KeeJef commented 1 year ago

Sounds good to me, with this and #187 , How do you envision the operator adding this information to a room, would they specify this when they create the room like the room description? I suppose we could expose UI elements in the Session client to specify this information too.

mdPlusPlus commented 1 year ago

Yes, like all other information available via the API, I imagine this information to be added using the sogs command at creation and being able to be modified later if necessary.