Bulk inviting people, via email address list
It'd be good if there was a way to upload a file with email addresses, and invite say 50 people at once — rather than clicking and typing 50 times to invite them one at a time.
What about this comma-separated-file format: (namely each user on a separate line, starting with its email address, then optional username, full name and about-user text)
firstname.lastname@example.org,@username,"Full Name","Brief description about someone, can incl commas." email@example.com,@another_username,"Another Name" firstname.lastname@example.org
The only required field is the email address. And now initially, maybe that's all that'll be supported — i.e. uploading a list of email addresses. A comma-separated-values (CSV) file is fairly nice (is it?), because then you can edit it in e.g. Excel or LibreOffice Calc, and then save the list as a CSV file, and upload it.
After all invites have been sent (which might take one or a few minutes?), the one who uploaded the invites (maybe other staff too?) could get a direct message about this, plus any email sending errors.
Later, when there're custom groups, you'll be able to specify to which groups the people should be added, when they join. This could be done by adding command lines: each line that doesn't start with an email address, is a command line. Look:
addToGroups,@group_name,@other_group_name startAtPath,/page/users/will/start/on/once/they've/accepted/the/invite email@example.com firstname.lastname@example.org ...
addToGroups makes the users listed below (i.e.
email@example.com) get added to the groups
@other_group_name. They will use the group settings, as their default fallback settings (maybe you'd like to configure them to subscribe to new topics, in a certain category, for example). — And you can create a welcome page for them, at
startAtPath, which will be the first thing they see, once joined.
If you add another
addToGroups,@third_group further down in the file, the people below that line, will be added to
@third_group instead (and only that group).
(Implementation details: Probably the browser will parse the CSV file, convert it to JSON (inside the browser), show a preview of what will be uploaded + any parsing errors, and, when you click "Yes invite these people", the browser will do a JSON API request to the server, which will then start sending invite emails Maybe initially there'll be a max 40 people limit, per file.)
What do you think?
- 10 replies
- Progresswith doing this idea
- @KajMagnus marked this topic as Planned 2018-10-07 08:28:29.102Z.
- @KajMagnus marked this topic as Started 2018-10-07 08:28:30.418Z.
- @KajMagnus marked this topic as Done 2018-10-22 14:02:09.245Z.
- KajMagnus @KajMagnus2019-08-11 16:24:14.618Z
James / @Huxy Now today I started with impementing
addToGroups: @Students_2019. Wasn't that much work, I might be done with this already now :- ) Need to write auto tests too ... code review ... Will probably be included in the next version, some time next week.
Hi James @Huxy — invite-to-groups now implemented: (only to a single group, right now)
if you upgrade to the latest version (see https://www.talkyard.io/-163#post-21 in your case), then, you can create a group, say
students_2019_autumn, and then send invite emails, like this:
addToGroups: @students_2019_autumn firstname.lastname@example.org email@example.com firstname.lastname@example.org ...
And they'll all be added to the
students_2019_autumngroup, once they join via the Invite link.
some tests on a new instance
(You can create a test site here: https://www.talkyard.io/choose-demo-forum — click "Create my own test forum ..." )
Semester is getting under way and I've been setting up the groups and categories. I was wondering if there is any way to provide them a signing up URL that auto adds them to groups. It would save me having to manually add their emails to the invite option.
Hi @Huxy, You mean something different than [clicking Invite People and filling the text area with email addresses and prefixing with
Instead, you'd generate an URL, and send them an email outside Talkyard, with that URL?
I like the idea. Maybe there could be a button
Generate invite URL, which pops up a dialog where you can type [usernames of groups one get auto-added to] when signing up via that link? Plus a start page to show once they've joined?
There'd be a possibility that "the wrong people" get to know about the invite link, and joins via the link. And, I suppose, in many cases, that's not a problem. Or one could enable manual approval of signups.
Yeah, I found inviting 100+ people a bit frustrating as I had to scrape their email addresses from our corporate contact list. It would be much easier to generate a URL as per your suggestion. The "wrong people" aren't an issue for me as I only allow sign-ups from my University domain, but as you correctly state, you could always manually approve.
I also think it might be nice if the user section was more flexible i.e. allow you to sort by custom columns or multi-select users. This would allow you to quickly and easily approve multiple new users.
Another not important issue, was the way groups are handled. I found it a little confusing at first that they seem to treated as "users" with profile pages and a password box etc. Not a big deal, but just threw me a little.!
And one more thing I noted: it would be great to shuffle the category orders around by drag and drop instead of having to rely on editing each category and manually setting it's "sort value".
Thanks again for all the work you've done with this!