///-------------------------------------------------------------------------------------------------------- /// public override async Task OnMessage(Telegram.Bot.Types.Message message) { await base.OnMessage(message); string msg = message.Text.Trim(); long requesterId = message.Chat.Id; if (requesterId != otpWaitUserId) { return; } switch (commandState) { case eCommandState.InputWaitOtp: { IsCompleted = true; string otpStr = message.Text.Trim(); if (OtpChecker.CheckOtp(otpStr)) { string requesterName = message.Chat.Username; await SendMessage(requesterId, strings.Format("{0} 지갑을 재기동합니다.", requesterName)); bool success = await Restart(restartParams); string response = strings.Format("재기동 완료. 결과 : {0}", success ? "Success" : "Failed"); await SendMessage(requesterId, response); Logger.Log("재기동 완료. {0}\n", success ? "Success" : "Failed"); if (success && Config.StartupAutoStaking) { ICommand autoStaking = CommandFactory.CreateCommand(eCommand.StartStaking); if (autoStaking != null) { await autoStaking.Process(requesterId, requesterName, DateTimeHandler.GetTimeZoneNow()); } } } else { await SendMessage(requesterId, strings.GetString("Otp 인증에 실패 했습니다.")); } } break; } }
///-------------------------------------------------------------------------------------------------------- /// 기동 시 자동 스테이킹 시작 private async static Task StartupAutoStaking() { if (Config.StartupAutoStaking) { Logger.Log("StartupAutoStaking"); await UserList.ForeachSendMsg(strings.Format("자동 채굴 시작이 설정되어 있습니다. 채굴을 시작합니다.")); Command.ICommand command = Command.CommandFactory.CreateCommand(Command.eCommand.StartStaking); if (command != null) { await command.Process(-1, "", DateTimeHandler.GetTimeZoneNow()); } } }