agoalofalife / postman
Schedule a task for sending e-mail
Installs: 62
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 0
Open Issues: 0
Language:JavaScript
Requires
- php: >=7.1.0
Requires (Dev)
- fzaninotto/faker: ^1.6
- mockery/mockery: ^0.9.9
- orchestra/testbench: ~3.5
- phpunit/phpunit: ~6.0
- tightenco/mailthief: dev-master
README
Note Required PHP version >= 7.1
Obviously, you must have configured the database and Mail
What is it?
This package is for Laravel. Using the interface you can send the emails on schedule.
It's simple! You are creating a letter and sending it at just the right time!
You intrigued?
Read on!
Install
Installed via composer.
composer require agoalofalife/postman
Before you install the package, it is important to define your language.
In file config/app.php
'locale' => 'en',
Note Out of the box
en
andru
.
if if your version is below laravel 5.5. insert service provider :
... agoalofalife\postman\SheduleEmailServiceProvider::class
Next, you're executing the command:
php artisan postman:install
Now you can insert the template where you want.
It could be your administrative panel or what else.
... <body> @include('postman::app') ...
now you can see your interface!
And last.. You need to work cron.
App\Console\Kernel
if (config('postman.switcher')) { $schedule->command(ParseCommand::class)->everyMinute(); }
Custom Mode
Each letter has its own algorithm sending. Example :
- Send all as BCC
- Send all as CC For this there are routines that implement the interface
agoalofalife\postman\Contract\Mode::class
You must implement all three methods:
- getName()
- getDescription()
- postEmail()
Of the first two all clear from the title.
postEmail()
within the logic of sending.
If something is not clear you can see examples in the source code.
Once you have implemented his mode, it is necessary to specify in the configuration file and execute the command :
php artisan postman:seed
Config
- You can set the column size
'ui' => [ 'table' => [ 'id' => 60, 'date' => 180, 'email.theme' => 180, 'email.text' => 400, 'mode.name' => 140, 'status_action_human' => 130, 'updated_at' => 140, 'operations' => 240, ] ]
- List of available modes
'modes' => [ \agoalofalife\postman\Modes\OneToAll::class, \agoalofalife\postman\Modes\Each::class, ]
Vue components
If you don't want to set using the templating Blade, it is possible to migrate a component to vue.
php artisan vendor:publish --tag=postman-components
Middleware
You can define your rules in config file.
/* |-------------------------------------------------------------------------- | Middleware |-------------------------------------------------------------------------- | Set middleware */ 'middleware' => '',