• Extensions
  • FriendsOfFlarum Byōbu, well integrated, advanced private discussions

Pollux Another example: While I was experimenting with Byobu recently, I managed to make a private discussion public by simply leaving as the last participant. At that point I had thought about giving each participant the possibility to withdraw from a private discussion, including the last participant.

I decided to refactor the whole logic of making private discussions public. That will no longer be possible. Discussions that have or had recipients (participant users or groups) will remain private (is_private) and when everyone "left" the discussion will be soft deleted.

Hope that gives you more peace?

    luceos Discussions that have or had recipients (participant users or groups) will remain private (is_private) and when everyone "left" the discussion will be soft deleted.

    Hope that gives you more peace?

    Great, that's exactly what I intended to do myself.

    One more thing: If you use a quote from a public discussion inside a private discussion, content from the private discussion will be exposed in the public discussion via the "xy replied to this" feature. This shouldn't happen. Neither should the content be exposed nor should the bare fact be exposed that there is a private discussion going on.

      Pollux One more thing: If you use a quote from a public discussion inside a private discussion, content from the private discussion will be exposed in the public discussion via the "xy replied to this" feature. This shouldn't happen. Neither should the content be exposed nor should the bare fact be exposed that there is a private discussion going on.

      Oh wow! First time I hear of this!

      Edit; it seems logic exists that could take care of this, I'll see what can be done about that.

      From user point of view I have only one QOL complain.

      If you're starting private conversation with a specific user (via link trough his profile), step with modal which asks to add more users should be skipped.

      Pollux these are all great points, never was aware of all that.

        hrvoje_hr If you're starting private conversation with a specific user (via link trough his profile), step with modal which asks to add more users should be skipped.

        I noticed that as well and have fixed this already 🙋‍♂️

        I think you covered all the most important things.

        Another features (not high priority):

        • Separate notification (like letter next to the bell)
        • Create separate view to not confuse users with public discussion (something like inbox?)
        • Chat like features (can be used on public discussions as well!)
          • Show who is online / currently watching on this topic
          • Display "Username X is typing..." message which help to make discussions much more dynamic (when people see something like that will usually wait for new message instead of just closing forum tab after sent respond and wait for e-mail... then opening forum again after few mins).

        Inbox design ideas (bring from https://invisioncommunity.com/ ):

        (censored as recording real private message inbox)

          Would be great if the search to add users used the display name and not just username. The rendered name does show correctly, but only when you use search using the username. In my case the username is not known to others, since I am making use of the display name feature with nickname extension. It makes it difficult to add a user as I need to view their profile (url) to figure out their username.

          Thanks for the extension!!

            ctml it would be up to the Nickname changer extension to make users searchable by that value. I think it can be done by overriding the FulltextGambit gambit for the users. Right now the Nickname extension only changes the value for render, but does not provide a way for Flarum to search by display name.

            Byobu just uses the Flarum user search endpoint of the API, which by default supports search by start of username only.

              10 days later

              Is there a way to

              1. Remove Private Discussions from the main forum "feed"?
              2. If you have a new message in a private discussion, the "Private Discussion" label on the LHS menu is bolded and shows you the unread message count? e.g. Private Discussions (3)

              Another option could be to allow a tag that only allows private discussions, and remove the other Private Discussions link from the LHS menu?

              Edit: Maybe I'm just not used to it coming from other forums, but it feels weird to have them embedded with other threads. Maybe I would like it after getting used to it more? Can someone who has been using this at scale comment with their thoughts?

                cmwetherell Remove Private Discussions from the main forum "feed"?

                Go for Admin panel -> Extensions -> FoF Byobu settings and set some fixed tag for all discussions under:
                Specify the tag that all private discussions must use

                Then go for Admin panel -> Tags
                And edit your chosen one tag and tick box Hide from All Discussions

                cmwetherell Maybe I'm just not used to it coming from other forums, but it feels weird to have them embedded with other threads. Maybe I would like it after getting used to it more?

                You are not the only one - This idea is misleading and most of the users are not sure if discussions which they use is Public or private.

                All of this is related to early Flarum build which doesn't have private messaging system at all. This extension was created a long time ago to give us that ability, but uses core flarum options as it was the easiest way to go (reuse a lot of funcions) which also causing a lot of problems...

                As far as I understand @luceos currently trying to rewrite this extension for next, modern version ready for Beta 14 (based on luceos and luceos posts)

                I know it's hard question and I don't want to rush anyone, but there is any rough estimation when we can expect Beta 14 compatible release? I'm trying to schedule my forum upgrade and Byōbu is main blocker for me right now. I need to make decision about potential wait or maybe move to @Kyrne shout if rewrite current extension will take months and Should will be ready earlier.

                  cmwetherell Remove Private Discussions from the main forum "feed"?

                  This will be a toggle for users to decide in the rewrite.

                  cmwetherell If you have a new message in a private discussion, the "Private Discussion" label on the LHS menu is bolded and shows you the unread message count? e.g. Private Discussions (3)

                  I hope to be able to do that 😉 It's one of my current irritations as well.

                  Wadera I know it's hard question and I don't want to rush anyone, but there is any rough estimation when we can expect Beta 14 compatible release?

                  I'm currently taking a few days off of doing code. My hopes are to tag this rewrite in the coming 2 or 3 weeks.

                  Thank you for doing that. Flarum really need well maintained private message system.

                  I made great progress on the refactoring.

                  • Private discussions now always are private, once all recipients leave discussions are soft deleted.
                  • Now shows Private Discussions in left hand navigation and a counter for the number of unread (not really precise with updates yet though)
                  • Toggle for user to decide whether private discussions should be in the native index. Default off.
                  • Tags are no longer needed.
                  • Instead of demanding to set more than one recipient before typing, this is now demanded when trying to submit (similar to tags enforce settings the minimum tags) @hrvoje_hr
                  • In addition a ton of work on getting back to (much) cleaner code and shifting responsibility over permissions/access and saving to the database back to single classes.

                  I still need to look at:

                  Pollux One more thing: If you use a quote from a public discussion inside a private discussion, content from the private discussion will be exposed in the public discussion via the "xy replied to this" feature. This shouldn't happen. Neither should the content be exposed nor should the bare fact be exposed that there is a private discussion going on.

                  Wadera I'd like to point out that I went back to my initial ideas of what this extension should do. As such having a separate view, typing indicator etc is not (yet) part of the scope of this extension. I think, personally, that those features should be added to Flarum as a whole (except the view thing). I am sorry to disappoint, however I think it's more valuable to have an extensions that remains a reliable asset in the ecosystem doing what the majority needs while guaranteeing security and (rather) swift updates, than trying to bloat it with everything anyone needs.

                    Thank you for update! Fully understand your decision, and to be hones - I've just give this ideas just little hope to get them implemented (as mentioned not high priority), but it's still kind of disappointing. Maybe someone else will feel inspired enough to get fingers into code and do some push request for next version? 😉

                    On meantime - I will check again how Shout will behave on Beta 14. I really like an idea of full encryption, but problem with "dry private key initialisation" preventing to find and sent messages to people who didn't login yet and missing e-mail notifications about new messages are huge pushbacks.

                    But... slowly, step by step we are going into right direction with Flarum as ecosystem.

                    luceos

                    What you write sounds very good. If I might add one more idea...

                    When I start a private discussion, I often refer to content in public discussions. To do this, I move the mouse over a user name in a public discussion, click on the three dots and then "Send xy a message". Then the modal for entering a post opens and I start the private discussion.

                    Unfortunately I cannot use the reply or quote function in this situation, because when I try I am asked whether I want to leave the page (without the drafts extension) or (with activated drafts extension) my private discussion is - without confirmation - replaced by an empty reply in the public discussion.

                    It would be nice if I could simply quote from a public discussion inside a private discussion without having to open a second browser tab/window. I think it is safe to assume that what I am suggesting is the most likely reason for someone to quote or reply in this situation.

                    The same applies, by the way, when I move between discussions to pick up quotes from another discussion, so the problem probably arises from the Mentions extension.

                      Pollux isn't this a general shortcoming of Flarum right now? I don't see how fixing this inside an extension helps; I'd rather see a global solution to that problem..

                        Pollux One more thing: If you use a quote from a public discussion inside a private discussion, content from the private discussion will be exposed in the public discussion via the "xy replied to this" feature. This shouldn't happen. Neither should the content be exposed nor should the bare fact be exposed that there is a private discussion going on.

                        I just checked this no longer happens. The entry of someone replying inside a public discussion with content from a private discussion is no longer rendered. The cause was most likely to be found in a rather open PostPolicy..

                          luceos

                          Yes, that's what I mentioned in my last sentence.

                          luceos The entry of someone replying inside a public discussion with content from a private discussion is no longer rendered.

                          Actually it was the other way round: Someone writing in a private discussion with a quote from a public discussion. In this case the post in the private discussion is referenced (partially quoted) in the public discussion via a "xy replied to this" entry.