mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-01-30 21:04:48 +00:00
feat(essentials): Adds ability to read camera info from codec rather than just from config
This commit is contained in:
@@ -646,7 +646,31 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.Cisco
|
||||
/// <param name="e"></param>
|
||||
void SyncState_InitialSyncCompleted(object sender, EventArgs e)
|
||||
{
|
||||
SetUpCameras(_config.CameraInfo);
|
||||
// Check for camera config info first
|
||||
if (_config.CameraInfo.Count > 0)
|
||||
{
|
||||
SetUpCameras(_config.CameraInfo);
|
||||
}
|
||||
else
|
||||
{
|
||||
try
|
||||
{
|
||||
var cameraInfo = new List<CameraInfo>();
|
||||
|
||||
foreach (var camera in CodecStatus.Status.Cameras.Camera)
|
||||
{
|
||||
var id = Convert.ToUInt16(camera.id);
|
||||
var info = new CameraInfo() { CameraNumber = id, Name = string.Format("{0} {1}", camera.Manufacturer, camera.Model), SourceId = camera.DetectedConnector.ConnectorId };
|
||||
cameraInfo.Add(info);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Debug.Console(2, this, "Error generating camera info from codec status data: {0}", ex);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Fire the ready event
|
||||
SetIsReady();
|
||||
|
||||
@@ -262,11 +262,25 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.Cisco
|
||||
public string Value { get; set; }
|
||||
}
|
||||
|
||||
public class DectectedConnector
|
||||
{
|
||||
public string Value { get; set; }
|
||||
|
||||
public int ConnectorId
|
||||
{
|
||||
get
|
||||
{
|
||||
return Convert.ToUInt16(Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class Camera
|
||||
{
|
||||
public string id { get; set; }
|
||||
public Capabilities Capabilities { get; set; }
|
||||
public Connected Connected { get; set; }
|
||||
public DectectedConnector DetectedConnector { get; set; }
|
||||
public Flip Flip { get; set; }
|
||||
public HardwareID HardwareID { get; set; }
|
||||
public MacAddress MacAddress { get; set; }
|
||||
|
||||
Reference in New Issue
Block a user