<UpdateRequired>false</UpdateRequired>\r
<MapFileExtensions>true</MapFileExtensions>\r
<InstallUrl>http://10.10.1.28:90/clientinstall/</InstallUrl>\r
+ <ProductName>Maestro</ProductName>\r
+ <PublisherName>USER Rendszerház Kft.</PublisherName>\r
+ <SuiteName>MediaCube</SuiteName>\r
<CreateWebPageOnPublish>true</CreateWebPageOnPublish>\r
<WebPage>index.htm</WebPage>\r
- <ApplicationRevision>3</ApplicationRevision>\r
- <ApplicationVersion>1.9.0.3</ApplicationVersion>\r
+ <ApplicationRevision>0</ApplicationRevision>\r
+ <ApplicationVersion>1.9.0.0</ApplicationVersion>\r
<UseApplicationTrust>false</UseApplicationTrust>\r
<CreateDesktopShortcut>true</CreateDesktopShortcut>\r
<PublishWizardCompleted>true</PublishWizardCompleted>\r
<DependentUpon>Settings.settings</DependentUpon>\r
<DesignTimeSharedInput>True</DesignTimeSharedInput>\r
</Compile>\r
+ <None Include="Resources\configuration-fxp-isilon.json">\r
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\r
+ </None>\r
+ <None Include="Resources\configuration-fxp.json">\r
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\r
+ </None>\r
+ <None Include="Resources\configuration-ingest - Copy.json">\r
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\r
+ </None>\r
<None Include="Resources\configuration-unc.json">\r
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\r
</None>\r
+ <None Include="Resources\configuration-ingest.json">\r
+ <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\r
+ </None>\r
<None Include="Resources\configuration-nexio.json">\r
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>\r
</None>\r
--- /dev/null
+{\r
+ "title": "Adáslebonyolítás",\r
+ "active": false,\r
+ "startInTray": false,\r
+ "enableNameOverride": false,\r
+ "player": {\r
+ "enabled": true,\r
+ "autoStart": false,\r
+ "segmentEditor": true\r
+ },\r
+ "source": {\r
+ "$type": "UNCSource",\r
+ "local": {\r
+ "address": "file://localhost/watch"\r
+ },\r
+ "remote": {\r
+ "address": "ftp://localhost:21/watch",\r
+ "userName": "dani",\r
+ "password": "dani"\r
+ }\r
+ },\r
+ "metadatas": [\r
+ {\r
+ "$type": "OctopusMetadata",\r
+ "server": {\r
+ "address": "http://10.10.1.28:8080/services/rest/octopus",\r
+ "userName": "dani",\r
+ "password": "dani",\r
+ "timeout": 1000\r
+ }\r
+ },\r
+ {\r
+ "$type": "TrafficMetadata",\r
+ "server": {\r
+ "address": "Data Source=10.10.1.45\\sql16;Initial Catalog=PA_Echo;Persist Security Info=True;",\r
+ "userName": "MAM",\r
+ "password": "Echotv.hu",\r
+ "timeout": 5\r
+ }\r
+ },\r
+ {\r
+ "$type": "MediaCubeMetadata",\r
+ "server": {\r
+ "address": "http://10.10.1.28:8080/services/rest/jobengine",\r
+ "userName": "dani",\r
+ "password": "dani"\r
+ }\r
+ }\r
+ ],\r
+ "targets": [\r
+ {\r
+ "label": "Adásba",\r
+ "processor": "FXPTargetProcessor",\r
+ "outputFormat": "%ID%",\r
+ "remote": {\r
+ "address": "ftp://10.10.1.100:21/READY",\r
+ "userName": "mediacube",\r
+ "password": "Broadca5T"\r
+ }\r
+ }\r
+ ]\r
+}\r
--- /dev/null
+{\r
+ "title": "Adáslebonyolítás",\r
+ "active": false,\r
+ "startInTray": false,\r
+ "enableNameOverride": false,\r
+ "player": {\r
+ "enabled": true,\r
+ "autoStart": false,\r
+ "segmentEditor": true\r
+ },\r
+ "source": {\r
+ "$type": "UNCSource",\r
+ "local": {\r
+ "address": "file://localhost/watch"\r
+ },\r
+ "remote": {\r
+ "address": "ftp://localhost:21/watch",\r
+ "userName": "dani",\r
+ "password": "dani"\r
+ }\r
+ },\r
+ "metadatas": [\r
+ {\r
+ "$type": "OctopusMetadata",\r
+ "server": {\r
+ "address": "http://10.10.1.28:8080/services/rest/octopus",\r
+ "userName": "dani",\r
+ "password": "dani",\r
+ "timeout": 1000\r
+ }\r
+ },\r
+ {\r
+ "$type": "TrafficMetadata",\r
+ "server": {\r
+ "address": "Data Source=10.10.1.45\\sql16;Initial Catalog=PA_Echo;Persist Security Info=True;",\r
+ "userName": "MAM",\r
+ "password": "Echotv.hu",\r
+ "timeout": 5\r
+ }\r
+ },\r
+ {\r
+ "$type": "MediaCubeMetadata",\r
+ "server": {\r
+ "address": "http://10.10.1.28:8080/services/rest/jobengine",\r
+ "userName": "dani",\r
+ "password": "dani"\r
+ }\r
+ }\r
+ ],\r
+ "targets": [\r
+ {\r
+ "label": "Adásba",\r
+ "processor": "FXPTargetProcessor",\r
+ "outputFormat": "%ID%",\r
+ "remote": {\r
+ "address": "ftp://localhost:22/out",\r
+ "userName": "dani",\r
+ "password": "dani"\r
+ }\r
+ }\r
+ ]\r
+}\r
--- /dev/null
+{\r
+ "title": "Betöltés",\r
+ "active": true,\r
+ "startInTray": false,\r
+ "enableCustomMetadataId": false,\r
+ "player": {\r
+ "enabled": true,\r
+ "autoStart": false,\r
+ "segmentEditor": false\r
+ },\r
+ "source": {\r
+ "$type": "UNCSource",\r
+ "local": {\r
+ "address": "file://c:\\_video\\v\\sxs\\xdroot\\clip"\r
+ }\r
+ },\r
+ "metadatas": [\r
+ {\r
+ "$type": "OctopusMetadata",\r
+ "server": {\r
+ "address": "http://10.10.1.28:8080/services/rest/octopus/",\r
+ "userName": "user",\r
+ "password": "password",\r
+ "timeout": 1000\r
+ }\r
+ },\r
+ {\r
+ "$type": "TrafficMetadata",\r
+ "server": {\r
+ "address": "Data Source=10.10.1.45\\sql16;Initial Catalog=PA_Echo;Persist Security Info=True;",\r
+ "userName": "MAM",\r
+ "password": "Echotv.hu",\r
+ "timeout": 5\r
+ }\r
+ },\r
+ {\r
+ "$type": "MediaCubeMetadata",\r
+ "server": {\r
+ "address": "http://10.10.1.28:8080/services/rest/jobengine/",\r
+ "userName": "user",\r
+ "password": "password",\r
+ "timeout": 1000\r
+ }\r
+ }\r
+ ],\r
+ "targets": [\r
+ {\r
+ "label": "Híranyag betöltés",\r
+ "processor": "UNCTargetProcessor",\r
+ "outputFormat": "%ID%-%SOURCENAME%",\r
+ "tag": "Betöltés",\r
+ "createSubFolder": true,\r
+ "killDateDays": 7,\r
+ "useMetadata": false,\r
+ "remote": {\r
+ "address": "file://10.10.1.100/BRAAVOS/ARCHIVE",\r
+ "userName": "mediacube",\r
+ "password": "Broadca5T"\r
+ }\r
+ },\r
+ {\r
+ "label": "Adásanyag betöltés",\r
+ "processor": "UNCTargetProcessor",\r
+ "outputFormat": "%ID%",\r
+ "tag": "Betöltés",\r
+ "saveSegments": false,\r
+ "killDateDays": 7,\r
+ "createSubFolder": false,\r
+ "useMetadata": false,\r
+ "remote": {\r
+ "address": "file://10.10.1.100/BRAAVOS/PLAYOUT_CHECK",\r
+ "userName": "mediacube",\r
+ "password": "Broadca5T"\r
+ }\r
+ }\r
+ ]\r
+}\r
--- /dev/null
+{\r
+ "title": "Betöltés",\r
+ "active": true,\r
+ "startInTray": false,\r
+ "enableCustomMetadataId": false,\r
+ "player": {\r
+ "enabled": true,\r
+ "autoStart": false,\r
+ "segmentEditor": false\r
+ },\r
+ "source": {\r
+ "$type": "UNCSource",\r
+ "filter": "avi,wav,mxf",\r
+ "local": {\r
+ "address": "file://c:\\_video\\v\\sxs\\xdroot\\clip"\r
+ }\r
+ },\r
+ "metadatas": [\r
+ {\r
+ "$type": "OctopusMetadata",\r
+ "server": {\r
+ "address": "http://10.10.1.28:8080/services/rest/octopus/",\r
+ "userName": "user",\r
+ "password": "password",\r
+ "timeout": 1000\r
+ }\r
+ },\r
+ {\r
+ "$type": "TrafficMetadata",\r
+ "server": {\r
+ "address": "Data Source=10.10.1.45\\sql16;Initial Catalog=PA_Echo;Persist Security Info=True;",\r
+ "userName": "MAM",\r
+ "password": "Echotv.hu",\r
+ "timeout": 5\r
+ }\r
+ },\r
+ {\r
+ "$type": "MediaCubeMetadata",\r
+ "server": {\r
+ "address": "http://10.10.1.28:8080/services/rest/jobengine/",\r
+ "userName": "user",\r
+ "password": "password",\r
+ "timeout": 1000\r
+ }\r
+ }\r
+ ],\r
+ "targets": [\r
+ {\r
+ "label": "Híranyag betöltés",\r
+ "processor": "UNCTargetProcessor",\r
+ "outputFormat": "%ID%-%SOURCENAME%",\r
+ "tag": "Betöltés",\r
+ "createSubFolder": true,\r
+ "killDateDays": 7,\r
+ "useMetadata": false,\r
+ "remote": {\r
+ "address": "file://10.10.1.100/BRAAVOS/ARCHIVE",\r
+ "userName": "mediacube",\r
+ "password": "Broadca5T"\r
+ }\r
+ },\r
+ {\r
+ "label": "Adásanyag betöltés",\r
+ "processor": "UNCTargetProcessor",\r
+ "outputFormat": "%ID%",\r
+ "tag": "Betöltés",\r
+ "saveSegments": false,\r
+ "killDateDays": 7,\r
+ "createSubFolder": false,\r
+ "useMetadata": false,\r
+ "remote": {\r
+ "address": "file://10.10.1.100/BRAAVOS/PLAYOUT_CHECK",\r
+ "userName": "mediacube",\r
+ "password": "Broadca5T"\r
+ }\r
+ }\r
+ ]\r
+}\r
{\r
- "title": "PLAYOUT",\r
- "active": true,\r
+ "title": "Adáslebonyolítás",\r
+ "active": false,\r
"startInTray": false,\r
"enableNameOverride": false,\r
"filter": "avi",\r
{\r
"title": "INGEST",\r
- "active": true,\r
+ "active": false,\r
"startInTray": false,\r
- "enableNameOverride": false,\r
"enableCustomMetadataId": true,\r
"player": {\r
"enabled": true,\r
"autoStart": false,\r
- "segmentEditor": true\r
+ "segmentEditor": false\r
},\r
"source": {\r
"$type": "UNCSource",\r
- "filter": "avi,wav,mxf",\r
"local": {\r
"address": "file://10.10.1.100/BRAAVOS/_TEST_/_ECHO/hirado/test"\r
},\r
\r
private void SetItem(ref NexioSourceItem item, JToken token) {\r
item.ID = token[ID].ToString();\r
- item.Name = token[LONGNAMEID].ToString();\r
+ item.Name = token[LONGNAMEID].ToString() + ".mxf";\r
//item.Created = DateTime.Parse(token[RECORDDATE].ToString());\r
item.Agency = token[EXTAGENCY].ToString();\r
item.Modified = DateTime.Parse(token[MODIFIED].ToString());\r
public FTPTargetProcessor(Control parent, TargetProcessorParametersWrapper parameters)\r
: base(parent, parameters) {\r
FtpTrace.LogFunctions = false;\r
- Uri inputUri = createInputUri(parameters);\r
- inputFile = new FileInfo(inputUri.LocalPath);\r
- Input = inputFile.FullName;\r
- ID = parameters.ID;\r
- workFlowAction = new WorkflowAction() { houseId = ID, tag = parameters.TargetConfig.Tag, touched = DateTime.Now };\r
- }\r
-\r
- protected virtual Uri createInputUri(TargetProcessorParametersWrapper parameters) {\r
- return new Uri(String.Format("{0}/{1}", parameters.SourceConfig.Local.Address.LocalPath, parameters.InputFileName));\r
+ if (!(parameters.SourceConfig is UNCSource)) {\r
+ inputFile = null;\r
+ Uri inputUri = new Uri(String.Format("{0}{1}", parameters.SourceConfig.Remote.Address, parameters.InputFileName));\r
+ Input = inputUri.ToString();\r
+ }\r
}\r
\r
protected override void BeforeExecute() {\r
public class FXPTargetProcessor : FTPTargetProcessor {\r
private Logger logger = LogManager.GetCurrentClassLogger();\r
private Source sourceConfig;\r
+ Uri inputUri;\r
\r
public FXPTargetProcessor(Control parent,TargetProcessorParametersWrapper parameters) :\r
base(parent, parameters) {\r
sourceConfig = parameters.SourceConfig;\r
- }\r
+ inputUri = new Uri(String.Format("{0}/{1}", parameters.SourceConfig.Remote.Address, parameters.InputFileName));\r
+ Input = inputUri.ToString();\r
\r
- protected override Uri createInputUri(TargetProcessorParametersWrapper parameters) {\r
- return new Uri(String.Format("{0}/{1}", parameters.SourceConfig.Remote.Address, parameters.InputFileName));\r
}\r
\r
protected override void UploadFile() {\r
\r
try {\r
sourceFTP = CreateClient(sourceConfig.Remote);\r
- long ilength = sourceFTP.GetFileSize(inputFile.Name);\r
+ long ilength = sourceFTP.GetFileSize(inputUri.AbsolutePath);\r
\r
FtpReply replyPASV = targetFTP.Execute("PASV");\r
if (!replyPASV.Success)\r
if (!replyPORT.Success)\r
throw new Exception(replyPORT.ErrorMessage);\r
\r
- FtpReply replyTYPE = targetFTP.Execute("TYPE I");\r
- if (!replyTYPE.Success)\r
- throw new Exception(replyTYPE.ErrorMessage);\r
+\r
+ FtpReply sourceReplyTYPE = sourceFTP.Execute("TYPE I");\r
+ if (!sourceReplyTYPE.Success)\r
+ throw new Exception(sourceReplyTYPE.ErrorMessage);\r
+\r
+ FtpReply replyRETR = sourceFTP.Execute("RETR " + inputUri.AbsolutePath);\r
+ if (!replyRETR.Success) {\r
+\r
+ replyRETR = sourceFTP.Execute("RETR " + inputUri.Segments[inputUri.Segments.Length - 1]);\r
+\r
+ if (!replyRETR.Success)\r
+ throw new Exception(replyRETR.ErrorMessage);\r
+ }\r
+\r
+ FtpReply targetReplyTYPE = targetFTP.Execute("TYPE I");\r
+ if (!targetReplyTYPE.Success)\r
+ throw new Exception(targetReplyTYPE.ErrorMessage);\r
\r
FtpReply replySTOR = targetFTP.Execute("STOR " + OutputName);\r
if (!replySTOR.Success)\r
throw new Exception(replySTOR.ErrorMessage);\r
\r
- replyTYPE = sourceFTP.Execute("TYPE I");\r
- if (!replyTYPE.Success)\r
- throw new Exception(replyTYPE.ErrorMessage);\r
-\r
- FtpReply replyRETR = sourceFTP.Execute("RETR " + inputFile.Name);\r
- if (!replyRETR.Success)\r
- throw new Exception(replyRETR.ErrorMessage);\r
\r
monitorFTP = CreateClient(parameters.TargetConfig.Remote);\r
-\r
+ monitorFTP.SetWorkingDirectory(workingDir);\r
+ monitorFTP.Execute("TYPE I");\r
+ if (!monitorFTP.FileExists(OutputName))\r
+ throw new Exception("A cél állomány nem jött létre.");\r
long overall = 0;\r
while (overall != ilength) {\r
overall = monitorFTP.GetFileSize(OutputName);\r
private const string STATUS_FOLDER = ".STATUS";\r
private const string KILLDATE_FILE = "{0}.{1}.killdate";\r
private const string METADATA_FILE = "{0}.json";\r
+ private const string DEFAULT_EXTENSION = ".mxf";\r
protected FileInfo inputFile;\r
protected string workingDir;\r
protected TargetProcessorParametersWrapper parameters;\r
}\r
\r
public override bool Execute() {\r
- logger.Info(PROCESSING, inputFile.Name);\r
+ logger.Info(PROCESSING, InputName);\r
bool result = false;\r
try {\r
BeforeExecute();\r
finally {\r
AfterExecute();\r
}\r
- logger.Info(PROCESSING_COMPLETED, inputFile.Name);\r
+ logger.Info(PROCESSING_COMPLETED, InputName);\r
return result;\r
}\r
\r
}\r
\r
protected virtual string CreateOutputFileName() {\r
- string nameWithoutExtension = parameters.TargetConfig.OutputFormat.Replace("%ID%", ID).Replace("%SOURCENAME%", Path.GetFileNameWithoutExtension(inputFile.Name));\r
- string result = String.Format(FILENAME, nameWithoutExtension, inputFile.Extension);\r
+ string nameWithoutExtension = parameters.TargetConfig.OutputFormat.Replace("%ID%", ID).Replace("%SOURCENAME%", Path.GetFileNameWithoutExtension(InputName));\r
+\r
+ string extension = InputName.Contains(".") ? InputName.Substring(InputName.LastIndexOf(".")) : DEFAULT_EXTENSION;\r
+ string result = String.Format(FILENAME, nameWithoutExtension, extension);\r
int version = 1;\r
while (FileExists(Path.Combine(workingDir, result))) {\r
- string versioned = String.Format(VERSIONED_FILENAME, nameWithoutExtension, version, inputFile.Extension);\r
+ string versioned = String.Format(VERSIONED_FILENAME, nameWithoutExtension, version, extension);\r
logger.Debug(ALREADY_EXISTS, result, versioned);\r
result = versioned;\r
version++;\r