internal void SendMessage(TelegramBotClient botClient, Message _message) { DataBase db = Singleton.GetInstance().Context; User user = db.GetUser(_message.From.Id); if (IsNullDataBase.IsNull(botClient, _message, user)) { return; // - заменить на другую таблицу } User userTwo = SearchUser(_message); botClient.DeleteMessage(_message.Chat.Id, _message.MessageId, "33 - AddUserInTransaction"); if (userTwo != null) { Transaction transaction = db.GetTransaction(user); transaction.AddUser = false; user.Chain = (Int32)SetChain.MessageUserInBot; db.Save(); botClient.EditMessage(_message.From.Id, user.MessageID, "Ожидайте пока участник подтвердить действие.", "45 - AddUserInTransaction", user, replyMarkup: InlineButtonBlockchain.GuarantorMeinMenu(user)); String text = $"✅Подтвердить✅\nОтправитель: {transaction.UserSender.FIO}\nКомиссия: "; text += transaction.WhoCommissionPay == true ? "получатель" : "отправитель"; text += $"\nСумма: {transaction.SumPayNew}\nВалюта: "; text += transaction.PaymentId == 1 ? "BTC" : transaction.PaymentId == 2 ? "USDT" : transaction.PaymentId == 3 ? "Ethereum" : transaction.PaymentId == 4 ? "Ripple" : "не выбрана!"; botClient.SendText(userTwo.ID, text, userTwo, replyMarkup: InlineButtonBlockchain.ConfirmOrCancelThisTransactionUserTwo(transaction)); } }
private void SendMessage(TelegramBotClient botClient, Message _message) { botClient.DeleteMessage(_message.From.Id, _message.MessageId, "48 - SetBlockChain"); String text = $"Отправитель: {transaction.UserSender.FIO}"; text += transaction.UserRecipient != null ? $"\nПолучатель: {transaction.UserRecipient.FIO}" : ""; text += "\nКомиссия: "; text += transaction.WhoCommissionPay == true ? "получатель" : "отправитель"; text += $"\nСумма: {transaction.SumPayNew}\nВалюта: "; text += transaction.PaymentId == 1 ? "BTC" : transaction.PaymentId == 2 ? "USDT" : transaction.PaymentId == 3 ? "Ethereum" : transaction.PaymentId == 4 ? "Ripple" : "не выбрана!"; if (transaction.PaymentId == 1 && transaction.UserRecipient == null) { GenerateKey(); AddresBTC addres = db.GetAddresBTC(addresBTC.PrivateKey); transaction.AddresBTCId = addres.Id; user.Chain = (Int32)SetChain.SetIdTransaction; db.Save(); text += "__\nНомер кошелька для отправки денег:__ " + "```" + addresBTC.PublickKey + "``` " + "(Текст можно скопировать тапом)"; text += "__\n\nВведите HASH транзакции, этот параметр обязателен, мы должны понимать что именно вы отправили деньги на наш кошелек!\nВ противном случаи услуги гаранта для вас будут недоступны!__"; botClient.SendText(_message.From.Id, text, user, replyMarkup: InlineButtonBlockchain.SetTransactionMenu(transaction), IsMarkdown: true); } else { botClient.EditMessage(_message.From.Id, user.MessageID, text, "55 - SetBlockChain", user, replyMarkup: InlineButtonBlockchain.SelectConfirmOrCancelThisTransaction(transaction)); botClient.SendText(transaction.UserSenderId, $"Транзакция была подтверждена {user.FIO}"); } }
public void SendMessage(TelegramBotClient botClient) => botClient.EditMessage(_message.From.Id, user.MessageID, "🔐Гарант🔐", "20 - GuarantorMeinMenu", user, replyMarkup: InlineButtonBlockchain.SettingsCommisionCripta(Value));
private void SendMessage(TelegramBotClient botClient, Message _message, Int32 request) { botClient.DeleteMessage(_message.From.Id, _message.MessageId, "48 - SetBlockChain"); String text = $"❌Отменить❌\nОтправитель: {transaction.UserSender.FIO}\nПлучатель: {transaction.UserRecipient.FIO}\nКомиссия: "; text += transaction.WhoCommissionPay == true ? "получатель" : "отправитель"; text += $"\nСумма: {transaction.SumPayNew}\nВалюта: "; text += transaction.PaymentId == 1 ? "BTC" : transaction.PaymentId == 2 ? "USDT" : transaction.PaymentId == 3 ? "Ethereum" : transaction.PaymentId == 4 ? "Ripple" : "не выбрана!"; text += request == (Int32)SetChain.SetTransactionDiscription ? $"\nПричина отправителя: {transaction.DescriptionCancelSender}" : $"\nПричина получателя: {transaction.DescriptionCancelRecipient}"; botClient.EditMessage(_message.From.Id, user.MessageID, text, "55 - SetBlockChain", user, replyMarkup: InlineButtonBlockchain.SelectConfirmOrCancelThisTransaction(transaction)); if (request == (Int32)SetChain.SetTransactionDiscription) { botClient.SendText(transaction.UserRecipient.ID, $"Транзакция {transaction.Name} была отменена пользователем {user.FIO}.\nПричина {transaction.DescriptionCancelSender}"); } else { botClient.SendText(transaction.UserSender.ID, $"Транзакция {transaction.Name} была отменена пользователем {user.FIO}.\nПричина {transaction.DescriptionCancelRecipient}"); } }
private async Task <Boolean> CheckIdTransaction(TelegramBotClient botClient) { Transaction found = db.GetTransactionByHash(_message.Text); TransactionId errTran = db.GetFailedTransactionByHash(_message.Text); Boolean isAlreadyUsed = (found != null || errTran != null); if (isAlreadyUsed) { AddIdTransactionFalse(); botClient.DeleteMessage(_message.From.Id, _message.MessageId, "48 - SetBlockChain"); botClient.EditMessage(_message.From.Id, user.MessageID, "Данная транзакция уже была использованна или она не действительная!", "51 - SetIdTransaction", user, replyMarkup: InlineButtonBlockchain.TransactionCreationGuarantor(transaction)); return(false); } Money money = null; try { switch (transaction.PaymentId) { case 0: { return(false); } case 1: // BTC { addresBTC = db.GetAddresBTCInt(transaction.AddresBTCId); money = await BlockchainManager.Instance.GetBTCTransactionMoney(_message.Text, addresBTC); break; } case 3: // Eth { money = await BlockchainManager.Instance.GetETHTransactionMoney(_message.Text); break; } case 4: // Ripple { money = await BlockchainManager.Instance.GetXRPTransactionMoney(_message.Text); break; } } } catch { AddIdTransactionIsNotBD(); botClient.DeleteMessage(_message.From.Id, _message.MessageId, "48 - SetBlockChain"); botClient.EditMessage(_message.From.Id, user.MessageID, "Данная транзакция не действительная или она не была подтвержденна, попробуйте ввести транзакцию позже!", "86 - SetIdTransaction", user, replyMarkup: InlineButtonBlockchain.TransactionCreationGuarantor(transaction)); return(false); } if (money == null) { AddIdTransactionFalse(); botClient.DeleteMessage(_message.From.Id, _message.MessageId, "48 - SetBlockChain"); botClient.EditMessage(_message.From.Id, user.MessageID, "Данная транзакция не действительная или она не была подтвержденна, попробуйте ввести транзакцию позже!", "92 - SetIdTransaction", user, replyMarkup: InlineButtonBlockchain.TransactionCreationGuarantor(transaction)); return(false); } Decimal dec = money.ToDecimal(MoneyUnit.BTC); Decimal percent = Convert.ToDecimal(0.15); if (dec < transaction.SumPayNew) { switch (transaction.PaymentId) { case 1: { addresBTC = db.GetAddresBTCInt(transaction.AddresBTCId); await BlockchainManager.Instance.SendBTC(transaction.PublicKeyWalletSender, dec, 0, addresBTC); break; } case 3: { await BlockchainManager.Instance.SendETHBackByHash(_message.Text); break; } case 4: { await BlockchainManager.Instance.SendXRPBackByHash(_message.Text); break; } } AddIdTransactionFalse(); botClient.DeleteMessage(_message.From.Id, _message.MessageId, "48 - SetBlockChain"); botClient.EditMessage(_message.From.Id, user.MessageID, "Вы отправили меньше денег нежелеи заявили, ваши деньги были возращены на ваш кошелек!", "122 - SetIdTransaction", user, replyMarkup: InlineButtonBlockchain.TransactionCreationGuarantor(transaction)); return(false); } AddIdTransaction(); return(true); }
private void SendMessage(TelegramBotClient botClient, Message _message) { botClient.DeleteMessage(_message.From.Id, _message.MessageId, "23 - SetIdTransaction"); String text = $"Отправитель: {transaction.UserSender.FIO}\nКомиссия: "; text += transaction.WhoCommissionPay == true ? "получатель" : "отправитель"; text += $"\nСумма: {transaction.SumPayNew}\nВалюта: "; text += transaction.PaymentId == 1 ? "BTC" : transaction.PaymentId == 2 ? "USDT" : transaction.PaymentId == 3 ? "Ethereum" : transaction.PaymentId == 4 ? "Ripple" : "не выбрана!"; botClient.EditMessage(_message.From.Id, user.MessageID, text, "29 - SetIdTransaction", user, replyMarkup: InlineButtonBlockchain.TransactionCreationGuarantor(transaction)); }
private void SendTextFalse(TelegramBotClient botClient, Message _message) { botClient.DeleteMessage(_message.From.Id, _message.MessageId, "26 - SetBlockChain"); String text = "Вы ввели недостаточно денег!\nМинимальная сумма поплнения 3 доллара или 100 грн!"; botClient.EditMessage(_message.From.Id, user.MessageID, text, "50 - SetBlockChain", user, replyMarkup: InlineButtonBlockchain.ChoosingPaymentMethod(transaction)); }
private void SendMessage(TelegramBotClient botClient, Message _message) { botClient.DeleteMessage(_message.From.Id, _message.MessageId, "26 - SetBlockChain"); String text = $"✅Подтвердить✅\nОтправитель: {transaction.UserSender.FIO}\nКомиссия: "; text += transaction.WhoCommissionPay == true ? "отправитель" : "получатель"; text += transaction.WhoCommissionPay == true ? $"\nСумма: {transaction.SumPayNew}\nВалюта: " : $"\nСумма: {_message.Text}\nВалюта: "; text += transaction.PaymentId == 1 ? "BTC" : transaction.PaymentId == 2 ? "USDT" : transaction.PaymentId == 3 ? "Ethereum" : transaction.PaymentId == 4 ? "Ripple" : "не выбрана!"; switch (transaction.PaymentId) { case 1: text += "\n\nВведите номер кошелька(public key), это нужно для того что бы мы понимали куда отправлять деньги в случаи неудачной сделки!"; break; case 3: text += "__\nНомер кошелька для отправки денег:__" + $"```{BlockchainManager.Instance.Settings.ethWalletAddress}``` " + "__(Текст можно скопировать тапом)__"; break; case 4: text += "__\nНомер кошелька для отправки денег: __" + $"```{BlockchainManager.Instance.Settings.xrpWalletAddress}``` " + "__(Текст можно скопировать тапом)__"; break; } if (transaction.PaymentId == 1 && transaction.UserRecipient == null) { botClient.EditMessage(_message.From.Id, user.MessageID, text, "50 - SetBlockChain", user, replyMarkup: InlineButtonBlockchain.ChoosingPaymentMethodToBack(transaction), IsMarkdown: true); } else { text += "__\n\nВведите HASH транзакции, этот параметр обязателен, мы должны понимать что именно вы отправили деньги на наш кошелек!\nВ противном случаи услуги гаранта для вас будут недоступны!__"; botClient.EditMessage(_message.From.Id, user.MessageID, text, "55 - SetBlockChain", user, replyMarkup: InlineButtonBlockchain.SetTransactionMenu(transaction), IsMarkdown: true); } }
internal void SendMessage(TelegramBotClient botClient, Message _message) { DataBase db = Singleton.GetInstance().Context; User user = db.GetUser(_message.From.Id); if (IsNullDataBase.IsNull(botClient, _message, user)) { return; // - заменить на другую таблицу } botClient.DeleteMessage(_message.Chat.Id, _message.MessageId, "33 - AddUserInTransaction"); botClient.EditMessage(_message.From.Id, user.MessageID, "Ваша заявка была отправлена администраторам, ожидайте в ближайшее время с вами свяжутся!", "45 - AddUserInTransaction", user, replyMarkup: InlineButtonBlockchain.GuarantorMeinMenu(user)); String temp = $"Помощь по гаранту\n🆔: {user.ID}\n🖌ФИО: {user.FIO}\n📱Номер: {user.Number}\n"; temp += user.Username != "Нет!" ? "🧸Юзернейм: @" + user.Username : ""; temp += $"\nСообщение: \n{_message.Text}"; Settings settings = db.GetSettings(); botClient.SendText(settings.ChannelAdmin, temp); }