In Laravel Send Mail through Queue features

In Laravel Send Mail through Queue features

For sending Bulk Email through laravel, first, change the .env file as follow.

  • First, provide database credential

    set

    QUEUE_DRIVER=sync to
    QUEUE_DRIVER=database

Normally, QUEUE_DRIVER=sync tries to sent email immediately and if we set it as a database, we can send an email after the desired number of seconds. then,

  • give the email credential, from which you want to sent email

To sent email, we have to change Gmail setting and give permission to access email account from less secure apps. Here is the link to set access from less secure apps click to turn on and you are ready to go. Now go tho the queue.php file in the config folder and find the array key database. Here is the information we get:

'database' => [
    'driver' => 'database',
    'table'  => 'jobs',
    'queue'  => 'default',
    'expire' => 60,
],

According to data, we can see that to use the database as a queue driver we have to create a table called jobs. To create this table, we have to run the following command :

php artisan queue:table

This command will create a migration file which will create a table called jobs with necessary fields. Now we will create a table to track failed jobs. To create this table we have to run the following command:

php artisan queue:failed-table

This command will create a migration file, which will create a new table called failed_jobs Now run following command to create table using these migration files.

php artisan migrate

Now, in your .env file set following information

MAIL_DRIVER=smtp
#MAIL_HOST=mailtrap.io
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=*********
MAIL_PASSWORD=*********
MAIL_ENCRYPTION=tls
MAIL_FROM=*********
MAIL_NAME=Dushor Alo

Now go to mail.php file on config folder. Comment out this line

'from' => ['address' => null, 'name' => null],

and use this code

'from' => ['address' => env('MAIL_FROM'), 'name' => env('MAIL_NAME')],

And other settings are

    'username' => env('MAIL_USERNAME'),
    'password' => env('MAIL_PASSWORD'),
    'encryption' => env('MAIL_ENCRYPTION', 'tls'),

Now go to routes.php file and add following lines

Route::get('send/mail',function(){
    $user=['name'=>'Rashed','email'=>'[email protected]'];

    \Illuminate\Support\Facades\Mail::later(5,'emails.reminder', ['user' => $user],function ($m) use ($user) {
        $m->from(env('MAIL_FROM'), 'Your Testing Application');

        $m->to($user['email'], $user['name'])->subject('Your Reminder!');
    });
});

In here we are using Mail:: later(5), which represents that email will be sent 5 seconds later. So our setup is done, and if we browse send/mail we will receive an email after 5 seconds.

Below are few Laravel PHP framework features:

1. Elegant Syntax: Laravel took the best features from different frameworks and mixed them into one. The syntax for Laravel is easy to remember and extremely instinctive.

2. Big Community: Laravel has a great and dynamic network. This people group is to a great extent devoted to enhance the Laravel system and help individuals who are related to Laravel web development.

3. Blade Template Engine: It gives a perfect syntax overview, and you have easy routes to construct HTML directions. This format is sufficiently adaptable to assemble any design. You can construct exceptionally quick and smooth web architectures with this feature of Laravel system.

4. Artisan: It's a great tool for any developer. You can write one line in the comment line and let artisan do the magic. It's an assistant tool gave us by Laravel.

5. ORM: Laravel gives an excellent dynamic reporting execution with ORM (Eloquent). You can arrange different modules effortlessly.

Reasons for choosing Laravel Web Development

If you are looking for web development to boost your business then laravel is an authentic web application development framework. Developing web applications in Laravel has all the right reasons to steal the limelight.

Here are a couple of reasons that will intrigue you in picking Laravel web development for boosting your business.

1. Simplified Authentication

Laravel makes the implementation of authentication simpler. You can also have control access to resources. This makes sure that unauthorized users remain distant from your valuable resources.

Contact us: Laravel Development Company and API Development Company

About Akash Sharma

Images

ExpressTech Software Solutions is pioneer in Webs and App Development, whose mainly focus on new driven technology with team of experienced and the finest technology developer in USA and India. who can meet all your demands related to Software Development Such as Laravel, ReactNative, E-commerce etc. Contact us:: [email protected]

Related Posts

Log in to post a comment.

Top Blogger

Images

Dignity was their first step towards the Patient Care Division. With the growing awareness of adult diapers among the people and the need to address the problem of incontinence, Dignity was born. The idea was to challenge the existing social taboos predominantly present in India about the usage of adult diapers, and to extend a caring helpful hand towards people suffering from a leaky bladder.