/// <summary> /// Execute request for Workbook connections. /// </summary> public void ExecuteRequest() { var wbConnections = new List <SiteConnection>(); //Create a web request, in including the users logged-in auth information in the request headers var urlQuery = _onlineUrls.Url_WorkbookConnectionsList(OnlineSession, _workbookId); var webRequest = CreateLoggedInWebRequest(urlQuery); webRequest.Method = "GET"; OnlineSession.StatusLog.AddStatus("Web request: " + urlQuery, -10); var response = GetWebResponseLogErrors(webRequest, "get workbook's connections list"); var xmlDoc = GetWebResponseAsXml(response); //Get all the workbook nodes var nsManager = XmlHelper.CreateTableauXmlNamespaceManager("iwsOnline"); var connections = xmlDoc.SelectNodes("//iwsOnline:connection", nsManager); //Get information for each of the data sources foreach (XmlNode itemXml in connections) { try { var connection = new SiteConnection(itemXml); wbConnections.Add(connection); } catch { AppDiagnostics.Assert(false, "Workbook connections parse error"); OnlineSession.StatusLog.AddError("Error parsing workbook: " + itemXml.InnerXml); } } //end: foreach _connections = wbConnections; }
/// <summary> /// /// </summary> /// <param name="serverName"></param> public void ExecuteRequest() { var wbConnections = new List<SiteConnection>(); //Create a web request, in including the users logged-in auth information in the request headers var urlQuery = _onlineUrls.Url_WorkbookConnectionsList(_onlineSession, _workbookId); var webRequest = CreateLoggedInWebRequest(urlQuery); webRequest.Method = "GET"; _onlineSession.StatusLog.AddStatus("Web request: " + urlQuery, -10); var response = GetWebReponseLogErrors(webRequest, "get workbook's connections list"); var xmlDoc = GetWebResponseAsXml(response); //Get all the workbook nodes var nsManager = XmlHelper.CreateTableauXmlNamespaceManager("iwsOnline"); var connections = xmlDoc.SelectNodes("//iwsOnline:connection", nsManager); //Get information for each of the data sources foreach (XmlNode itemXml in connections) { try { var connection = new SiteConnection(itemXml); wbConnections.Add(connection); } catch { AppDiagnostics.Assert(false, "Workbook connections parse error"); _onlineSession.StatusLog.AddError("Error parsing workbook: " + itemXml.InnerXml); } } //end: foreach _connections = wbConnections; }
/// <summary> /// /// </summary> /// <param name="serverName"></param> public void ExecuteRequest() { var dsConnections = new List <SiteConnection>(); //Create a web request, in including the users logged-in auth information in the request headers var urlQuery = _onlineUrls.Url_DatasourceConnectionsList(_onlineSession, _datasourceId); _onlineSession.StatusLog.AddStatus("Web request: " + urlQuery, -10); var xmlDoc = ResourceSafe_PerformWebRequest_GetXmlDocument(urlQuery, "get datasources's connections list"); //Get all the workbook nodes var nsManager = XmlHelper.CreateTableauXmlNamespaceManager("iwsOnline"); var connections = xmlDoc.SelectNodes("//iwsOnline:connection", nsManager); //Get information for each of the data sources foreach (XmlNode itemXml in connections) { try { var connection = new SiteConnection(itemXml); dsConnections.Add(connection); } catch { AppDiagnostics.Assert(false, "Workbook connections parse error"); _onlineSession.StatusLog.AddError("Error parsing workbook: " + itemXml.InnerXml); } } //end: foreach _connections = dsConnections; }
public Downloader(SiteConnection pConnection, VideoSource pVideoSource, DateTime pStart, DateTime pEnd, int pInterval, string pOutPath) { mConnection = pConnection; mInterval = pInterval; mEnd = pEnd; mOutPath = pOutPath; mPlayback = pConnection.PlaybackManager; mPlayback.SetVideoCallback(this, 0); mPlayback.AddVideoSource(pVideoSource); mFrameTime = pStart; do { mPlayback.Locate(mFrameTime); mFrameTime = mFrameTime.AddSeconds(mInterval); } while (mFrameTime.CompareTo(mEnd) < 0); mConnection.Disconnect(); mConnection = null; }
public void ExecuteRequest() { var dsConnections = new List<SiteConnection>(); //Create a web request, in including the users logged-in auth information in the request headers var urlQuery = Urls.Url_DatasourceConnectionsList(Login, DatasourceId); var httpRequestMessage = CreateLoggedInRequest(urlQuery, HttpMethod.Get); Login.Logger.Information("Web request: " + urlQuery); var response = SendHttpRequest(httpRequestMessage); var xmlDoc = GetHttpResponseAsXml(response); //Get all the workbook nodes //Get all the nodes var xDoc = xmlDoc.ToXDocument(); var connections = xDoc.Root.Descendants(XName.Get("connection", XmlNamespace)); //Get information for each of the data sources foreach (var itemXml in connections) { try { var connection = new SiteConnection(itemXml.ToXmlNode()); dsConnections.Add(connection); } catch { Login.Logger.Error("Error parsing workbook: " + itemXml.ToXmlNode()); } } //end: foreach Connections_p = dsConnections; }
static void Main(string[] args) { Console.WriteLine("Intellio Video Server Frames downloader for timelaps"); Console.WriteLine("Usage IVSTimelaps.exe [address] [port] [user] [password] [camera] [start time] [end time] [interval(s)]"); Console.WriteLine(); if (args.Length < 8) { Console.WriteLine("Missing parameter(s)"); Environment.Exit(-1); } try { mAddress = args[0]; mPort = int.Parse(args[1]); mUser = args[2]; mPassword = args[3]; mCamera = args[4]; mStart = ParseDateTimeParam(args[5]); mEnd = ParseDateTimeParam(args[6]); mInterval = int.Parse(args[7]); } catch (Exception e) { Console.WriteLine("Invalid format: {0}", e.Message); Environment.Exit(-1); } SiteConnector connector; connector = new SiteConnector(); try { mConnection = connector.Connect(mAddress, mPort, mUser, mPassword); } catch (Exception e) { Console.WriteLine("Cannot connect to server ({0}:{1}): {2}", mAddress, mPort, e.Message); Environment.Exit(-2); } mVideoSource = GetVideoSourceByName(mCamera); if (mVideoSource == null) { Console.WriteLine("Camera not found ({0})", mCamera); Environment.Exit(-3); } mOutPath = AppDomain.CurrentDomain.BaseDirectory; new Downloader(mConnection, mVideoSource, mStart, mEnd, mInterval, mOutPath); }
public void UpdateServerAddress(SiteDatasource datasourceToUpdate, SiteConnection connectionToUpdate, string serverAddress) { var sb = new StringBuilder(); var xmlWriter = XmlWriter.Create(sb, XmlHelper.XmlSettingsForWebRequests); xmlWriter.WriteStartElement("tsRequest"); xmlWriter.WriteStartElement("connection"); xmlWriter.WriteAttributeString("serverAddress", serverAddress); xmlWriter.WriteEndElement(); //</connection> xmlWriter.WriteEndElement(); // </tsRequest> xmlWriter.Dispose(); var xmlText = sb.ToString(); var urlQuery = Urls.UrlUpdateDatasourceConnection(Login, datasourceToUpdate, connectionToUpdate); var webRequest = CreateLoggedInRequest(urlQuery, HttpMethod.Put); SendHttpRequest(webRequest, xmlText); }
public string UrlUpdateDatasourceConnection(TableauServerSignIn session, SiteDatasource datasourceToUpdate, SiteConnection connectionToUpdate) { string workingText = UrlUpdateDatasourceConnection_p; workingText = workingText.Replace("{{iwsSiteId}}", session.SiteId); workingText = workingText.Replace("{{iwsDatasourceId}}", datasourceToUpdate.Id); workingText = workingText.Replace("{{iwsConnectionId}}", connectionToUpdate.Id); ValidateTemplateReplaceComplete(workingText); return(workingText); }