Project

General

Profile

Actions

Feature #246

closed

Post by email

Added by Boone Gorges over 14 years ago. Updated over 12 years ago.

Status:
Resolved
Priority name:
High
Assignee:
Category name:
BuddyPress (misc)
Target version:
Start date:
2010-05-17
Due date:
% Done:

0%

Estimated time:
Deployment actions:

Description

This is big on my wishlist. Reply to anything on the site by responding to the notification email: forum posts, activity posts, private messaging, blog comments (though the latter will probably work differently).

I heard rumors that a Reply Via Email plugin for blog comments might become one of the first WP "core plugins". Should look into that and see if I can use the mail handling infrastructure and put the BP stuff on top of it.

Chris, adding you as a watcher in case you want to start poking around at it.


Related issues

Related to CUNY Academic Commons - Feature #498: Create ability to respond to forum posts by emailDuplicateBoone Gorges2010-12-18

Actions
Actions #1

Updated by Boone Gorges about 14 years ago

Some resources: http://codex.wordpress.org/Blog_by_Email

Still no update on the core plugin, though I know it is planned.

Actions #2

Updated by Boone Gorges about 14 years ago

  • Target version set to Future release
Actions #3

Updated by Boone Gorges almost 14 years ago

Ron, do you know the status of the core post-by-email plugin? I had a link to the svn repo at one point but I lost it. That could probably do a lot of the heavy lifting. The hash stuff doesn't seem too hard to write on the BP end.

Actions #4

Updated by Matt Gold almost 14 years ago

  • Priority name changed from Low to High
  • Target version changed from Future release to 1.2

I'm going to up the priority here, because a group that I'm in is seriously considering leaving the Commons because it lacks this feature for group communications, and those concerns are likely shared by other users. I think we should seriously consider putting development time into this in the near future.

Please let me know what you think.

Actions #5

Updated by Boone Gorges almost 14 years ago

If this is tagged 1.2 then 1.2 will be pushed back indefinitely. I don't have a problem making this a top priority, but making it work right could take months.

Actions #6

Updated by Matt Gold almost 14 years ago

  • Target version changed from 1.2 to 1.3
Actions #7

Updated by Matt Gold almost 14 years ago

Is 1.3 okay? I'd just like to keep it away from "Future Release," which has a ring of "some day" to me. We can always punt it to a later version if we need to.

Actions #8

Updated by Boone Gorges almost 14 years ago

Fine by me.

Actions #9

Updated by Ron Rennick almost 14 years ago

Sorry, I posted this in the wrong ticket:

I don't think the post by email core plugin had much traction. The codex page says it needs updating, but that may be because some filters and constants were added in 3.0.

http://codex.wordpress.org/Post_to_your_blog_using_email

Actions #10

Updated by Boone Gorges almost 14 years ago

Ron, I think that codex page is referring to a different feature from the core plugin. I found the svn link btw https://plugins.svn.wordpress.org/post-by-email/branches/alpha/

I'm going to start messing with this in another branch if anyone wants to play along: https://github.com/castiron/cac/tree/post-by-mail

Actions #11

Updated by Boone Gorges almost 14 years ago

D'oh, I just installed the plugin and I'm wrong - it does work like the codex page above describes. We might be able to use the parser, but we'll have to get the mail listener from somewhere else.

Actions #12

Updated by Ron Rennick almost 14 years ago

Interesting problem that will have to be kept in mind when setting up the mail server to pick up the replies: http://openacs.org/forums/message-view?message_id=539009

With google mail you can use addresses like and it lands in the mailbox. If the mail server could be set up to do that, then the reply to address could be a unique hash (something+hash@...) that validated the post being responded to & user making the response. Doing that would virtually eliminate phishing/spoofing of email addresses. Each outbound email would have to be hashed but that wouldn't be too much coding.

Actions #13

Updated by Boone Gorges over 13 years ago

  • Target version changed from 1.3 to Future release
Actions #14

Updated by Matt Gold over 13 years ago

Boone, since we have the Road Map set up, what do you think of assigning tickets like this to milestones that correspond to versions on that road map? I bring this up because "Future release" seems like a kind of hazy purgatory for tickets and ideas that we might or might not get to; having these tickets assigned instead, even provisionally, to future milestones would make them more visible and would help us plan the project. And, of course, we could always bump things up or down as needed.

What do you think?

Actions #15

Updated by Boone Gorges over 13 years ago

If it would make you feel better to do so, that's fine. Otherwise I will just pick through the Future Release tickets at the beginning of each cycle to make sure that the items on the public roadmap are represented in the milestone. It is all the same to me.

Actions #16

Updated by Matt Gold over 13 years ago

  • Target version changed from Future release to 1.4

Thanks. I think this will improve our planning, which will indeed make me feel better ;).

Actions #17

Updated by Raymond Hoh over 13 years ago

I was going to start work on a project similar to this for group forums only, but that project fell through.

Was going to use an approach similar to Ron's that would use an IMAP inbox, which supported address tags where we could extrapolate variables from the email address.

eg. - would grab group ID 3 and reply to forum topic 1.

I think IMAP is the easiest way to go, but if we want to support POP3, a good plugin to reference is Postie

Actions #18

Updated by Boone Gorges over 13 years ago

  • Assignee changed from Boone Gorges to Roberta Brody

Awesome. Ray, this would be a cool project to devote some time to, if it interests you. It's not on our roadmap until 1.4, but this is largely arbitrary.

Actions #19

Updated by Boone Gorges over 13 years ago

  • Assignee changed from Roberta Brody to Raymond Hoh
Actions #20

Updated by Raymond Hoh over 13 years ago

  • Target version changed from 1.4 to 1.3

Moving the milestone up to 1.3 as I have most of the nitty-gritty details done.

Stay tuned! :)

Actions #21

Updated by Matt Gold over 13 years ago

Wow --- awesome!

Actions #22

Updated by Boone Gorges almost 13 years ago

  • Target version changed from 1.3 to 1.4
Actions #23

Updated by Boone Gorges over 12 years ago

As Ray comes back on board, this is going to be one of the first things he tackles.

Ray, I know you have to make some modifications in order to ensure compatibility with BP 1.5. Once you have done so, I think the best way forward will be to do some extensive testing using the cdev environment. Our cdev has been overhauled since you last worked on the project - it's now a separate box, totally identical to the production environment - so it will be ideal for testing things like cron, etc. When the time comes for you to start working on it in the cdev environment, let's talk - I'll have to get you up to speed about the new cdev.

Actions #24

Updated by Matt Gold over 12 years ago

Excellent. Really excited about this.

Actions #25

Updated by Raymond Hoh over 12 years ago

I'm going to spend some time this week to try and get this working under BP 1.5.

Actions #26

Updated by Boone Gorges over 12 years ago

Hi Ray. I have had a chance to look this over in a couple of different environments. Overall, it looks really great. Feels like magic.

I have a couple of questions.

- I've been using a test Gmail account for this purpose. Ideally, we'd use a local account. I've added André as a watcher on this ticket so that he can chime in with some thoughts. André: We need an IMAP inbox that supports "plus addressing", so that the following addresses all go to the same place: , , , etc

- Ray, what do you think about cropping the last line above the pointer "--- Reply ABOVE THIS LINE to add a comment ---". On many email clients, this will be a catch-all for cutting off the "On Thursday, March 31, Boone wrote:". And even on clients where the format is a bit different, it's like that there will at least be a blank line above this line. What do you think? I know that we can accomplish this with a plugin, but I'm thinking that for the vast majority of mail clients, it'll be good enough.

- Ray, can I ask you to go ahead and set it up on cdev so that the team can start to play with it a bit? We can use a dummy Gmail account until we have a more permanent solution. (That'll also give us a bigger sample of email clients.)

Actions #27

Updated by Matt Gold over 12 years ago

Exciting.

Actions #28

Updated by local admin over 12 years ago

André: We need an IMAP inbox that supports "plus addressing", so that the following addresses all go to the same place: , , , etc

For what address? ? For all users?

Actions #29

Updated by Boone Gorges over 12 years ago

For what address? ? For all users?

Not for all users - we just need a single inbox. As for what address: Probably not , which is currently used for support request (we should have an inbox just for this purpose). As for what the address is, I guess I'm hoping you can weigh in with your best judgment. If the current gc.cuny.edu setup supports such a scheme, and if the GC mail folks won't mind that we keep a persistent IMAP connection and receive potentially hundreds of emails a day, then something like would probably be fine. If not, maybe you could give us a sense of how hard it would be to have a single inbox on the commons.gc.cuny.edu domain for this purpose.

Actions #30

Updated by local admin over 12 years ago

maybe you could give us a sense of how hard it would be to have a single inbox on the commons.gc.cuny.edu domain for this purpose.

Does it actually have to go into (and potentially create new) named folders/subfolders or is just delivering to the inbox enough?

Actions #31

Updated by Boone Gorges over 12 years ago

I think just delivering it to the inbox, though we would probably need some sort of cleanup routine to make sure that the inbox doesn't fill up. Ray can probably say more about the necessary IMAP mechanics.

Actions #32

Updated by local admin over 12 years ago

I think just delivering it to the inbox, though we would probably need some sort of cleanup routine to make sure that the inbox doesn't fill up. Ray can probably say more about the necessary IMAP mechanics.

Ok, so in this case it would require a small change to postfix, which would be configured to deliver messages addressed to both, say, and to the mailbox of .

But we would still have to run dovecot on the server to allow IMAP access, and I guess run some anti-spam filter as well.

It's not a light order, but I look forward to learning more about the scheme before making a recommendation on the best path forward.

Actions #33

Updated by Raymond Hoh over 12 years ago

Boone Gorges wrote:

- I've been using a test Gmail account for this purpose. Ideally, we'd use a local account. I've added André as a watcher on this ticket so that he can chime in with some thoughts. André: We need an IMAP inbox that supports "plus addressing", so that the following addresses all go to the same place: , , , etc

As an alternative, I know that CUNY has the cuny.is domain. If we're comfortable with the idea of using cuny.is and Google Apps, perhaps we can put Google Apps Mail on there and let GMail handle IMAP instead?

- Ray, what do you think about cropping the last line above the pointer "--- Reply ABOVE THIS LINE to add a comment ---". On many email clients, this will be a catch-all for cutting off the "On Thursday, March 31, Boone wrote:". And even on clients where the format is a bit different, it's like that there will at least be a blank line above this line. What do you think? I know that we can accomplish this with a plugin, but I'm thinking that for the vast majority of mail clients, it'll be good enough.

In my opinion, I would refrain against cropping the last line; I used Basecamp as a model and they don't do this. (Test on Basecamp and see.) I guess it depends on how we educate the users on CAC.

I do like stripping any trailing blank lines though; I'll test this out and implement it.

- Ray, can I ask you to go ahead and set it up on cdev so that the team can start to play with it a bit? We can use a dummy Gmail account until we have a more permanent solution. (That'll also give us a bigger sample of email clients.)

Do you just want me to add it to the 1.3.x branch or some other branch, Boone?

Actions #34

Updated by local admin over 12 years ago

As an alternative, I know that CUNY has the cuny.is domain. If we're comfortable with the idea of using cuny.is and Google Apps, perhaps we can put Google Apps Mail on there and let GMail handle IMAP instead?

If we decide to go that route we can actually still use @commons.gc.cuny.edu, by changing the MX records for the subdomain. I don't think it's being use for anything else currently.

Do you know, at this juncture, if the creation/routing of IMAP subfolders is needed for this use case, or can we just deliver all the messages to the same mailbox?

Actions #35

Updated by Raymond Hoh over 12 years ago

If we decide to go that route we can actually still use @commons.gc.cuny.edu, by changing the MX records for the subdomain. I don't think it's being use for anything else currently.

Cool! Would there be an issue with migrating existing email accounts on @commons.gc.cuny.edu though (if there are any)?

Do you know, at this juncture, if the creation/routing of IMAP subfolders is needed for this use case, or can we just deliver all the messages to the same mailbox?

If we're talking about implementing IMAP on the existing CAC email server, then we can just deliver all messages to the same mailbox. If we want to leave this to Gmail, then we don't have to do anything. Let me know if I'm not being clear!

In the plugin, I don't do anything with IMAP subfolders, I just check the main inbox folder and delete / expunge the email when done.

Actions #36

Updated by Boone Gorges over 12 years ago

Do you just want me to add it to the 1.3.x branch or some other branch, Boone?

The feature is slated for the 1.4 release (ie the next feature release), so please add it to the master branch.

Actions #37

Updated by Raymond Hoh over 12 years ago

Reply By Email plugin is added to the master branch:
https://github.com/castiron/cac/commit/206454ee90b5bf39cac422606dd0f1e267e0405f

Let's start testing! :)

Boone, do you have a dummy Gmail account to test?

Actions #38

Updated by local admin over 12 years ago

Nice! By the way, I'm running the imap request through the "channels" and will "circle back" about it shortly ...

Actions #39

Updated by Boone Gorges over 12 years ago

By the way, I'm running the imap request through the "channels" and will "circle back" about it shortly ...

Cool, thanks André!

Boone, do you have a dummy Gmail account to test?

I have some laying around, but they're used for other stuff that might throw the system off. Could you set one up? And you should have the creds to shell into cdev - they're on Basecamp. Webroot is /var/www/html/. cdev is already running the master branch (I think) so you should just be able to pull the latest, and use SFTP to do any live debugging. Let us know when you've verified it working on cdev, and I can help to write up a testing procedure. Thanks, Ray!

Actions #40

Updated by Raymond Hoh over 12 years ago

I've activated the plugin on cdev, however the IMAP extension needs to be installed for PHP:
http://www.php.net/manual/en/imap.setup.php

André, can you install this for us?

Actions #41

Updated by local admin over 12 years ago

Installed now.

Actions #42

Updated by Raymond Hoh over 12 years ago

André Pitanga wrote:

Installed now.

That was quick, André! Thanks!


I created a new dummy Gmail account for testing () and tested the plugin and it works!

Proof of email reply:
http://cdev.gc.cuny.edu/members/raytester/activity/

The whole thread:
http://cdev.gc.cuny.edu/members/ray/activity/32475

Actions #43

Updated by Raymond Hoh over 12 years ago

As we're approaching version 1.4 of CAC, it's time to revisit if we want to continue using GMail as the "Reply-To" email address in the BP Reply By Email plugin.

If not, we'll have to look into implementing this locally. André mentions possibly using postfix and Dovecot here.

Actions #44

Updated by Boone Gorges over 12 years ago

Talk about reading my mind - I opened this ticket in a tab to ask the very question that Ray was about to ask.

Ideally we would use a *.gc.cuny.edu address. However, this is not a must-have for rev 1 - it should be easy enough to start off using Gmail, and swap out at any time. André, what are our options?

Actions #45

Updated by Matt Gold over 12 years ago

Hi André,

Our goal is to try to finish up this ticket today, if possible, so if you could let us know your thoughts, we'd appreciate it. Many thanks!

Best,

Matt

Actions #46

Updated by Matt Gold over 12 years ago

  • Severity set to Critical
Actions #47

Updated by Boone Gorges over 12 years ago

OK, I'm going to make the executive decision to use Gmail for the moment. Let's open a new account just for this purpose. How about something like cuny_academic_commons?

Actions #48

Updated by Matt Gold over 12 years ago

Sounds good to me.

Actions #49

Updated by local admin over 12 years ago

André mentions possibly using postfix and Dovecot here.

If it's all the same from the application POV I say go with gmail.

Actions #50

Updated by Raymond Hoh over 12 years ago

Boone Gorges wrote:

OK, I'm going to make the executive decision to use Gmail for the moment. Let's open a new account just for this purpose. How about something like cuny_academic_commons?

I'd probably go with something shorter like .

Actions #51

Updated by Boone Gorges over 12 years ago

  • Status changed from Assigned to Resolved

It's up and live. Long live Ray!

Actions #52

Updated by Matt Gold over 12 years ago

w00t!!!

Actions

Also available in: Atom PDF