Discourse Narrative Bot Beta Feedback

:thumbsup: I love the idea of a bot to help people figure out how the forum works.

:cry: I also loathe the loss of a personal welcome email for new users. Studies in professional community management have consistently shown that a “personal” email – even a short one! – when someone joins a community ranks consistently only behind a personal phone call when it comes to the best tactic in converting that new person into an active contributor, content creator, or (best!) collaborator in the community.

(Most recent source I could find via a quick Google search, is on page 33 of the “State of Community Management 2016” report from The Community Roundtable.)

I’d strongly recommend a scenario in which the personal welcome PM can coexist with the bot. (If that does in fact exist and I’ve missed it, my apologies!)


I hear you, but before discobot did the welcome, the welcome PM was system generated anyway – it just came from a personal account. I’m not sure of the efficacy of that.

I’ve created a bit of a hybrid solution. I’ve customised the initial message that comes from the bot to incorporate the personal stuff.

And then I use canned replies to send a personal message that comes from me.

In CoPs that’s feasible. In large support communities it’s not, but those people aren’t there to be converted anyway – they just want the answer to a question.


Looks great! Feel free to change the avatar and name fully to match your brand; the default name and avatar are merely abstract placeholders. I have seen some use “welcomebot” for example.


Is there any way of getting stats on % of users that interact with discobot? (Aside from no. that get the certified badge?)

1 Like

I usually just visit the bot’s profile and browse its private message tab.


I think this is what you want


Very nice program. I just finished the 2 tutorials on KC, which were very engaging! Thanks @codinghorror and the Discourse team for this great new bot!

It makes me wanna become a disco bot…get it? Okay I’ll stop :joy:




Here are some thoughts on the advanced user track:

  • The bot says “There are lots of ways to customize your experience, such as selecting a dark or light theme.” But whether or not a user can select a theme or which themes are available is a site setting and can be turned off. Wouldn’t it make more sense to mention something that is available regardless of site settings? For example: “… such as how many and what kind of emails you receive”?
  • The second exercise is “Go ahead and delete any of your posts above by using the delete action. Don’t delete the first post, though!” However, at that point, the user usually has exactly one post apart from the OP so it’s a bit strange to say “any of your posts above”
  • After the delete task, the bot creates another post on my behalf, deletes it, and asks me to undelete it? Why not just ask to undelete the post I have deleted in the previous task? If the idea is that all tasks should be doable regardless of the other ones, I would suggest that the bot only creates a deleted post if the user did not complete the delete-task.
  • In discourse_narrative_bot.advanced_user_narrative.edit.instructions the bot says “Everyone makes mistakes. But don’t worry, you can always edit your posts to fix them!” Wouldn’t this be a nice opportunity to play with the fact that it’s a bot by letting him say “Humans make mistakes…”?

Update: I also noticed in the advanced track that after the bot says

In the meantime, I’ll stay out of your way.

It nevertheless still sends the timeout message. Not sure if it would have sent it if I had not replied to the previous message, but the interaction is nevertheless a bit strange:


Is there any particular reason why the bot doesn’t mention the advanced user track at the end of the new user track?

Another thing: the setting discourse narrative bot welcome post delaydoes not seem to work. I have it set to 30 seconds but when I just created a new user, the bot’s message was there from the start and the screen turned black immediately as before.


I suspect this is because the admin track is still being tested and is not considered quite ready for prime time. The big priority is the new user track.

I just tested this by setting it to 20000 seconds, and the delay seems to be working on my site. Discobot’s message is not showing up. It’s true that it’s a bit weird for the screen to turn black immediately if there is no notification there to look at. :slight_smile:

However, I have another welcome message arriving via SSO so would prefer the screen darkening feature to not go away. Could suppressing it be added as an admin option for those who have the delay set and don’t need it? Or wait to darken the screen when the discobot message is sent?

Also, the max delay appears to be 20,000 seconds or about 5 hours. I was hoping to try delaying it by a day or a few days to use it to remind people to come back to discourse. Could this be done?

And finally, if there is a delay, then it will be sent out by email since the user is probably not online. So some noobs will be confused and will try to click the ... in their email client. I had this happen a few times already. I don’t know if there is a solution for this.

(For my site, I’d like to see the discobot message go out immediately and be highlighted with the screen darkening, and then send out my SSO-sourced welcome message a few days later. This is something I’ll have to try to figure out on my own since it involves updating some custom code that @AdamCapriola wrote for me back in the day)

Hm, strange. Which version are you on? Is it still the plugin or already the latest version merged into core? I’m using the latter and just tried again, this time with 60 seconds but the bot’s message is there immediately after signup. The only thing that comes to mind as I write this is that perhaps the timer already starts counting when the first email is sent to the new user (and not upon first login).

Are you saying that the screen turns black even though the bot did not yet send the welcome message? I’d consider that a bug.

That’s interesting. Is that another version of what I’ve been asking about here:

If it’s similar (except you use SSO instead of webhooks) it would be great if you could briefly describe your setup/workflow in that topic.

yes, I am on the latest version merged into core.

Yes that is what I’m saying. But I am happy it is still happening because of my custom setup that sends another automated welcome message via SSO.

It’s not at all similar to that topic, which seems to be about sending messages to an old school listserv/mailing list. What I’m describing here is wordpress functionality that triggers discourse PMs via the discourse API. They get sent when new users complete the wordpress signup process.

Maybe the fade-to-black occurs when the user receives the first message, so your custom message could simply have triggered this?

1 Like

Oh man, I realize I pasted the wrong link. Sorry about that. I meant this one:

1 Like

The delay starts counting when he user is created so that might have confused you.

If you do not want the screen darkening feature to stay why do we need an option to suppress it? I’m a little confused by the use case and the request here. :thought_balloon:

@tobiaseigen May I get the reproduction steps for this? I just tried locally and I do not get a black overlay. The black overlay only shows when there is an unread PM and the user has not read any notifications.


If the user is created the moment the new user submits the signup form and not when the “Activate account” button is pressed, then I’d say that is too early to start the timer as it defeats the purpose of being able to set the amount of time the user can browse the site before the bot tries to get their attention.

In the case of invited users, when does the timer start? If the user is already created when the invite link is created, things are even worse for invited users.


Ahh OK. I just re-read your request for the delay feature again and realized I got it wrong. It should have been after the first login all along. I’ll have a look but I suspect it might be tricky since we don’t have a user login event trigger yet.


I’m just trying to preempt you guys suppressing it upon signup if the discobot message is delayed. :slight_smile:

I don’t really understand how the functionality works but if this is how it is intended to work, then all is well. On my site I use SSO to send a welcome message, which triggers a notification. So it’s good for the black overlay to happen even if discobot’s message is time delayed. But if there were no welcome message and discobot’s message is time delayed and there is no black overlay, then the functionality is working properly as far as I see it.

The black overlay is basically a Discourse core feature which triggers as long as there is an unread PM and the user hasn’t read the first notification.