public void Execute(Fooxboy.NucleusBot.Models.Message msg, IMessageSenderService sender, IBot bot) { if (Main.Api.Users.IsBanned(msg)) { return; } //проверка на регистрацию. if (_api.Users.CheckUser(msg)) { var kb2 = new KeyboardBuilder(bot); kb2.AddButton(ButtonsHelper.ToHomeButton()); sender.Text("✔ Вы уже зарегистрированы, перейдите на главный экран!", msg.ChatId, kb2.Build()); return; } //регистрация нового юзера. var user = new HydraBot.Models.User(); user.Access = 0; user.IsBanned = false; user.Level = 1; user.Prefix = "Игрок"; user.Score = 0; user.TimeBan = 0; user.BonusDay = 1; user.SubOnNews = true; user.Money = 100000; user.DriverLicense = ""; user.IsAvailbleBonus = true; user.TimeBonus = 0; if (msg.Platform == MessengerPlatform.Vkontakte) { //устанавливаем id ВКонтакте в зависимости от того куда написал пользователь. В беседу или в лс. if (msg.ChatId < 2000000000) { user.VkId = msg.ChatId; } else { user.VkId = msg.MessageVK.FromId.Value; } //устанавливаем никнейм var vkapi = new VkApi(); vkapi.Authorize(new ApiAuthParams() { AccessToken = Main.Token }); var userName = vkapi.Users.Get(new List <long>() { msg.MessageVK.FromId.Value })[0].FirstName; user.Name = userName; } //устанавливаем id Телеграмма. else { user.TgId = msg.MessageTG.From.Id; user.Name = msg.MessageTG.From.FirstName; } //добавляем пользователя в бд. var id = _api.Users.AddUser(user); user.Id = id; var garage = new Models.Garage() { Cars = "", PhoneNumber = null, Name = "no", IsPhone = false, Engines = "", Fuel = 9999999999999, GarageModelId = -1, SelectCar = -1, ParkingPlaces = 0, UserId = id }; Main.Api.Garages.RegisterGarage(garage); var skills = new Skills(); skills.UserId = id; using (var db = new Database()) { db.Skillses.Add(skills); db.SaveChanges(); } var kb = new KeyboardBuilder(bot); kb.AddButton(ButtonsHelper.ToHomeButton()); sender.Text("✔ Вы успешно зарегистрировались! Перейдите на главный экран, нажав на кнопку домой.", msg.ChatId, kb.Build()); }
private void NewMessage(Models.Message message) => Task.Run(() => _processor.Start(message));