public void Setup(string username, MessagingApp currentMessagingApp) { usernameLabel.text = username; //nicknameLabel.text = user.nickname; //userProfileImage.sprite = user.profilePicture; messagingApp = currentMessagingApp; }
public static IMessagingApp GetMessagingApp(MessagingApp messagingApp, Logger logger, CryptoBotDbContext dbContext) { switch (messagingApp.MessagingAppType) { case Enumerations.MessagingAppEnum.Telegram: return(new TelegramMessagingApp(messagingApp, logger, dbContext)); case Enumerations.MessagingAppEnum.Slack: // TODO: break; } return(null); }
public TelegramMessagingApp(MessagingApp app, Logger logger, CryptoBotDbContext dbContext) { _app = app; _logger = logger; _dbContext = dbContext; if (!_app.MessagingAppSettings.Any() || _app.MessagingAppSettings.All(x => x.Key != Constants.Token)) { throw new Exception("Missing settings for Telegram messaging app"); } var token = _app.MessagingAppSettings?.Last(x => x.Key == Constants.Token)?.Value; // chat ID could be null. It needs a message to be sent from the user first, to activate it if (_app.MessagingAppSettings.Find(x => x.Key == Constants.ChatId) != null) { _chatId = Convert.ToInt32(_app.MessagingAppSettings.Last(x => x.Key == Constants.ChatId).Value); } _telegramBotClient = new TelegramBotClient(token); _telegramBotClient.OnMessage += OnMessage; _telegramBotClient.StartReceiving(); }