Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Email sending planner #2346

Open
rabiibrahimi opened this issue Jun 16, 2022 · 23 comments
Open

Email sending planner #2346

rabiibrahimi opened this issue Jun 16, 2022 · 23 comments

Comments

@rabiibrahimi
Copy link
Contributor

Is your feature request related to a problem? Please describe.
Sometimes we work at late in evening or during weekends and we send emails and it is proper to send emails immediately. in the advanced pack on workflow sendEmail action it allows you to either send email immediately or later on and you provide when to send the email. i was hoping if this feature could be added so when we compose email we can choose to send immediately (should be default option) or later and we can specific when to send the email.

Describe the solution you'd like
I would like to have an option when composing the email to choose either to send immediately or later on. this has been mentioned on https://github.com/espocrm/espocrm/issues/718

Describe alternatives you've considered
Now i just have to put all emails on hold and keep them in draft until right time to send them during working days/hours.

Additional context
Screenshot 2022-06-16 at 18 46 22

@rabiibrahimi rabiibrahimi changed the title Email sending planing Email sending planner Jun 16, 2022
@rabiibrahimi
Copy link
Contributor Author

@yurikuzn what do you think of this ?

@yurikuzn
Copy link
Contributor

I have too much work. Didn't think.

@rabiibrahimi
Copy link
Contributor Author

ok thanks would just consider this for future feature.

Many thanks again for your all work and support. we really appreciate your work

@eymen-elkum
Copy link
Contributor

This can be done without coding if you have the advanced pack.

Add a new date field to email entity named for ex: "Send At"
Add a scheduled workflow that change the status from Draft to sent for emails that status = Draft & "Send At" before now

@rabiibrahimi
Copy link
Contributor Author

Hi eymen,

i know it could be done. i am suggesting to have this when composing emails normal. Hence this is a good feature that allow people to schedule when their emails are sent sometimes you work on weekend and you want your email to be sent first thing on Monday morning this kind of feature is very useful for such situation. a lot CRM are implementing this including salesforce, Zoho etc

@eymen-elkum
Copy link
Contributor

Yes, you are right...

If @yurikuzn is okay we can contribute for this function ...

@yurikuzn
Copy link
Contributor

yurikuzn commented Jun 21, 2022

Maybe. I'd suggest to have an extension. Such new features require a lot of thinking before being implemented. I'm so loaded with work for now that I can't even check this thread. Sorry. Every new feature added stays forever, and the burden of maintaining and supporting it is on me and our small team. The application became big, but our team is still not that big.

@yurikuzn
Copy link
Contributor

yurikuzn commented Jun 21, 2022

I recommend having a dropdown menu item (next to Send, Save Draft, Close), that will show a modal prompting to define a time interval and Scheduled button. After clicking the button the model closes, the compose window closes, a message notification 'Scheduled' is shown.

The email should have a status 'Draft' (to not to incorporate a new status). A new date-time sendAt field defines when to send. A new scheduled job SendScheduledEmails processes sending (status == 'Draft' && sendAt <= now).

@arkadiyasuratov
Copy link
Contributor

What do you think on having a single official extension "community-edition"? We could put there new features and have looser rules on accepting pull requests. It could also serve as a place to discuss new features and this repo's issue tracker would be primarily for submitting bugs. Once stable some of the features could later be merged to the core for all.

I'm just spitballing here of course, but is it something that you would get behind?

@yurikuzn
Copy link
Contributor

Not sure. Need to discuss with my colleagues first.

@yurikuzn
Copy link
Contributor

yurikuzn commented Jun 21, 2022

This will add an extra burden for us to maintain upgrades for this version. In reality many people who purchased anything from us expect that we will be providing free support for all issues like upgrades, sever configuration. It's a nigntmare.

@eymen-elkum
Copy link
Contributor

eymen-elkum commented Jun 21, 2022

I am planning to have an extension that hold all features like this, what do you suggest its name to be?
Will be open source on GitHub

@yurikuzn
Copy link
Contributor

yurikuzn commented Jun 21, 2022

Anything except having the word 'Espo' in its name :) I meant not like "Espo PRO".

@arkadiyasuratov
Copy link
Contributor

This will add an extra burden for us to maintain upgrades for this version. In reality many people who purchased anything from us expect that we will be providing free support for all issues like upgrades, sever configuration. It's a nigntmare.

I meant more of a hands-off approach, but having any such repo under this org could create a different expectations, so I get that.

Another idea is to create a separate org, an official marketplace or just a simple "awesome" list "awesome-espocrm" where all community extensions and other stuff will be listed, so that newcomers will see that there's a thriving community, so when a feature cannot be added to core there are other places than forum to seek help.

My intentions is for you for having a bit less work with maintenance and for users a chance to get a feature they're looking for.

I like @eymen-elkum idea, so please let me know when it's ready, I'd like to contribute if possible. Thanks.

@yurikuzn
Copy link
Contributor

We planned to create a marketplace, but couldn't find resources to do that yet. Does anybody know a good marketplace software that supports a multi-vendor type?

@arkadiyasuratov
Copy link
Contributor

I'd consider Sylius with Marketplace Plugin. Maybe it something that could work for you.

@eymen-elkum
Copy link
Contributor

We planned to create a marketplace, but couldn't find resources to do that yet. Does anybody know a good marketplace software that supports a multi-vendor type?

I was about to notify about it but I stopped because you just said that you are fully loaded with tasks, I liked the store of suitcrm very much, it will be a very good place to offer 3rd party solutions.

https://store.suitecrm.com/

@yurikuzn
Copy link
Contributor

I liked the store of suitcrm

They developed their store in-house I believe.

@hturkoz
Copy link
Contributor

hturkoz commented Jun 21, 2022

Hi very nice idea, https://www.sugaroutfitters.com/ was developped by a developper who contribuate to sugarcrm (forget what extension).. and it's a win :)

@yurikuzn
Copy link
Contributor

yurikuzn commented Jun 21, 2022

Yep, I remember as I contributed to Sugar a bit back in the day as well. Funny, that I contributed recurring meetings to Sugar, but Espo still lacks this feature.

@arkadiyasuratov
Copy link
Contributor

Funny, that I contributed recurring meetings to Sugar, but Espo still lacks this feature.

As the saying goes "the shoemaker's children go barefoot"

@rabiibrahimi
Copy link
Contributor Author

Yep, I remember as I contributed to Sugar a bit back in the day as well. Funny, that I contributed recurring meetings to Sugar, but Espo still lacks this feature.

is that means we should expect that feature sometimes in the future 👀

@yurikuzn
Copy link
Contributor

yurikuzn commented Feb 7, 2024

The solution with Workflows (proposed by Eymen) should work fine.

  1. For Email entity type, create a custom field To Send At. Add this field to the Side Panel Fields layout.
  2. Create a List Report that will return emails where To Send At is in past and the status is Draft.
  3. Create a Workflow of Scheduled type, select the created report.
  4. Add an Execute Formula Script action with code ext\email\send(id);.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants