Spostare i messaggi della chat in un nuovo canale li ha confusi tutti

Ho spostato 28 messaggi da un canale a uno nuovo e sono andati tutti fuori ordine:

Hmmm. Sono solo io, o questi sembrano fuori ordine ora? :thinking:

Ho dato un'altra occhiata ai post fuori ordine in https://meta.discourse.org/chat/channel/147/chat?messageId=2644, e sembra che abbiano tutti lo stesso timestamp.

6 Mi Piace

Grazie per aver segnalato questo, ho provato a tenerne conto con la funzionalità ma penso di essere stato un po’ troppo fortunato con i test che ho fatto :sweat_smile: Quindi, in effetti, impostiamo tutti i timestamp allo stesso valore qui:

Il problema è che non vogliamo intercalare i messaggi spostati tra i messaggi esistenti del canale, e diventa sempre più difficile quanto più messaggi sposti.

Una domanda prima di approfondire troppo: riesci a ricordare e identificare quali messaggi sono fuori posto? Ce ne sono solo un paio o sono completamente fuori ordine? Penso che ciò che potrebbe aver causato la discrepanza sia che, quando recuperiamo i messaggi per un canale, lo facciamo per ordine di ID (che ordiniamo in ordine DESC e poi invertiamo nella maggior parte dei casi):

Mentre nel message mover ordino per created_at per mantenere l’ordine, il che potrebbe causare alcune piccole discrepanze:

Ho alcune idee su come potremmo affrontare questo problema (forse cambiare il message mover per ordinare per ID o cambiare il controller per ordinare per created_at sarebbe sufficiente, preferendo quest’ultimo perché penso che avrebbe più senso), ma vorrei sapere quanto è disordinato l’ordine, se è possibile dirlo.

5 Mi Piace

I un-deleted them from the original channel after I noticed they were jumbled in the new one. I should be able to quote them in order here: :crossed_fingers:

Original order
Originally sent in The Chat Feedback topic
JammyDodger

I'm looking for ways we can capture the essence of the new chat flow as a demonstration of how chat can be the seeds of bigger discussion

Has anyone got any ideas on how we can do that from where we are now with the chat-testing here on Meta?

The feedback points are great, and I think they will be calved off into their own proper topics shortly too, but I was hoping for something that would work as a great exemplar for anyone just joining the @chat-testers. Something that people can just look at and go 'Aaaah. Yes, I wasn't sure at first, but I see how can chat can be the pre-cursor to in depth discussion'

I may be asking too much :slightly_smiling_face:

RGJ

TBH I don't see how chat can be the pre-cursor to in depth discussion :thinking:

But that might be because I'm old

JammyDodger

So we're looking for an example that will help change @RGJ's mind too :slightly_smiling_face:

Moin

I like the example here. But that example does not fit here. Maybe the topic could be about a feature you miss just now. Something you wouldn't start a topic because for example you don’t have time to check whether there is a similar feature request or you think no one else will be interested into that.

JammyDodger

@Moin, your search skills are always a blessing :slightly_smiling_face:

I was looking for one about seeds and trees, but couldn't find it on here

But, yes. Some kind of relaxed/friendly/informal chat in which an idea forms through the course of the easy back-and-forth, and then inspires a proper discussion topic

oshyan

This is 100% my interest and use-case for chat. But can you clarify exactly what you mean by an example of this. Are you interested in, say, samples of a chat (regardless of whether it happened in Discourse chat) that could/should/would have (obviously) led to deeper discussion and/or did lead to deeper discussion but in an arguably less ideal medium for it (chat vs. forum)? If that's the case I may need a little to find some, but I absolutely have good examples from my productivity community. If you're looking for examples in Discourse chat, specifically, that's going to be harder to find. But I absolutely think this is a big value of chat in Discourse, and depending on the community, it will play a bigger or smaller role.

Jonathan_Poyer

I think showcase a discussion around a new feature is actually a nice way to demo it at least during the first moment of that idea. For some people, this spark of discussion is during the time of development or about to begin. There are always more things to discuss about and referring to a topic (or multiple) makes sense.

oshyan

As a perhaps more conceptual example of a situation where chat can (and should) quickly turn into a topic, even mid-way through a discussion, this is something that often happens in software dev management communities I'm part of, as well as my productivity community:

  • New person joins chat and asks a seemingly simple or innocuous question
  • Responses from highly informed and/or impassioned regulars quickly grow to 10s of lines of text, paragraph breaks start happening, and that chat channel becomes saturated only with discussion on this one question (topic)
  • Everything becomes difficult to respond to as each "message" includes lots of points and ideas and no select-to-quote/reply feature makes parsing and responding to each thing difficult
  • These conversations are also often valuable debates that would quickly disappear in the subsequent flow of a chat, so even retroactively moving them to a Topic is potentially very valuable
JammyDodger

I think I was initially looking for something we could provide as an example topic/chat here on Meta to demonstrate to people new to Discourse Chat of how it could gel nicely with pre-existing ideas of the 'long-form paragraph' view of Discourse

So even something that we created to neatly demonstrate the principle

Though it sounds like you have lots of examples that would make a great discussion topic :slightly_smiling_face:

I think anything that can help people easily visualise where in their forum structure chat can slot into would be useful. I am open to all ideas :+1:

agungor

I feel that this conversation is becoming such an example per se. :smiley:

Jonathan_Poyer

Feels like something that would become a thread on other platforms would either need to turn into another chat or a split off topic. But at the same time, topic feel also more like long term discussion vs one-off as here?

jimkleiber

Maybe one way is to quote the initial chat message that started the idea into a topic: How can chat seed topic discussions?

This can give visibility to people who aren't in the chat, especially if the topic starts with a question

but ironically I'm answering here lol

Hmm, I just tried to quote my replies here into that same topic but I think I only have the option to quote into a new topic, not an existing one

JammyDodger

I was just mulling that over. :slightly_smiling_face: I was working out if I could make a topic with each person's chat as a reply somehow, as there were no suitable chat channels to slide them to. But now you've made it I can see that it could have its own chat channel, and we could move this conversation there :+1:

jimkleiber

Ah yes, almost like creating the topic that will create the new chat channel

and then the topic can be filled with just quotes from the chat, pulling the highlights

Jumbled
oshyan

This is 100% my interest and use-case for chat. But can you clarify exactly what you mean by an example of this. Are you interested in, say, samples of a chat (regardless of whether it happened in Discourse chat) that could/should/would have (obviously) led to deeper discussion and/or did lead to deeper discussion but in an arguably less ideal medium for it (chat vs. forum)? If that's the case I may need a little to find some, but I absolutely have good examples from my productivity community. If you're looking for examples in Discourse chat, specifically, that's going to be harder to find. But I absolutely think this is a big value of chat in Discourse, and depending on the community, it will play a bigger or smaller role.

Jonathan_Poyer

I think showcase a discussion around a new feature is actually a nice way to demo it at least during the first moment of that idea. For some people, this spark of discussion is during the time of development or about to begin. There are always more things to discuss about and referring to a topic (or multiple) makes sense.

oshyan

As a perhaps more conceptual example of a situation where chat can (and should) quickly turn into a topic, even mid-way through a discussion, this is something that often happens in software dev management communities I'm part of, as well as my productivity community:

  • New person joins chat and asks a seemingly simple or innocuous question
  • Responses from highly informed and/or impassioned regulars quickly grow to 10s of lines of text, paragraph breaks start happening, and that chat channel becomes saturated only with discussion on this one question (topic)
  • Everything becomes difficult to respond to as each "message" includes lots of points and ideas and no select-to-quote/reply feature makes parsing and responding to each thing difficult
  • These conversations are also often valuable debates that would quickly disappear in the subsequent flow of a chat, so even retroactively moving them to a Topic is potentially very valuable
JammyDodger

I think I was initially looking for something we could provide as an example topic/chat here on Meta to demonstrate to people new to Discourse Chat of how it could gel nicely with pre-existing ideas of the 'long-form paragraph' view of Discourse

So even something that we created to neatly demonstrate the principle

I think anything that can help people easily visualise where in their forum structure chat can slot into would be useful. I am open to all ideas :+1:

I'm looking for ways we can capture the essence of the new chat flow as a demonstration of how chat can be the seeds of bigger discussion

Though it sounds like you have lots of examples that would make a great discussion topic :slightly_smiling_face:

Has anyone got any ideas on how we can do that from where we are now with the chat-testing here on Meta?

RGJ

TBH I don't see how chat can be the pre-cursor to in depth discussion :thinking:

agungor

I feel that this conversation is becoming such an example per se. :smiley:

Jonathan_Poyer

Feels like something that would become a thread on other platforms would either need to turn into another chat or a split off topic. But at the same time, topic feel also more like long term discussion vs one-off as here?

JammyDodger

The feedback points are great, and I think they will be calved off into their own proper topics shortly too, but I was hoping for something that would work as a great exemplar for anyone just joining the @chat-testers. Something that people can just look at and go 'Aaaah. Yes, I wasn't sure at first, but I see how can chat can be the pre-cursor to in depth discussion'

jimkleiber

Maybe one way is to quote the initial chat message that started the idea into a topic: How can chat seed topic discussions?

This can give visibility to people who aren't in the chat, especially if the topic starts with a question

JammyDodger

I think, at least. :slightly_smiling_face: I'll double-check my thinking before I do anything

I may be asking too much :slightly_smiling_face:

jimkleiber

but ironically I'm answering here lol

RGJ

But that might be because I'm old

JammyDodger

I was just mulling that over. :slightly_smiling_face: I was working out if I could make a topic with each person's chat as a reply somehow, as there were no suitable chat channels to slide them to. But now you've made it I can see that it could have its own chat channel, and we could move this conversation there :+1:

jimkleiber

Ah yes, almost like creating the topic that will create the new chat channel

JammyDodger

So we're looking for an example that will help change @RGJ's mind too :slightly_smiling_face:

jimkleiber

and then the topic can be filled with just quotes from the chat, pulling the highlights

Moin

I like the example here. But that example does not fit here. Maybe the topic could be about a feature you miss just now. Something you wouldn't start a topic because for example you don’t have time to check whether there is a similar feature request or you think no one else will be interested into that.

JammyDodger

@Moin, your search skills are always a blessing :slightly_smiling_face:

I was looking for one about seeds and trees, but couldn't find it on here

But, yes. Some kind of relaxed/friendly/informal chat in which an idea forms through the course of the easy back-and-forth, and then inspires a proper discussion topic

2 Mi Piace

Mi chiedo quando sia preferibile spostare i messaggi piuttosto che citarli. Forse dipende se esiste già un argomento o meno? Non sono sicuro. In quali scenari si preferirebbe incoraggiare le persone verso una delle seguenti opzioni?

  1. Citare messaggi di chat in un argomento esistente
  2. Spostare messaggi di chat in un argomento esistente
  3. Citare messaggi di chat in un nuovo argomento
  4. Spostare messaggi di chat in un nuovo argomento

Dato che le stringhe di messaggi di chat sono, ehm, più “chiacchierone” degli argomenti, ho la sensazione che potremmo voler incoraggiare la citazione più dello spostamento, in generale.

Ci sono casi che la gente ha osservato o ha in mente in cui pensate, “no, citare non sarebbe una buona idea qui. è decisamente necessario spostarli invece”?

2 Mi Piace

Se si cita solo la discussione può continuare in due posti.

@Moin stai suggerendo che spostare i messaggi sarebbe preferibile quando in realtà si vuole evitarlo?

Grazie per averlo fatto, è completamente scombinato! Dovrò fare dei test locali su set di messaggi più grandi. Penso che almeno questo sarà necessario:

Tuttavia, sono generalmente a disagio nell’ordinare per ID a causa di strane incongruenze, penso che ordinare i messaggi per created_at sarebbe generalmente meglio per i canali. @j.jaffeux o @mcwumbly cosa ne pensate? Se decidiamo di farlo, il message mover potrebbe dover distanziare artificialmente i valori di created_at di 10 ms ciascuno o giù di lì per un ordinamento coerente.

Penso che in generale, se sono totalmente irrilevanti per il canale corrente, sarebbe meglio spostarli in un canale più appropriato. Lo abbiamo usato molte volte in precedenza internamente quando usavamo Mattermost. Ad esempio, un gruppo di risposte a incidenti nel canale general che dovrebbe essere spostato nel canale incident per una migliore tenuta dei registri. Oppure, chiacchiere oziose in un canale che è meglio che siano nel canale random.

Non penso che ci sia alcun valore in questi casi di citazione e lasciando indietro vecchi residui, e come dice Moin, le cose possono quindi creare confusione, dove la discussione continua in due posti diversi.

Tieni presente che queste due opzioni attualmente non esistono. Abbiamo rimosso “Sposta in argomento” perché nell’implementazione iniziale creava un post per ogni messaggio di chat e inoltre non eliminava i messaggi originali nel canale. Se in futuro vogliamo renderlo di nuovo disponibile, dovrà:

  • a) citare gruppi di messaggi insieme (diciamo 100 per post) utilizzando la funzione di citazione della chat e
  • b) eliminare gli originali nel canale per evitare duplicazioni.
5 Mi Piace

Mi asterrò dal commentare l’implementazione per l’ordinamento dei post e lascerò che @j.jaffeux commenti questo aspetto.

Ah, sì. Non stavo chiedendo di spostare i messaggi di chat all’interno della chat, ma posso vedere come possa essere utile e non ha il problema di cercare di convertire la forma breve in forma lunga (o viceversa) “nel post”.

Ha senso. Mi piace la forma generale di citazione come una sorta di “trascrizione” in questo modo perché penso che probabilmente verrà letta in quel modo comunque. In passato, quando ho usato la funzione di trascrizione di Slack, mi sono spesso ritrovato a racchiuderla anche in [details], e a riassumere le cose nel corpo principale del post.

Un altro pensiero che ho avuto in quella direzione potrebbe essere quello di avere una funzione più elaborata di “espandi contesto”, in modo da poter citare un singolo messaggio, ma poi caricare messaggi aggiuntivi inline su richiesta per visualizzare più contesto dalla chat senza lasciare l’argomento.

Sono scettico sulla necessità o utilità di questa parte quando si fa riferimento a discussioni attraverso il confine tra corsia lenta e corsia veloce.

4 Mi Piace

Succederebbe solo se scegliessi “Sposta nella discussione”, perché mantenere le cose nel canale se la tua intenzione era spostarle? Abbiamo già avuto alcune discussioni interne al riguardo. Certo, una normale citazione di messaggi in una discussione non cancellerebbe nulla.

Una curiosità per te, la classe che genera le citazioni si chiama in realtà ChatTranscriptService :slight_smile:

Questo è interessante, in realtà abbiamo qualcosa di simile con le nostre citazioni di discussione (probabilmente l’hai già visto). Probabilmente sarebbe utile ottenere un po’ più di contesto senza dover visitare effettivamente il canale.

3 Mi Piace

Direi che il caso d’uso per lo spostamento è:

  • Abbiamo un canale dedicato alla discussione su “Balene”
  • Un gruppo di persone inizia ad avere una discussione approfondita su “Pinguini” perché si sono dimenticati di cliccare “#pinguino” e le cose si sono scaldate
  • Un moderatore interviene e :foot: sposta la discussione sui pinguini nel canale dei pinguini.

Suppongo che la cosa fondamentale qui sia il riordinamento.

Direi che “fudge created_at” è l’unica soluzione sensata qui perché vuoi che tutto venga spostato in un unico blocco? Inoltre, tecnicamente viene creato nel momento in cui viene spostato.

5 Mi Piace

Sì, mi sto chiedendo se sia necessario, o se sia la citazione/trascrizione la cosa su cui concentrarsi per farla funzionare davvero bene.

3 Mi Piace

Sì, lo farei al 100% se il nostro normale percorso dei messaggi GET per un canale fosse ordinato per created_at, è quello che voglio risolvere, mi stavo solo chiedendo se Joffrey avesse qualche conoscenza storica al riguardo. In caso contrario, cambierò entrambe le cose contemporaneamente.

2 Mi Piace

Sì, sono al 100% con Sam e con te :grin: Spostare tutto in una volta e dargli il created_at del momento dello spostamento è l’unico approccio sensato secondo me. Altrimenti si apre un gigantesco vaso di Pandora… come faccio a sapere dove trovarlo? ricevere notifiche non lette per cose create prima dell’ultima lettura? no no no

4 Mi Piace

Bello, modificherò lo strumento di spostamento in modo che i messaggi spostati siano nel :sparkles: futuro :sparkles: con un piccolo incremento distanziato, e ordinerò i messaggi della chat per created_at invece che per ID nel controller generale :+1:

3 Mi Piace

Ho appena unito questo per affrontare il problema:\n\nhttps://github.com/discourse/discourse-chat/pull/895\n\nPer ora non ho fatto nulla per spaziare artificialmente created_at nel futuro, quindi vediamo prima come va.

4 Mi Piace

Questo argomento è stato chiuso automaticamente dopo 11 giorni. Non sono più consentite nuove risposte.