public async Task Register(string username) { _cache.Create(Context.ConnectionId, username); string message = $"{username} : {Context.ConnectionId}"; await Clients.Caller.SendAsync("registered", message, Context.ConnectionId); }
public void Create_AddValidKey_CacheCreatedSuccessfully() { // Arrange // Act _service.Create("createTest", "testobj"); // Assert var hit = _service.TryGet("createTest"); hit.Should().NotBeNull(); (hit as string).Should().Be("testobj"); }
private async Task HandleMessage(string message) { _logger.LogInformation($"client received {message}"); var stickerFromClient = JsonConvert.DeserializeObject <StickerRabbitDto>(message); var chatId = stickerFromClient.TelegramChatId; var messageId = stickerFromClient.TelegramMessageId; var stickerId = stickerFromClient.StickerId; var uniqueStickerId = stickerFromClient.StickerUniqueId; // Качаем стикер с телеграма var fileInfo = await _telegramBotService.DownloadFileAsync(stickerId); // Конвертируем из .tgs или .webp в .gif var convertedFileInfo = await _converterService.ConvertAsync(fileInfo); var fileData = await File.ReadAllBytesAsync(Constants.ConverterPath + convertedFileInfo.Name); // Загружаем на Giphy var uploadResult = await _giphyService.UploadFileAsync(fileData); // Получаем информацию о загруженной Gif var getResult = await _giphyService.GetGifAsync(uploadResult.Data.Id); // Добавляем запись в кэш _cacheService.Create(new Sticker { GiphyUrl = getResult.Data.Url, UniqueStickerId = uniqueStickerId }); // Отправляем пользователю ссылку await _telegramBotService.SendMessageAsync(chatId, messageId, getResult.Data.Url); // Удаляем скачанный и сконвертированный файлы DeleteTmpFiles(); }