Onesignal Email setup in laravel or php

 <?php


namespace App\Helpers;

use Illuminate\Support\Str;

use Carbon\Carbon;
use GuzzleHttp\Client;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Log;
use Ladumor\OneSignal\OneSignal;

class Helper
{

public static function sendOneSignalMail(array $email_address = [], string $subject, string $body)
{

//Set Headers
$headers = [
"Content-Type" => "application/json; charset=utf-8",
"Authorization" => "Basic " . config('one-signal.authorize'),
];

$client = new Client([
'base_uri' => 'https://onesignal.com',
'headers' => $headers,
]);

//Send Email
$response = $client->request('POST', '/api/v1/notifications', [
'json' => [
"app_id" => config('one-signal.app_id'),
// "include_player_ids" => ["6392d91a-b206-4b7b-a620-cd68e32c3a76"],
"include_email_tokens" => $email_address,
"email_subject" => $subject,
"email_body" => $body,

],
]);
//Get Response
$responseData = json_decode($response->getBody(), true);
// Log::debug($responseData);
}
}



Call sendOneSignalMail into controller

<?php

namespace App\Http\Controllers;

use App\Helpers\Helper;

use Illuminate\Routing\Controller as BaseController;
class Controller extends Testcontroller
{



public function send_mail(){
$email = ["example@mail.com"];
$subject="Test Mail";
$body="<h2>Hii, Good Morning !</h2>";
$this->SendMail($email,$subject,$body);
}
}


Submit form with laravel jquery validation


Comments