public VideoStorageServer GetVideoStorageServerById(int Id) { Functions F = new Functions(); VideoStorageServer X = F.GetVideoStorageServer(Id); F.Dispose(); return X; }
private void imgButtonView_Click(object sender, System.Web.UI.ImageClickEventArgs e) { string[] checkit = imgButtonView.ImageUrl.Split('/'); Functions F = new Functions(); Transitioning = true; switch(checkit[1]) { case "Tab_B_ViewRec.jpg": TreeNode XNode = tv.GetNodeFromIndex(tv.SelectedNodeIndex); string seeText = XNode.Type; if(XNode.Type != "Recording") { return; } if(XNode.Type == "Recording") { string[] sarray = XNode.NodeData.Split(':'); int RecordingId = Convert.ToInt32(sarray[0],10); Recording Rec = F.GetRecording(RecordingId); if(Rec.Description == "") { return; } VideoStorageServer VSS = F.GetVideoStorageServer(Rec.VideoStorageServerID); string sRecording = ""; VideoStorageServerType VST = VSS.CurrentVideoStorageServerType; if(VSS.ControlAddress != "Not Assigned") { if(VST.Description == "Windows Media Server") sRecording = VST.StreamHeader + VSS.ControlAddress + "/" + VSS.StorageDirectory + "/" + Rec.Description; else sRecording = VST.StreamHeader + VSS.ControlAddress + "/" + Rec.Description; } else sRecording = Rec.Description; string NodeData = Rec.ID + "~" + sRecording + "~" + Rec.DisplayName + "~" + "RECORDING"; txtRecording.Value = NodeData; } break; case "Tab_B_ViewSes.jpg": TreeNode XNode2 = tv.GetNodeFromIndex(tv.SelectedNodeIndex); string seeText2 = XNode2.Type; if(XNode2.Type != "RecordingSession") { return; } string[] sarray2 = XNode2.NodeData.Split(':'); string SessionId = Convert.ToString(sarray2[0]); string[] sRecordingIds = new string[XNode2.Nodes.Count]; int nCount = 0; while(nCount < XNode2.Nodes.Count) { TreeNode YNode = XNode2.Nodes[nCount]; if(YNode.Type != "Recording") goto SkipIt; else if (YNode == null) break; sRecordingIds[nCount] = YNode.NodeData; nCount++; SkipIt:{} } // Recordings AR = F.GetSessionById(SessionId); Recordings AR = new Recordings(); for(int p=0; p<nCount;p++) { string[] sarray3 = sRecordingIds[p].Split(':'); int RecordingId = Convert.ToInt32(sarray3[0],10); Recording Rec = F.GetRecording(RecordingId); AR.Add(Rec); } int GlobalPlayers = Convert.ToInt32(NumPlayers.Value); if((6 - GlobalPlayers) < AR.Count) { txtAlert.Value = "Action Aborted: Not enough Players to view all Session's Recordings. You must remove some of the current view windows before viewing this entire session."; return; } else if(AR.Count > 6) { txtAlert.Value = "Action Aborted: Not enough Players to view all Session's Recordings. You must manually add the recordings you wish to view from this session."; return; } string NodeData2 = ""; bool DidOnce = false; foreach(Recording r in AR) { if(DidOnce == false) { DidOnce=true; } else NodeData2 += "~"; VideoStorageServer VSS = F.GetVideoStorageServer(r.VideoStorageServerID); string sRecording = ""; if(VSS.ControlAddress != "Not Assigned") { if(VSS.StorageDirectory != "") sRecording = "mms://" + VSS.ControlAddress + "/" + VSS.StorageDirectory + "/" + r.Description; else sRecording = "mms://" + VSS.ControlAddress + "/" + r.Description; } else sRecording = r.Description; NodeData2 += r.ID + "*" + sRecording + "*" + r.DisplayName + "*" + "*" + "SESSION"; } if(NodeData2 != "") txtRecording.Value = NodeData2; break; case "Tab_B_ViewCam.jpg": TreeNode NCam = CTV.GetNodeFromIndex(CTV.SelectedNodeIndex); string seeText3 = NCam.Type; if(NCam.Type != "Camera") { return; } int EncoderId = 0; try { EncoderId = Convert.ToInt32(NCam.NodeData,10); } catch(Exception Err) { txtAlert.Value = "Unable to aquire Encoder Identification"; return; } OysterClassLibrary.StreamingEncoder SE = OSystem.GetStreamingEncoderById(EncoderId); string sURL = ""; switch(SE.CurrentStreamingEncoderType.Description) { // case "": // string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; // sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; // break; // case "rstp://": // string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; // sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; // break; // case @"http://": // string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; // sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; // break; case "VBrick": sURL = SE.StreamingHeader + "ip=" + SE.StreamingAddress + "&port=" + SE.StreamingPort; break; case "VBrick Sys": sURL = SE.StreamingHeader + "ip=" + SE.StreamingAddress + "&port=" + SE.StreamingPort; break; case "Oyster Encoder": //sURL = "Unreal`" + SE.ControlAddress + ":" + SE.StreamingPort + "`" + SE.StreamingAddress; sURL = "Unreal`" + SE.StreamingAddress + ":" + "5119" + "`" + SE.ControlAddress; break; default: string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; break; } string CameraData = SE.ID + "~" + sURL + "~" + SE.Description + "~" + "CAMERA"; txtRecording.Value = CameraData; break; case "Tab_B_ViewSce.jpg": TreeNode NScene = CTV.GetNodeFromIndex(CTV.SelectedNodeIndex); string seeText4 = NScene.Type; if(NScene.Type != "Scene") { return; } int GroupId = 0; int SceneId = 0; string SceneData = ""; try { SceneData = NScene.NodeData; } catch(Exception Err) { txtAlert.Value = "Unable to aquire Scene Identification"; return; } string[] ScenePacket = SceneData.Split('~'); try { GroupId = Convert.ToInt32(ScenePacket[0],10); SceneId = Convert.ToInt32(ScenePacket[1],10); } catch(Exception Err) { txtAlert.Value = "Action Aborted: Error loading Scenes!"; } OysterClassLibrary.Group CurGroup = null; OysterClassLibrary.Room CurRoom = null; OysterClassLibrary.Groups AllGroups = OSystem.GetALLGroups(false); foreach(OysterClassLibrary.Group G in AllGroups) { if(G.ID == GroupId) { CurGroup = G; break; } } foreach(OysterClassLibrary.Room CRM in CurGroup.CurrentRooms) { if(CRM.ID == SceneId) { CurRoom = CRM; break; } } string sURL2 = ""; bool DidOnce2 = false; string CameraData2 = ""; int NumberCamerasCount = 0; if(CurGroup.IsPublicAccess) { foreach(OysterClassLibrary.StreamingEncoder SE2 in CurGroup.CurrentStreamingEncoders) { bool CanContinue = false; if(SE2.CurrentRoom.ID == SceneId) { CanContinue = true; } if(CanContinue == false) { continue; } if(DidOnce2 == false) { DidOnce2=true; } else CameraData2 += "~"; NumberCamerasCount++; //switch(SE2.StreamingHeader) switch(SE2.CurrentStreamingEncoderType.Description) { // case "": // string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; // sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; // break; // case "rstp://": // string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; // sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; // break; // case @"http://": // string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; // sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; // break; case "VBrick": sURL2 = SE2.StreamingHeader + "ip=" + SE2.StreamingAddress + "&port=" + SE2.StreamingPort; break; case "VBrick Sys": sURL2 = SE2.StreamingHeader + "ip=" + SE2.StreamingAddress + "&port=" + SE2.StreamingPort; break; case "Oyster Encoder": //sURL2 = "Unreal`" + SE2.ControlAddress + ":" + SE2.StreamingPort + "`" + SE2.StreamingAddress; sURL2 = "Unreal`" + SE2.StreamingAddress + ":" + "5119" + "`" + SE2.ControlAddress; break; default: string VSSAddress = SE2.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; sURL2 = SE2.StreamingHeader + VSSAddress + @"/"+ SE2.ControlAddress; break; } CameraData2 += SE2.ID + "*" + sURL2 + "*" + SE2.Description + "*" + "CAMERA"; } } else { foreach(OysterClassLibrary.StreamingEncoder SE2 in CurRoom.AllCurrentStreamingEncoders) { if(SE2.RoomID == SceneId) { if(DidOnce2 == false) { DidOnce2=true; } else CameraData2 += "~"; NumberCamerasCount++; //switch(SE2.StreamingHeader) switch(SE2.CurrentStreamingEncoderType.Description) { // case "": // string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; // sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; // break; // case "rstp://": // string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; // sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; // break; // case @"http://": // string VSSAddress = SE.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; // sURL = SE.StreamingHeader + VSSAddress + @"/"+ SE.ControlAddress; // break; case "VBrick": sURL2 = SE2.StreamingHeader + "ip=" + SE2.StreamingAddress + "&port=" + SE2.StreamingPort; break; case "VBrick Sys": sURL2= SE2.StreamingHeader + "ip=" + SE2.StreamingAddress + "&port=" + SE2.StreamingPort; break; case "Oyster Encoder": //sURL2 = "Unreal`" + SE2.StreamingAddress + ":" + 5119 + "`" + SE2.ControlAddress; sURL2 = "Unreal`" + SE2.StreamingAddress + ":" + "5119" + "`" + SE2.ControlAddress; break; default: string VSSAddress = SE2.CurrentMediaBufferServer.CurrentForwardingServer.CurrentVideoStorageServer.ControlAddress; sURL2 = SE2.StreamingHeader + VSSAddress + @"/"+ SE2.ControlAddress; break; } CameraData2 += SE2.ID + "*" + sURL2 + "*" + SE2.Description + "*" + "CAMERA"; } } } int GlobalPlayers2 = Convert.ToInt32(NumPlayers.Value); if((6 - GlobalPlayers2) < NumberCamerasCount) { txtAlert.Value = "Action Aborted: Not enough Players to view all Scene's Cameras. You must remove some of the current view windows before viewing this entire scene."; return; } else if(NumberCamerasCount > 6) { txtAlert.Value = "Action Aborted: Not enough Players to view all Scene's Cameras. You must manually add the recordings you wish to view from this scene."; return; } txtRecording.Value = CameraData2; break; case "Tab_B_NewNote.jpg": //txtPausePlayers.Value = "Pause"; //dgNotes.Visible = false; //lblSync.Visible = true; //tbSync.Visible = true; //taNote.Visible = true; //lblNoNote.Visible = false; LockAll.Value = "true"; //Response.Write("<script language=javascript> Temp1.taNote.Focus() </script>"); //txtFocus.Value = "taNote"; //string[] NodeData3 = txtNotes.Value.Split(' '); if(txtTimeStamp.Value == "") tbDialogData.Value = "00:00:00~Please type your Note description here."; else tbDialogData.Value = txtTimeStamp.Value + "*Type your Note description here."; // if(txtTimeStamp.Value == "") // tbDialogData.Value = "00:00:00~Please type your Note description here."; // else // tbDialogData.Value = txtTimeStamp.Value + "~Please type your Note description here."; //TabStrip1.Enabled = false; //imgButtonView.ImageUrl = "images/btnCancel.jpg"; //imgButtonRename.ImageUrl = "images/btnConfirm.jpg"; //imgButtonView.Visible=true; //imgButtonRename.Visible=true; //imgButtonMove.Visible=false; //imgButtonMisc.Visible=false; //Session["NoteAction"] = "New"; //tbSync.Disabled = false; tbShowDialog.Value = "NewNote"; break; case "btnCancel.jpg": LockAll.Value = "false"; SwitchButtons(3); //RefreshGrid(); TabStrip1.Enabled = true; break; } }