[{"server":null,"owner":null,"id":"395e584b-c9db-4365-a60a-a74bdc601d00","params":{"result":{"value":null,"datetime":1614670822,"status":null,"version":0},"hash":{"value":"9GM6bFziEHnmKojSHj/4Dw==","datetime":1614686958,"status":null,"version":0},"enabled":{"value":false,"datetime":1614686615,"status":null,"version":0},"error_text":{"value":null,"datetime":1614686585,"status":null,"version":0},"type":{"value":"EgsScenario","datetime":1614670908,"status":null,"version":0},"settings":{"value":"{\r\n  \"path\": \"./snapshots/{timestamp}\"\r\n}","datetime":1614685994,"status":null,"version":0},"state":{"value":"ok.normal","datetime":1614686585,"status":null,"version":0},"script":{"value":"# имя: 'Export Trace Snapshots'\r\n# описание: сохраняет фотографии целей в папку\r\n# тип триггера: 'EgsScenario'\r\n# создан: 2020.09.23 14.37.33, Сельченков Н.Ю.\r\n# изменен: '2021.03.02 16.09.20', Сельченков Н.Ю.\r\n# подробности: https://redmine.integra-s.com:11000/projects/eilyacuario/wiki/Export_Trace_Snapshots\r\n\r\nuse System.Convert as Convert\r\nuse System.IO.Path as Path\r\nuse System.IO.File as File\r\nuse System.IO.Directory as Directory\r\nuse System.Collections.Generic.List(string) as StringList\r\nuse acuario2.utils.DateTimeExtension\r\nuse acuario2.utils.JsonExtension\r\nuse acuario2.utils.TextExtension\r\nuse json_schema\r\n`\r\n{\r\n    \"type\": \"object\",\r\n    \"properties\":\r\n    {\r\n    \"path\": { \"type\": \"string\", \"default\": \"./snapshots/{timestamp}\" }\r\n    }\r\n}\r\n` as SETTINGS\r\n\r\nlet settings  = SETTINGS(this.settings)\r\nlet timestamp = DateTimeExtension.ToUnixTime(DateTime.UtcNow) \r\nlet path      = settings.path.Replace(\"{timestamp}\", string(timestamp)) \r\n\r\nprint(\"EXPORTING TRACE SNAPSHOTS TO\", path)\r\n\r\nDirectory.CreateDirectory(path)\r\n\r\nfrom graph.Values of type MoveableObject where trace_snapshot isnt empty do \r\n    try    \r\n        let filename = TextExtension.ToValidIdentifier(name..' '..Id)\r\n        let filepath = Path.Combine(path, filename..\".jpg\")\r\n        let filedata = Convert.FromBase64String(trace_snapshot)\r\n        let datetime = it[\"trace_snapshot\"].DateTime \r\n        File.WriteAllBytes(filepath, filedata)\r\n        File.SetCreationTime(filepath, datetime)\r\n    else\r\n        print last_error\r\nnow\r\n\r\n\r\nprint(\"EXPORTED TRACE SNAPSHOTS TO\", path)\r\n\r\nthis.enabled = false \r\n","datetime":1614686960,"status":null,"version":0},"name":{"value":"Export Trace Snapshots","datetime":1614685410,"status":null,"version":0}},"entity":"item","operation":"create"}]