Automated messages


(Hosein Naseri) #1

Is there a way or a plugin for discourse to be able to send automatic, time based, messages to users?
for example in sign-up, we send a welcome message,
the first day, we tell users how cool is our forum,
the second day, we tell users how to add a profile picture,
etc…


(Allen - Watchman Monitoring) #2

I think it’s come up before, and the thought was “No, this wasn’t desired.”

If it’s still not, then it’d be easy enough to replicate with a new user webhook to some other mailing list manager.


(Hosein Naseri) #3

No this is not what I’m looking for. I don’t want to send out newsletter. Right now discourse sends a welcome message upon sign up for every user. I want to send some other predefined messages automatically, x days after user signs up.


(Christoph) #4

You don’t have to call it a newsletter, but there are mailing list managers or CRM applications that allow you to do what you want (and probably better than discourse would ever be able to do it). Since these are mostly used for marketing purposes, you need to think (and search) in terms of marketing, sales funnel, marketing campaigns etc. but technically it’s exactly what you want.

I don’t know, though, whether or how it is possible to set up an automatic workflow at user sign-up. Would also be curious to learn about existing setups and experiences.

In fact, it looks like there isn’t any new user webhook yet:

UPDATE: Okay, I guess the above info is obsolete:


(Hosein Naseri) #5

yes using these applications you said, it might be possible to do something like what I want. However, I want to use native discourse messages system. Not only because its way better than just sending emails, but also because I have integrated discourse into my application and in the application, I want to notify user if there is new message.


(Allen - Watchman Monitoring) #6

Here are some relevant posts, I’m sure there are more, and maybe more relevant posts as well…

My thoughts on the matter is that getting the UI to allow this is no small feat, even if it was on the priority list.

The API & Webhooks are enough to allow the automation of messages like this. I don’t think it would be too hard to setup a webhook tell Zapier (or your app, etc) there’s a new person, and have Zapier automatically create a PM from you to the new user after X days.

You’ll be able to tailor it to your liking far sooner than waiting for someone to build in a UI for arbitrary timed messages.


(Rafael dos Santos Silva) #7

You will have to write a plugin for this. If you have a budget, post a spec and the budget on #marketplace.


(Kim Miller) #8

+1 Ever find this capability? We want to place members expiring in the next month into a group and then send PMs to those in the group reminding them to renew. So an automated PM to anyone in a given group.


(Keith John Hutchison) #9

I imagine this could be addressed by using cron and the api.


(Stephen) #10

If you’re using any kind of subscription product or IdM I would try to do such things there.


(Kim Miller) #11

So not as a plugin? A cron job requires cron server i guess.

We’re not. Rather trying to create something simple, more intrinsic to Discourse, fewer pieces.


(Stephen) #12

How are memberships paid and added to groups?


(Kim Miller) #13
  • Small membership of 200.
  • Members use Paypal, Zelle, paper check, etc.
  • Intend to create a simple listing of all members the treasurer can click a button next to the name to add 365 days to a membership.
  • Plugin or cron job sees membership expire date is > today and moves them to the paid group (which gives rights so they can see all Discourse content)
  • Once that dates is < today + 30 we want to send a weekly reminder to renew as described above.

Would this basic functionality be best done a plugin with the model extended to hold member expire dates and tasks that fire to check for things every hour or so?


(Keith John Hutchison) #14

Cron is a standard tool on any linux server. If you’re self hosting Discourse you’ll have access to cron. If you have access to any linux server you’ll have access to cron.