mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-11 10:45:00 +00:00
Update to poll meetings every 60 seconds Add property to allow for adjusting when Join button appears Refactor call connected event handler Adjust text for header for sharing-only meeting Add logic to handle waiting for host state
67 lines
2.0 KiB
C#
67 lines
2.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using Crestron.SimplSharp;
|
|
|
|
using Newtonsoft.Json;
|
|
|
|
namespace PepperDash.Essentials.Devices.Common.VideoCodec.Interfaces
|
|
{
|
|
/// <summary>
|
|
/// Describes a device that provides meeting information (like a ZoomRoom)
|
|
/// </summary>
|
|
public interface IHasMeetingInfo
|
|
{
|
|
event EventHandler<MeetingInfoEventArgs> MeetingInfoChanged;
|
|
|
|
MeetingInfo MeetingInfo { get; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Represents the information about a meeting in progress
|
|
/// Currently used for Zoom meetings
|
|
/// </summary>
|
|
public class MeetingInfo
|
|
{
|
|
[JsonProperty("id")]
|
|
public string Id { get; private set; }
|
|
[JsonProperty("name")]
|
|
public string Name { get; private set; }
|
|
[JsonProperty("host")]
|
|
public string Host { get; private set; }
|
|
[JsonProperty("password")]
|
|
public string Password { get; private set; }
|
|
[JsonProperty("shareStatus")]
|
|
public string ShareStatus { get; private set; }
|
|
[JsonProperty("isHost")]
|
|
public Boolean IsHost { get; private set; }
|
|
[JsonProperty("isSharingMeeting")]
|
|
public Boolean IsSharingMeeting { get; private set; }
|
|
[JsonProperty("waitingForHost")]
|
|
public Boolean WaitingForHost { get; private set; }
|
|
|
|
public MeetingInfo(string id, string name, string host, string password, string shareStatus, bool isHost, bool isSharingMeeting, bool waitingForHost)
|
|
{
|
|
Id = id;
|
|
Name = name;
|
|
Host = host;
|
|
Password = password;
|
|
ShareStatus = shareStatus;
|
|
IsHost = isHost;
|
|
IsSharingMeeting = isSharingMeeting;
|
|
WaitingForHost = waitingForHost;
|
|
}
|
|
}
|
|
|
|
public class MeetingInfoEventArgs : EventArgs
|
|
{
|
|
public MeetingInfo Info { get; private set; }
|
|
|
|
public MeetingInfoEventArgs(MeetingInfo info)
|
|
{
|
|
Info = info;
|
|
}
|
|
|
|
}
|
|
} |