Exemple #1
0
 public TranscodeRequestBuilder(ActiveMessage message,
                                IDataMapper <MetadataElement, ActiveMessage> metadataElementMapper,
                                IDataMapper <InputElement, ActiveMessage> inputElementMapper) : base(message)
 {
     this.metadataElementMapper = metadataElementMapper;
     this.inputElementMapper    = inputElementMapper;
 }
Exemple #2
0
 public void OnActiveMessage(string text, ActiveMessageType type)
 {
     IsEnabled = false;
     Message   = new ActiveMessage()
     {
         Text = text,
         Type = type
     };
 }
Exemple #3
0
        public void Map(IList <OutputElement> @from, ActiveMessage to)
        {
            var activeMessage  = to;
            var outputElements = @from;

            // set
            activeMessage.Body.Items = new List <TranscodeItem>(outputElements.Count);

            foreach (var outputElement in outputElements)
            {
            }
        }
Exemple #4
0
        public void when_metadataElement_has_a_value_then_map_to_activemessage()
        {
            var metadata      = GetMetadataTestStub();
            var activeMessage = new ActiveMessage();

            mapper.Map(metadata, activeMessage);

            Assert.AreEqual(metadata.CorrelationId, activeMessage.CorrelationId);
            Assert.AreEqual(metadata.Reference.Id, activeMessage.Metadata.Id);
            Assert.AreEqual(metadata.Reference.Name, activeMessage.Metadata.Name);
            Assert.AreEqual(metadata.CallBackUrl.ToString(), activeMessage.Url);
            Assert.AreEqual(metadata.Region, activeMessage.Region.Name);
        }
Exemple #5
0
 public void OnFailMessage(Exception exception)
 {
     if (exception != null)
     {
         IsEnabled = false;
         Message   = new ActiveMessage()
         {
             Text      = exception.Message,
             Type      = ActiveMessageType.FAIL,
             Exception = exception
         };
     }
 }
        public List <ChatManager.ChatMessage> GetGroupMessages(string GroupID)
        {
            FilterDefinition <BsonDocument> SourceFilter = Builders <BsonDocument> .Filter.Eq("GroupID", GroupID);

            List <BsonDocument> ListMessages = PersonalCollection.Find(SourceFilter).ToList();

            List <ChatManager.ChatMessage> ListChatHistory = new List <ChatManager.ChatMessage>();

            foreach (BsonDocument ActiveMessage in ListMessages)
            {
                DateTime Date    = ActiveMessage.GetValue("Date").ToUniversalTime();
                string   Message = ActiveMessage.GetValue("Message").AsString;
                ChatManager.MessageColors MessageColor = (ChatManager.MessageColors)ActiveMessage.GetValue("MessageColor").AsInt32;
                ListChatHistory.Add(new ChatManager.ChatMessage(Date, Message, MessageColor));
            }

            return(ListChatHistory);
        }
Exemple #7
0
        private void MapOutputElement(OutputElement outputElement, ActiveMessage activeMessage)
        {
            // outputElement.FileUrl // targerurl

            var targetUrl     = outputElement.Url;
            var transcodeItem = new TranscodeItem();

            transcodeItem.TargetFileUri = outputElement.Url.ToString();
            transcodeItem.TargetFile    = targetUrl.Segments.Last();
            transcodeItem.TargetFolder  = targetUrl.LocalPath.Replace(targetUrl.Segments.Last(), string.Empty);
            // target bucket
            transcodeItem.PresetName = outputElement.Preset;

            // var targetBucket = s3Url.Host;
            //outputElement.VideoDescription

            //outputElement.AudioDescription
        }
Exemple #8
0
        public async ValueTask <TranscodeResponse> HandleAsync(TranscodeRequest command, CancellationToken token = default)
        {
            // logic here?

            // 1. validate the request
            // 2. check if the message is already in db in a waiting or progress state
            // 3. map message to active message
            // 4. insert into the database
            var transcodeResponse = new TranscodeResponse();

            var validationResult = await ValidateTranscodeRequest(command, token);

            if (!validationResult.IsValid)
            {
                return(new TranscodeResponse()
                {
                    ValidationResult = validationResult
                });
            }

            // lets query the database and return the format, settings, if the message exists already
            // database is a limited resource so use the most of it
            // perhaps create a transcode table for id, name, transcodepackage , settings, isclosedcaption
            // we should store the transcoderequest from the caller for audit purposes
            // todo: determine what information we need to retrieve from the database to builder the active message

            var transcodeFormats = await GetTranscodeFormats(command.Outputs.Select(m => m.Preset), token);

            var message = ActiveMessage
                          .Builder()
                          .with_transcode_request.build(command)
                          .with_transcode_formats.build(transcodeFormats)
                          .compile();

            // insert

            // out we go

            return(transcodeResponse);
        }
Exemple #9
0
 public ActiveMessageBuilder(ActiveMessage message)
 {
     this.activeMessage = message;
 }
Exemple #10
0
 public TranscodeFormatBuilder(ActiveMessage message) : base(message)
 {
 }