CrestRoad/laravel/app/Console/Commands/SendLMSReminder.php

76 lines
2.3 KiB
PHP

<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\DB;
use App\Http\Requests\LambdaRequest;
use Illuminate\Support\Facades\Http;
use Log;
class SendLMSReminder extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'whatsapp:sendlmsreminder';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Command description';
/**
* Create a new command instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle()
{
$records = DB::table("lms_users as u")->select("u.contact_id", "u.phone", "u.name", "u.email", "u.english_article_count", "u.english_quiz_count","u.hindi_article_count", "u.hindi_quiz_count")
->where("u.english_article_count", '>', 0)
->orwhere("u.english_quiz_count", '>', 0)
->orwhere("u.hindi_article_count", '>', 0)
->orwhere("u.hindi_quiz_count", '>', 0)
//->limit(10)
->get();
$not_received = [];
foreach($records as $record) {
if( ($record->english_article_count >=3 && $record->english_quiz_count >=3) || ($record->hindi_article_count >=3 && $record->hindi_quiz_count >=3) ) {
continue;
}
$not_received[] = $record;
$not_received[] = $record->phone.'-'.$record->name;
$rsdata = ['to' => $record->phone,
'text' => json_encode(['countryCode'=>'+91','phoneNumber'=>$record->phone,'callbackData'=>rand(10000,99999).'-'.$record->contact_id,'type'=>'Template','template'=>['name'=>'paramedic_training_reminder','languageCode'=>'en','bodyValues'=>[$record->name,$record->contact_id] ] ]),
'is_sent' => 0,
'session_id' => 0,
'contact_id' => $record->contact_id,
'status' => 1
];
DB::table("raphiwa_send")->insert($rsdata);
}
print_r($not_received);
exit;
}
}