1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- <?php
- namespace App\TCommands;
- use App\ExternalUser;
- use App\User;
- use Illuminate\Support\Facades\Log;
- use Telegram\Bot\Actions;
- use Telegram\Bot\Commands\Command;
- /**
- * Class SearchCommand.
- */
- class MyEmail extends Command
- {
- /**
- * @var string Command Name
- */
- protected $name = 'my_email';
- /**
- * @var array Command Aliases
- */
- protected $aliases = ['listcommands'];
- /**
- * @var string Command Description
- */
- protected $description = 'Привязать почту';
- /**
- * {@inheritdoc}
- */
- public function handle($arguments)
- {
- $telegram_message = \Telegram::getWebhookUpdates()['message'];
- $textOfMessage = $telegram_message['text'];
- $updateId = \Telegram::getWebhookUpdates()['update_id']+1;
- \Telegram::getWebhookUpdates(['offset'=>$updateId]);
- $email = substr($textOfMessage, 9);
- if ($email){
- $trimedEmail = trim($email);
- if (filter_var($trimedEmail, FILTER_VALIDATE_EMAIL)){
- $userId = $telegram_message['from']['id'];
- $user = User::where('email', $trimedEmail)->first();
- Log::info('User->'. $user);
- if ($user){
- if($user->telegram_id){
- $telegramId = $user->telegram_id == $telegram_message['from']['id'] ? true : false;
- } else {
- $telegramId = false;
- }
- if (!$telegramId){
- $user->telegram_id = $userId;
- $user->save();
- }
- $text = $telegramId ? 'Поштова скринька вже приєднана до цього номеру Telegram' : 'Вітаємо, ви приєднали скриньку';
- } else {
- $text = 'користувача не зареєстровано на сайті proj.geolook.php.a-level.com.ua';
- }
- } else {
- $text = 'email вказано невірно';
- }
- } else {
- $text = 'Для приєднання поштової скриньки, вкажіть її назву через пробіл після команди /my_email.'.PHP_EOL.'Шаблон:'.PHP_EOL.'/my_email \'назва скриньки\'';
- }
- $this->replyWithMessage(compact('text'));
- //Log::info(trim($email));
- }
- }
|