Ejemplo n.º 1
0
        public void SaveFile(int userId, string fileName, string base64Content)
        {
            var filePath  = _pathProvider.BuildAudioPath(fileName);
            var directory = Path.GetDirectoryName(filePath);

            if (!Directory.Exists(directory))
            {
                Directory.CreateDirectory(directory);
            }

            File.WriteAllBytes(filePath, Convert.FromBase64String(base64Content));
        }
Ejemplo n.º 2
0
        public TimeSpan GetDuration(string relativePath)
        {
            var fullPath = _pathProvider.BuildAudioPath(relativePath);

            try
            {
                var audioFile = File.Create(fullPath, ReadStyle.Average);
                return(audioFile.Properties.Duration);
            }
            catch (Exception ex)
            {
                return(TimeSpan.Zero);
            }
        }
Ejemplo n.º 3
0
        public void CleanUpMessages()
        {
            var date = DateTime.UtcNow.AddDays(-2);

            var messages = _unitOfWork.Repository <StickMan_Users_AudioData_UploadInformation>()
                           .Get(x => x.UploadTime < date && !x.DeleteStatus);

            foreach (var message in messages)
            {
                var absolutePath = _pathProvider.BuildAudioPath(message.AudioFilePath);

                if (File.Exists(absolutePath))
                {
                    File.Delete(absolutePath);
                }

                message.DeleteStatus = true;
                _unitOfWork.Repository <StickMan_Users_AudioData_UploadInformation>().Update(message);
            }

            _unitOfWork.Save();
        }