SolidOS / chat-pane

Solid-compatible chat discussion applet for solid-panes framework
MIT License
10 stars 4 forks source link

Allow "Reply" to create sub-threads #4

Open timbl opened 6 years ago

timbl commented 6 years ago

Desktop: A menu at the Right of the message allows, instead of just deleting the message,

The latter creates a new indented message input field under the original message.
When the new message is inserted, it is indented a bit to the right When the new thread is first added, a "Reply to thread" button is added to do the same thing more easily

Also allow a Hide Thread button somewhere. Grey Triangle at left?

RDF model: a link between the two messages, stored in the chat file, or in both chat files if they are in different dated chat files. Ontology to be decided. SIOC? Schema.org?

Model: How Telegram does this. Also look at Reddit and hacker news...

Creating new threads should be an option the creator of the chat can tun off, but default on.

You should be able to open the first message of a thread in the browser and see just the thread below it.

timbl commented 1 year ago

In Matrix, to which we are moving from Gitter, a thread is based on a message in the mainline, and each message the thread has a pointer back to the original root message of the thread. A SIOC property which seems to maybe be appropriate. However the SIOC concept of thread is to have the thread as a container of messages.

"""

Class: sioc:Thread

Thread - A container for a series of threaded discussion Posts or Items.

sub-class-of: sioc:Container


Class: sioc:Thread Thread - A container for a series of threaded discussion Posts or Items.

sub-class-of: sioc:Container

But maybe the term sioc:reply_of would be the one for the link back to the thread root

Property: sioc:reply_of

reply of - Links to an Item or Post which this Item or Post is a reply to.

Inverse: | sioc:has_reply -- | -- ObjectProperty sioc:related_to sioc:Item sioc:Item
Property: sioc:reply_of reply of - Links to an Item or Post which this Item or Post is a reply to. Inverse: [sioc:has_reply](http://rdfs.org/sioc/spec/#term_has_reply) OWL Type: ObjectProperty sub-property-of: [sioc:related_to](http://rdfs.org/sioc/spec/#term_related_to) Domain: [sioc:Item](http://rdfs.org/sioc/spec/#term_Item) Range: [sioc:Item](http://rdfs.org/sioc/spec/#term_Item)
timbl commented 1 year ago

Testing issues

Future stuff carry forward

timbl commented 1 year ago

An open question is how to represent in RDF that a message is what in IRC is a /me message which displays like [timbl looks around], and which Matrix calls a m.emote

TallTed commented 1 year ago

It is perhaps worth nothing that IRC display varies with clients. My client (Snak.app on macOS) displays the /me messages as

hh:mm:ss    * timbl | looks around

vs a chat message that looks like

hh:mm:ss    <timbl> | An open question...

Also, that IRC has allowed users to emote for decades. Matrix's "innovation" is just to prefix it with m.

timbl commented 1 year ago

See solid-ui PR https://github.com/SolidOS/solid-ui/pull/531 ... still testing