Commit Graph

49 Commits

Author SHA1 Message Date
172ffb7b61 Increase number of checks if the email was sent in automation
[MAILPOET-6175]
2024-08-12 16:11:19 +02:00
8a0bd75cb1 Limit scheduled tasks fetching by automation run createdAt
This is a performance optimization to avoid fetching too many scheduled task rows.
Run is always created before the scheduled task which is created in send action step.
[MAILPOET-6155]
2024-08-07 16:01:48 +02:00
e5ab65f28e Fix send action checkSendingStatus to support multiple emails per subscriber.
It is possible that one email (e.g., purchase in category) is sent multiple times
to the same subscriber.

AutomationEmailScheduler::getScheduledTaskSubscriber was selecting the task based on subscriber and newsletter.
In the case of multiple emails sent to one subscriber, the method failed to pick ScheduledTaskSubsrciberEntity because
the query was fetching multiple results, but getOneOrNullResult expects only one result.

This commit fixes it by adding additional filtering by $runId to get the ScheduledTaskSubsriberEntity associated
with the correct run.

I did the filtering in PHP because an alternative would be using LIKE %% in the query. The meta column is text.
[MAILPOET-6155]
2024-08-07 16:01:48 +02:00
fdc0468c64 Execute send email step progress when email is sent
[MAILPOET-4977]
2024-05-06 12:39:00 +02:00
36089cc2f4 Save automation run info to scheduled task meta field
[MAILPOET-4977]
2024-05-06 12:39:00 +02:00
123b0d65e2 Do not complete send email action run immediately, schedule a check instead
[MAILPOET-4977]
2024-05-06 12:39:00 +02:00
5aa6ffaed7 Make more triggers transactional
[MAILPOET-6015]
2024-04-29 11:08:53 +02:00
a17fc5e963 Identify all triggers with "woocommerce:" key prefix as WooCommerce triggers
[MAILPOET-5725]
2024-02-14 14:36:22 +01:00
d5d20d5219 Send transactional emails with order created/completed/cancelled triggers
[MAILPOET-5725]
2024-02-14 14:36:22 +01:00
8b40553d0b Do not check subscriber against segment when sending transactional email
[MAILPOET-5720]
2024-02-14 14:36:22 +01:00
f71935f137 Add translator comments to automation steps and subjects
[MAILPOET-5729]
2023-11-24 08:10:35 +02:00
f55c4f7755 Make next step ID nullable (ability to save multiple edges without next steps)
[MAILPOET-5586]
2023-10-23 17:09:16 +02:00
6ef3435a80 Remove segment as a required subject
If a segment is given, the subscriber needs to be subscribed to it, otherwise
the subscriber only needs to be globally subscribed

[MAILPOET-5514]
2023-10-03 19:14:30 +02:00
eeb4d64e8b Pass step run controller to automation actions
[MAILPOET-5569]
2023-09-20 02:36:40 -07:00
0cc02b38a5 Move abandoned cart into WooCommerce vendor space
[MAILPOET-4934]
2023-05-15 08:19:19 +02:00
06a704da75 Use Populator to add group and event to available options
[MAILPOET-4934]
2023-05-15 08:19:19 +02:00
0a57ca6a4d Use productIds in AbandonedCartPayload
[MAILPOET-4934]
2023-05-15 08:19:19 +02:00
d113ec9fdb Remove ProductsSubject
[MAILPOET-4934]
2023-05-15 08:19:19 +02:00
50827706fb Add product_ids for abandoned cart to email
[MAILPOET-4934]
2023-05-15 08:19:19 +02:00
f91453b102 Set woocommerce and abandoned cart options
[MAILPOET-4934]
2023-05-15 08:19:19 +02:00
69f21814e3 Rename "transactional" email type to "automation_transactional"
[MAILPOET-5258]
2023-04-24 09:54:08 +03:00
430c9b72f7 Exclude emails of wrong type
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
0a8bcaf484 Do not allow to send emails to bounced subscribers
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
343b91a980 Remove type specification 2023-04-17 13:59:39 +02:00
46f888a30b Let transactional emails pass
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
ac65c138ee Set transactional email type when email is transactional
[MAILPOET-4999]
2023-04-17 13:59:39 +02:00
93cfffe295 Allow sending an email multiple times
[MAILPOET-4966]
2023-03-01 16:14:38 +01:00
03d7306611 Add check from automation flows with welcome emails
This commit improves the check that a user has set a welcome email campaign (a task in product discovery task list)
by checking also for automation flows that are triggered by new subscriber or user and contain
send email action.
[MAILPOET-4827]
2023-01-23 16:48:52 +01:00
588f3a9feb Use "reply to" from settings only when they are different than "from" settings
[MAILPOET-4757]
2022-11-07 11:17:36 +02:00
2f78c99381 Fix reply-to panel empty value handling
[MAILPOET-4757]
2022-11-07 11:17:36 +02:00
e2ede3e568 use withError to build error message
[MAILPOET-4700]
2022-10-26 12:51:16 +02:00
79c60ff7a1 Make step args that need to be set required
[MAILPOET-4659]
2022-10-13 11:58:11 +02:00
7425c73d9e Add error messages to action validation, use step validation args
[MAILPOET-4659]
2022-10-13 11:58:11 +02:00
a2948efc46 Rename namespace with defs for 3rd-party integrations to "Integration"
[MAILPOET-4659]
2022-10-13 11:58:11 +02:00
b657a1eee0 Account for email_id being 0
[MAILPOET-4520]
2022-10-11 11:14:58 +02:00
3c651c940b Add convenience by-class getter for payloads (& use it)
[MAILPOET-4629]
2022-09-23 12:42:03 +03:00
fe3d719a13 Use step run args in existing actions
[MAILPOET-4629]
2022-09-23 12:42:03 +03:00
00e8c4f3e5 Make steps specify required/provided subject keys
[MAILPOET-4629]
2022-09-23 12:42:03 +03:00
6e6d0e725a Set automation newsletters always as active
Their scheduling and validity will handled by the workflow engine so this should be OK.
We can also consider syncing the state based on the workflow state, somehow.

[PREMIUM-194]
2022-09-08 09:20:20 +02:00
24849afb7a Make name a property of Step.args instead of Step
[MAILPOET-4445]
2022-08-17 16:01:45 +02:00
3886dd83d1 Unify naming of sender name and email address
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
697e7eba9a Add Google Analytics setting panel to automation email sidbar
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
922beb790f Add reply-to setting panel to automation email sidebar
[MAILPOET-4446]
2022-08-15 16:05:12 +02:00
d1fddb85f7 Add before step save hook per step key to simplify usage
[MAILPOET-4515]
2022-08-08 13:23:57 +02:00
1f6ce667e5 Add schema definition for automation steps
[MAILPOET-4515]
2022-08-08 13:23:57 +02:00
4389d3ca5f Sync automation email step settings to newsletter entity
[MAILPOET-4515]
2022-08-08 13:23:57 +02:00
4aa323b612 Extract data-carrying classes to dedicated namespace
We need a separation of "Step" as an interface vs. "Step" as a serializable data structure.

[MAILPOET-4515]
2022-08-08 13:23:57 +02:00
da43849c30 Use more descriptive method name
[MAILPOET-4465]
2022-07-12 13:36:58 +02:00
d447702941 Convert welcome email action to a generic send email action
[MAILPOET-4465]
2022-07-12 13:36:58 +02:00