2017-04-25 182 views
0

我想在註冊後(這是沒有問題的)觸發郵件發送給用戶,然後恰好在註冊日期後一週,然後在註冊日期後一個月。所以我想知道我該怎麼做?Laravel延遲電子郵件觸發

我認爲這些可能不會在Cron任務下完成,因爲任務並非真正重複發生,而是僅觸發兩次。

我是否應該使用App->Console->Kernel.php來設置when()函數或類似的計劃?最好的方法是什麼?

+0

表中可能有許多註冊用戶,因此您可以在一天內使用cronjob。有可能某人今天完成了一個星期,另一個人將在今天或明天完成一個月。 –

回答

0

這是基於意見,因此不是特別適合於計算器格式,但這裏是我會怎麼做:

對用戶記錄標誌爲1weekemail1monthemail其默認爲false。

每晚運行兩個計劃任務,獲得符合時間標準但未設置標誌的用戶列表。

使用該結果集發送電子郵件,然後將適當的標誌設置爲true。

0

創建scheduler function爲先檢查你的用戶表中的每個註冊的用戶,它需要一個用戶條目,其中last activityregistration time是存在的,檢查的時間間隔和發送電子郵件,如果時間間隔條件滿足,並把這個功能在schedule像每天或每小時。