diff --git a/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/IHasCodecSelfViewMessenger.cs b/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/IHasCodecSelfViewMessenger.cs index 885c786d..dd31e547 100644 --- a/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/IHasCodecSelfViewMessenger.cs +++ b/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/IHasCodecSelfViewMessenger.cs @@ -28,6 +28,10 @@ namespace PepperDash.Essentials.AppServer.Messengers { base.RegisterActions(); + AddAction("/fullStatus", (id, content) => SendFullStatus()); + + AddAction("/cameraSelfViewStatus", (id, content) => SendFullStatus()); + AddAction("/cameraSelfView", (id, content) => _selfView.SelfViewModeToggle()); _selfView.SelfviewIsOnFeedback.OutputChange += SelfviewIsOnFeedback_OutputChange; @@ -38,6 +42,11 @@ namespace PepperDash.Essentials.AppServer.Messengers PostCameraSelfView(); } + private void SendFullStatus() + { + PostCameraSelfView(); + } + private void PostCameraSelfView() { try diff --git a/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/IHasDirectoryMessenger.cs b/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/IHasDirectoryMessenger.cs index 677d31c1..8859a9fc 100644 --- a/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/IHasDirectoryMessenger.cs +++ b/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/IHasDirectoryMessenger.cs @@ -30,6 +30,10 @@ namespace PepperDash.Essentials.AppServer.Messengers { base.RegisterActions(); + AddAction("/fullStatus", (id, content) => SendFullStatus()); + + AddAction("/directoryStatus", (id, content) => SendFullStatus()); + AddAction("/getDirectory", (id, content) => GetDirectoryRoot()); AddAction("/directoryById", (id, content) => @@ -116,6 +120,17 @@ namespace PepperDash.Essentials.AppServer.Messengers { _directory.GetDirectoryParentFolderContents(); } + + private void SendFullStatus() + { + PostStatusMessage(new IHasDirectoryStateMessage + { + CurrentDirectory = _directory.CurrentDirectoryResult, + InitialPhonebookSyncComplete = _directory.PhonebookSyncState.InitialSyncComplete, + HasDirectory = true, + HasDirectorySearch = true, + }); + } } public class IHasDirectoryStateMessage : DeviceStateMessageBase @@ -125,5 +140,12 @@ namespace PepperDash.Essentials.AppServer.Messengers [JsonProperty("initialPhonebookSyncComplete", NullValueHandling = NullValueHandling.Ignore)] public bool? InitialPhonebookSyncComplete { get; set; } + + [JsonProperty("hasDirectory", NullValueHandling = NullValueHandling.Ignore)] + public bool? HasDirectory { get; set; } + + [JsonProperty("hasDirectorySearch", NullValueHandling = NullValueHandling.Ignore)] + public bool? HasDirectorySearch { get; set; } + } } diff --git a/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/VideoCodecBaseMessenger.cs b/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/VideoCodecBaseMessenger.cs index 285d3f3f..58e5da2f 100644 --- a/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/VideoCodecBaseMessenger.cs +++ b/src/PepperDash.Essentials.MobileControl.Messengers/Messengers/VideoCodecBaseMessenger.cs @@ -227,13 +227,6 @@ namespace PepperDash.Essentials.AppServer.Messengers }; } - if (Codec is IHasDirectory directoryCodec) - { - status.HasDirectory = true; - status.HasDirectorySearch = true; - status.CurrentDirectory = directoryCodec.CurrentDirectoryResult; - } - var codecType = Codec.GetType(); status.CameraSelfViewIsOn = Codec is IHasCodecSelfView && (Codec as IHasCodecSelfView).SelfviewIsOnFeedback.BoolValue; @@ -387,12 +380,6 @@ namespace PepperDash.Essentials.AppServer.Messengers public string CurrentDialString { get; set; } - /// - /// Gets or sets the CurrentDirectory - /// - [JsonProperty("currentDirectory", NullValueHandling = NullValueHandling.Ignore)] - public CodecDirectory CurrentDirectory { get; set; } - /// /// Gets or sets the DirectorySelectedFolderName @@ -403,11 +390,7 @@ namespace PepperDash.Essentials.AppServer.Messengers [JsonProperty("hasCameras", NullValueHandling = NullValueHandling.Ignore)] public bool? HasCameras { get; set; } - [JsonProperty("hasDirectory", NullValueHandling = NullValueHandling.Ignore)] - public bool? HasDirectory { get; set; } - [JsonProperty("hasDirectorySearch", NullValueHandling = NullValueHandling.Ignore)] - public bool? HasDirectorySearch { get; set; } [JsonProperty("hasPresets", NullValueHandling = NullValueHandling.Ignore)] public bool? HasPresets { get; set; }