@mhyeganeh
@gomnam
سلام
من دارم ارسال پیامک انجام میدم و زمانی که ارسال میزنم خطای Call to a member function sendsms() on string را میده
خط $sendClass->sendsms($username, $password, $from, $numbers, $txts); را خطا میده و میگه به صورت رشته میزنی .
خب من اومدم کلاس را در پوشه helpers تعریف کردم و رجیسترش کردم و کلاس را به درستی میشناسه.
مشکل از چیه ؟
نکته : توی کد متغیرهای username  و password را به صورت هارد کد فعلا برای تست زدم
کد بخش store
    public function store(Request $request)
    {
        $username = '********'; // required
        $password = '********'; // required
        $from = $request ['from']; // required
        $sms = $request ['message']; // not required
        // $api = api::where('id', '=', $request->from)->firstOrFail();
        $numbers = explode("\r\n", $request->numbers);
        $insert_data = collect();
        foreach ($numbers as $value) {
            $insert_data->push([
                'number' => $value,
                'user_id' => auth()->user()->id,
                'status' => 'send',
                'text' => $request->message,
                'from' => $request['from'],
                'created_at' => Carbon::now(),
                'updated_at' => Carbon::now(),
            ]);
        }
        foreach ($insert_data->chunk(100) as $chunk) {
            foreach ($numbers as $p) {
                $txts [$p] = $sms;
            }
            // DB::table('sms')->insert($chunk->toArray());
            $sendClass = \App\Helpers\SMSTools:: class;
            $sendClass->send_sms($username, $password, $from, $numbers, $txts);
        }
        return redirect()->back()->with('success', 'ارسال انجام شد');
    }با سلام .
شما باید یک آبجکت از کلاس SMSTools داشته باشید تا متد send_sms رو روش صدا بزنید.
با نوع صدا زدنتون شما دارید اسم کلاس رو با namespace کاملش میریزید داخل متغیر... در واقع متغیر sendClass شما به اینصورته:
$sendClass = '\App\Helpers\SMSTools'; 
'\App\Helpers\SMSTools'->send_sms(); // ?!?! impossible -> errorو خوب قاعدتا نمیتونید متدی رو روی string صدا بزنید و نیاز به ساختن ابجکت از کلاس دارید.
(اگر در درک مطالب مشکل داشتید پیشنهاد میکنم مباحث شی گرایی | OOP رو مجددا مرور کنید)
موفق باشید
همون طوری که بالا اشاره شد ابتدا باید با new یک آبجکت از کلاس بسازید و بعد متد رو صدا کنید:
//مثلا اینجوری:
$sendClass = new \App\Helpers\SMSTools();
$sendClass->send_sms($username, $password, $from, $numbers, $txts);آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟