public function submitOTP(Request $request) { //get mobile number from user input $mobileNum = $request->input('mobile'); //get user type from user input $userType = $request->input('userType'); //set user email $userEmail = '*****@*****.**'; //set country code $countryCode = 61; //initial authentication API // $authy_api = new AuthyApi(config('services.authy.key')); $authy_api = new AuthyApi(config('services.authy.key'), 'http://sandbox-api.authy.com'); //sandbox //register a user through email, cellphone, country_code $user = $authy_api->registerUser($userEmail, $mobileNum, $countryCode); //generate authentication token and send it to usser $sms = $authy_api->requestSms($user->id(), array("force" => "true")); if ($sms->ok()) { //check user exist or not $results = Client::where('mobile', $mobileNum)->first(); //if user does not exist, register of him if (empty($results)) { $newUser = new Client(); $newUser->mobile = $mobileNum; $newUser->save(); } return view('auth.otp')->with('userid', $user->id())->with('mobileNum', $mobileNum)->with('userType', $userType); } else { //session()->put('message','incorrect mobile number'); return redirect('login')->with('message', 'Please input correct mobile number'); } }
public function sendToken() { $authy_api = new AuthyApi(getenv('AUTHY_TOKEN')); $sms = $authy_api->requestSms($this->authy_id); return $sms->ok(); }
/** * This controller function handles the verification code resent * * @param Request $request Current User Request * @param Authenticatable $user Current User * @param AuthyApi $authyApi Authy Client * @return mixed Response view */ public function verifyResend(Request $request, Authenticatable $user, AuthyApi $authyApi) { $sms = $authyApi->requestSms($user->authy_id); if ($sms->ok()) { $request->session()->flash('status', 'Verification code re-sent'); return redirect()->route('user-show-verify'); } else { $errors = $this->getAuthyErrors($sms->errors()); return view('verifyUser', ['errors' => new MessageBag($errors)]); } }