No internet connection
  1. Home
  2. Ideas

Bulk inviting people, via email address list

By KajMagnus @KajMagnus2018-10-05 17:40:52.371Z2018-10-06 03:22:25.130Z

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)

someones_email@example.com,@username,"Full Name","Brief description about someone, can incl commas."
someone_else@example.com,@another_username,"Another Name"
a_3rd_person_only_email_no_name@example.com

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
someone@example.com
someone_else@examle.com
...

Here, addToGroups makes the users listed below (i.e. someone@example.com and someone_else@examle.com) get added to the groups @group_name and @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?

  • 7 replies
  1. Progress
    with doing this idea
  2. @KajMagnus marked this topic as Planned 2018-10-07 08:28:29.102Z.
  3. @KajMagnus marked this topic as Started 2018-10-07 08:28:30.418Z.
  4. @KajMagnus marked this topic as Done 2018-10-22 14:02:09.245Z.
  5. Done, except for the fancy features with addToGroups and startAtPath and username, full name etc.

    For now, just a list of emails, one per line, in a <textarea>.

    1. James / @Huxy Now today I started with impementing addToGroups: @group_name e.g. 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.

      1. H
        @Huxy
          2019-08-12 12:47:59.948Zreplies toKajMagnus:

          Can't wait to play around with it! I'll probably do some tests on a new instance just to make sure I understand the work-flow correctly and to prevent any issues with my current messages.

          1. KajMagnus @KajMagnus2019-08-27 05:19:22.270Z2019-08-27 05:25:59.905Zreplies toHuxy:

            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
            a-students-email-addr@example.com
            another-email-addr@example.com
            more-addresses@example.com
            ...
            

            And they'll all be added to the students_2019_autumn group, 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 ..." )

            1. H
              @Huxy
                2019-09-24 08:11:35.402Zreplies toKajMagnus:

                Hi @KajMagnus

                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.

                James

                1. KajMagnus @KajMagnus2019-09-26 13:37:51.582Zreplies toHuxy:

                  Hi @Huxy, You mean something different than [clicking Invite People and filling the text area with email addresses and prefixing with addToGroups: @group_name]?

                  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.

                  1. H
                    @Huxy
                      2019-10-01 06:15:45.959Zreplies toKajMagnus:

                      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!