XF 2.2 Activity summary email

1591625655001.png
So you've got people to register on your forum and they've made their initial contribution, but once they've done that, how do you keep those members engaged and coming back to your forum? It's an age-old problem. A user registers, they may participate for a while if you're lucky, and then it's really a toss-up as to whether they will stay and become a semi-permanent fixture of your forum, or you never see them again.

Of all the challenges facing forum owners, this one requires the most creative approaches. There are various existing features that are geared towards keeping your members engaged. They can receive alerts, push notifications or emails when content is posted in threads or forums they watch, or you can manually email members periodically to keep them updated with the latest goings-on at your forum. These approaches aren't always effective as they either require explicit action from the user to designate the kind of content in which they are interested, or they require manual intervention from you to create some sort of newsletter.

There must be a better way, right? Well of course there is, or this would be a really short and slightly pointless post.

Activity summary

1591625655001.png

The "Activity summary" is an email, periodical receipt of which your members can opt into, which will give them an overview of what they have missed since their last visit to your forum.

A look at the configuration...

Firstly, of course you may switch the feature off entirely if you wish. Though we're not quite sure why you'd want to, as it's awesome.

activity_summary_1.png


We then have three values with which we can control the timing and frequency of when emails should be sent. The defaults are reasonable for most cases and are for the most part self explanatory. By default, we stop sending the activity summary email if the user has been inactive for 6 months, users fitting those criteria are probably a lost cause, but you can override the default and continue sending email to these users indefinitely by setting the value to 0 days.

Registered forum members may opt themselves in or out of receiving the email from their Privacy or Preferences pages:

activity_summary_2.png


Although the "Receive news and update emails" can be toggled independently of the new "Receive activity summary email", we only display the former on registration, but if checked then we will opt the user into the activity summary emails too.

Of course the user can unsubscribe at any time.

You don't know the power of the dark side

Dramatic and irrelevant quote aside, the real power of the system comes from how you can configure the contents of the activity summary email.

In fact, the activity summary isn't just a list of threads but is instead built up using content sections that you can finely configure. Out of the box, these sections are set up to fetch the latest content, but there are several additional filters to allow you to narrow down the content returned in the way you see fit.

For example, you could have a section return the most active threads based on reply count, or the most popular threads based on reaction score. This makes for a much more targeted approach than simply grabbing the latest items, and will be particularly useful for large and busy forums where it will be important to only return the best content from a sea of noise.

activity_summary_3.png


From here you can add additional sections, delete existing sections or change the order that sections appear.

Let's look at how you can change the behaviour of "Latest threads" to only show the latest threads from a specific forum.

activity_summary_4_5.png


What we've done now is changed the activity summary so that instead of showing the 5 most recent threads from any forum, instead it will show only 2 of the most recent threads from a specific forum.
1591630313858.png

We can see those changes reflected in the email, but you can also add additional sections, even if you have previously used that type before. So we can click "Add activity summary section" and add yet another "Latest threads" section.

activity_summary_6.png


This time we'll configure it to pull from the HYS forum. And then we can even add another which can pull from the "General" forum.
1591632960445.png

Extensibility

Initially, we will be providing an "activity summary definition" for "Latest threads" and "Latest posts", but as you would expect from XenForo, the system is built with extensibility in mind, and there is plenty of scope for third party developers to build definitions for their own add-on content, allowing forum owners to expand the reach of their activity summaries. For our part, we will be extending support for other first-party XenForo content types as soon as possible.
 
Another option is to run the cron entry more frequently.

This is very interesting.

Does that mean that in the above scenario (badge of 100 and 5000 inactive users within the last 6 months) that if I go within ACP to the cronjobs and click on "run now" i.e. every 5 minutes, that it will send then every 5 minutes the emails only to those 100 user, who are part of the 5000-inactive-user-group but did not get yet an email on the same day?

so noone of that 5000-group gets the same email twice?
 
that are great news, because thanks to this, an indirect "throtteling" is possible!

Make a badge of i.e. 500 and run the cron jobs every 10 minutes or whater time frame the webhoster does allow to send those 500 emails out and you have a newsletter about newest postings/threads with a throtteling feature.

Cool.... :love:

Now please enhance this feature or even better all mass mailing features of XF in future XF versions and offer a throtteling setup in ACP with different fields so every admin can put the numbers in he needs individually for his individual server setup/limitations.

😚
 
The Communication > Activity summary page has a "Send test email" button.


It says so in the description. It's a daily limit. Every day, once a day, the activity summary will be sent to that many users. They will be sent one after the other until that many have been sent (or there is no one else left to send it to).

Any that should have been sent that day which weren't would be sent the following day(s).
Hi,

thanks. I got the meaning of the limit now.

But one thing which lies a bit in the dark for me is the way of sending.
If I do a tail -f /var/log/mail.log I can cleary follow the test-emails I send to myself from /admin.php?activity-summary/. (SMTP)

But how for example are 1000 mails being sent? With which frequency?

I couldn't see happening much when the cron ran. The number of total emails in my server's config-panel didn't change much.

So I'm not really sure if anything has been sent?
 
The emails would be sent and logged in the same way as any other mail sent from your forum so theoretically you should be able to see them shortly after the cron runs.

They are just sent one after the other until they're all sent.

If none were sent or very few were sent then you may simply have much fewer inactive users than you think.

We have a number of measures in place to throttle the number of emails being sent. As well as stopping sending the emails to users who haven't visited for over 6 months (by default) for sites upgrading from XF 2.1 we will also only send emails out to people who have visited and then been inactive since you upgraded to XF 2.2.
 
for sites upgrading from XF 2.1 we will also only send emails out to people who have visited and then been inactive since you upgraded to XF 2.2.

That is good to know. How can I change this after the upgrade from XF2.1 to XF2.2? Could I change this in phpmyadmin?

My goal is to send the email at least the first time to every inactive user, no matter whether he logged in after the upgrade or not.

If the user was inactive last week, he probably is also inactive this week. So the treshhold of beeing forced to wait until he logs in by himself after the upgrade before he is able to receive these emails does not make sense to me and is from a marketing/user relationship management perspective not a good idea. We loose users with this unnecessary.
 
/admin.php?users/batch-update
2nd page - Enable|Disable activity summary email

Just to avoid any mistakes:

If I set this "Enable activity summary email" there to "on", will this then activate it also for those users to "on", who deactivated site mailings by admin in the past?
 
I only found out about this feature after discovering that my forum had begun sending unsolicited 'Activity Summary Emails' to masses of members, which under UK anti-spam and GDPR rules is often best avoided. Thankfully now disabled, but not before our email domain was banned for spamming by a few blocklists. Surprised they enabled this by default in the 2.2 release.
 
I only found out about this feature after discovering that my forum had begun sending unsolicited 'Activity Summary Emails' to masses of members, which under UK anti-spam and GDPR rules is often best avoided.

They only go to members who have ticked the box to receive admin email. That is something they opt in to when registering and is very easy to opt out of, link to unsubscribe is in the email which means they do not violate any ant-spam or GDPR laws.

See - box is unticked by default, so the activity emails can not be defined as unsolicited. (or even solicited by stealth with a pre-ticked box)

Screenshot 2020-10-28 at 09.55.35.png
 
Yep, indeed.

After upgrade we enable the feature for anyone visiting the forum who previously had the above option checked. It's perfectly reasonable to send the email out to people who have previously indicated it is fine for you to contact them with "news and updates" which is essentially what the activity summary is.

It is then possible for the user to opt-out of it specifically if they decide they don't want it under Account > Preferences.

1603879200322.webp


The user can also one-click unsubscribe from that type of email directly from the email itself.

Rather than disabling the feature entirely, you can use "Batch update users" feature to opt-out the people who were initially opted-in.

During registration we do also opt them in to "Receive activity summary email" if they click the "Receive news and updates from us by email" option.
 
Slightly OT but is relevant as a demo of how it is done when there is no such regulation:

At Dulles airport, I joined the airport WIFI using my phone. After giving name (and luckily) fake email I hit subscribe to free wifi. Purely out of some strange kind of curiousity I scrolled way down the page after submitting, and there right at the bottom was tiny preticked box accepting marketing.

So in may ways I am grateful for GDPR and the kind of repsonsible compliance we see with this feature .
 
Last edited:
Quick question on this. What would happen if we set inactivity period to 0 days? I'm trying to see if we can create a digest like feature that does a daily email summary not necessarily based on user activity. Does 0 signify ignore activity and send?
 
Quick question on this. What would happen if we set inactivity period to 0 days? I'm trying to see if we can create a digest like feature that does a daily email summary not necessarily based on user activity. Does 0 signify ignore activity and send?
I dont know the answer, but I'd be concerned also about your uplink's limit on how many emails you can send per hour and per day. It may be 100 or 200 per hour or day, for most companies. I know if I sent all 9000 of my members email every day, at the same minute, I'd probably be suspended on the first day. :( Even with the limit of 100 or 150 per batch setting, it would overlap to the next day and the back log from day 1 would quickly overtake the ability catch up. (the rest of them roll over to the next day, etc) It only runs this cron once every 24 hours, to send out the max #.

Then again, there are external email providers that have higher limits. Just something to be aware of, in case it applies.
 
That is actually a good question for the staff--does everyone get the same email at the same time, or is it staggered, based on a person's activity? And is each email batch unique, based on the current forum activity at the time the email is generated? Just curious, so we can best know how to go forward with this feature.
 
To add:
There is no single email to send. The email is unique to each user as the content varies based on when their last activity was and what permissions they have.

The emails are also sent continuously rather than on a schedule. In other words today it might send an email to 10 users who have now been inactive for X days. Tomorrow it might send an email to another 15 users who have now been active for X days and so on.

So the only feasible way of testing the content is doing the test email. But I'm not sure why that wouldn't be sufficient.
 
I dont know the answer, but I'd be concerned also about your uplink's limit on how many emails you can send per hour and per day. It may be 100 or 200 per hour or day, for most companies. I know if I sent all 9000 of my members email every day, at the same minute, I'd probably be suspended on the first day. :( Even with the limit of 100 or 150 per batch setting, it would overlap to the next day and the back log from day 1 would quickly overtake the ability catch up. (the rest of them roll over to the next day, etc) It only runs this cron once every 24 hours, to send out the max #.

Then again, there are external email providers that have higher limits. Just something to be aware of, in case it applies.

That's not a problem for us. Amazon SES is quite generous and there's no chance we will come close to the limits we've negotiated. I'd still like to know about the option of putting in 0 days for inactivity and prefer not to experiment on our users.
 
Top Bottom