Laravel Mobile Verification

Laravel Mobile Verification
Laravel Mobile Verification

اکثر برنامه های تحت وب کاربران خود را ملزم میکنند که شماره موبایل خود را قبل از استفاده از خدمات وب سایت تایید کنند. بجای اینکه شما مجبور باشید برای هر وب اپلیکیشن یا وب سایت خود این عملیات را پیاده سازی کنید، پکیج Laravel Mobile Verification امکاناتی مانند Verify, Send و Resend کردن کد تاییدی موبایل کاربران را به شما می دهد.



پیاده سازی

در ابتدا، مطمئن شوید که مدل User شما از اینترفیس MustVerifyMobile به صورت زیر پیاده سازی شده باشد:


https://gist.github.com/mohammad-fouladgar/c4833dca6859bf2b16349ba7b2989707


سپس باید سرویسی که میخواهید از آن برای ارسال SMS استفاده کنید را مشخص کنید مانند (sms.ir,kavenegar.com و غیره...). برای ارسال SMS notification با این پکیج شما باید از اینترفیس SMSClient یک نمونه پیاده سازی کنید. این اینترفیس ملزم میکند که شما یک متد به اسم sendMessage را پیاده سازی کنید و این متد نتیجه ارسال SMS را از طریق آبجکت Payload که شامل شماره موبایل و توکن کاربر است را بر میگرداند:


https://gist.github.com/mohammad-fouladgar/8a968e72e502fe63df8ff3b108a67e1f


برای تنظیم کردن و معرفی کردن SMS client پیاده سازی شده شما باید فایل کانفیگ mobile_verifier.php را پابلیش کنید:

php artisan vendor:publish --provider=&quotFouladgar\MobileVerification\ServiceProvider&quot --tag=&quotconfig&quot

و کلاس را در فایل کانفیگ معرفی کنید:

https://virgool.io/p/c5tgkofctifx/gist.github.com/mohammad-fouladgar/aec20546fa81e33707ffc9a7908de415

روش استفاده

در ایجا میتوانید مشاهده کنید چگونه بعد از ثبت نام کابر میتوانید token را ارسال کنید:

https://gist.github.com/mohammad-fouladgar/03f92366c1bbeba6570202f180915ac7

تایید کردن

شما باید برای کاربری که لاگین شده از طریق Route زیر Token را ارسال کنید:

/auth/mobile/verify
curl -X POST \
      http://example.com/auth/mobile/verify \
      -H 'Accept: application/json' \
      -H 'Authorization: YOUR_JWT_TOKEN' \
      -F token=YOUR_VERIFICATION_TOKEN

ارسال مجدد

اگر شما نیاز دارید برای کاربر دوباره Token ارسال کنید میتوانید از لینک Route زیر استفاده کنید:

/auth/mobile/resend
curl -X POST \
      http://example.com/auth/mobile/resend \
      -H 'Accept: application/json' \
      -H 'Authorization: YOUR_JWT_TOKEN'

برای اطلاعات بیشتر از امکانات پیکیج به مخزن و داکیومنت GitHub مراجعه کنید:

https://github.com/mohammad-fouladgar/laravel-mobile-verification