mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-15 04:34:56 +00:00
Changes to keep from clearing meeting list
This commit is contained in:
@@ -133,16 +133,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec
|
|||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
bool value;
|
var value = ActiveCalls != null && ActiveCalls.Any(c => c.IsActiveCall);
|
||||||
|
|
||||||
if (ActiveCalls != null)
|
|
||||||
{
|
|
||||||
value = ActiveCalls.Any(c => c.IsActiveCall);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
value = false;
|
|
||||||
}
|
|
||||||
return value;
|
return value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -503,12 +494,11 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec
|
|||||||
|
|
||||||
private void UpdateMeetingsList(IHasScheduleAwareness codec, BasicTriList trilist, VideoCodecControllerJoinMap joinMap)
|
private void UpdateMeetingsList(IHasScheduleAwareness codec, BasicTriList trilist, VideoCodecControllerJoinMap joinMap)
|
||||||
{
|
{
|
||||||
var clearBytes = XSigHelpers.ClearOutputs();
|
var currentTime = DateTime.Now;
|
||||||
|
var currentMeetings =
|
||||||
|
codec.CodecSchedule.Meetings.Where(m => m.StartTime >= currentTime || m.EndTime >= currentTime).ToList();
|
||||||
|
|
||||||
trilist.SetString(joinMap.Schedule.JoinNumber,
|
var meetingsData = UpdateMeetingsListXSig(currentMeetings);
|
||||||
Encoding.GetEncoding(XSigEncoding).GetString(clearBytes, 0, clearBytes.Length));
|
|
||||||
|
|
||||||
var meetingsData = UpdateMeetingsListXSig(codec.CodecSchedule.Meetings);
|
|
||||||
|
|
||||||
trilist.SetString(joinMap.Schedule.JoinNumber, meetingsData);
|
trilist.SetString(joinMap.Schedule.JoinNumber, meetingsData);
|
||||||
|
|
||||||
@@ -520,21 +510,14 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
trilist.SetUshort(joinMap.MeetingCount.JoinNumber, (ushort)codec.CodecSchedule.Meetings.Count);
|
trilist.SetUshort(joinMap.MeetingCount.JoinNumber, (ushort)currentMeetings.Count);
|
||||||
}
|
}
|
||||||
|
|
||||||
private string UpdateMeetingsListXSig(List<Meeting> meetings)
|
private string UpdateMeetingsListXSig(List<Meeting> meetings)
|
||||||
{
|
{
|
||||||
/*const int maxCalls = 8;
|
|
||||||
const int maxStrings = 5;
|
|
||||||
const int offset = 6;
|
|
||||||
var callIndex = 0;
|
|
||||||
var digitalIndex = maxStrings*maxCalls;
|
|
||||||
*/
|
|
||||||
|
|
||||||
const int maxMeetings = 3;
|
const int maxMeetings = 3;
|
||||||
const int maxDigitals = 1;
|
const int maxDigitals = 2;
|
||||||
const int maxStrings = 6;
|
const int maxStrings = 7;
|
||||||
const int offset = maxDigitals + maxStrings;
|
const int offset = maxDigitals + maxStrings;
|
||||||
var digitalIndex = maxStrings*maxMeetings; //15
|
var digitalIndex = maxStrings*maxMeetings; //15
|
||||||
var stringIndex = 0;
|
var stringIndex = 0;
|
||||||
@@ -544,16 +527,18 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec
|
|||||||
/*
|
/*
|
||||||
* Digitals
|
* Digitals
|
||||||
* IsJoinable - 1
|
* IsJoinable - 1
|
||||||
|
* IsDialable - 2
|
||||||
*
|
*
|
||||||
* Serials
|
* Serials
|
||||||
* Organizer - 1
|
* Organizer - 1
|
||||||
* Title - 2
|
* Title - 2
|
||||||
* Start Date - 3
|
* Start Date - 3
|
||||||
* Start Time - 3
|
* Start Time - 4
|
||||||
* End Date - 4
|
* End Date - 5
|
||||||
* End Time - 4
|
* End Time - 6
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
foreach(var meeting in meetings)
|
foreach(var meeting in meetings)
|
||||||
{
|
{
|
||||||
var currentTime = DateTime.Now;
|
var currentTime = DateTime.Now;
|
||||||
@@ -564,20 +549,43 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec
|
|||||||
|
|
||||||
//digitals
|
//digitals
|
||||||
tokenArray[digitalIndex] = new XSigDigitalToken(digitalIndex + 1, meeting.Joinable);
|
tokenArray[digitalIndex] = new XSigDigitalToken(digitalIndex + 1, meeting.Joinable);
|
||||||
|
tokenArray[digitalIndex + 1] = new XSigDigitalToken(digitalIndex + 2, meeting.Id != "0");
|
||||||
|
|
||||||
//serials
|
//serials
|
||||||
tokenArray[stringIndex] = new XSigSerialToken(stringIndex + 1, meeting.Organizer);
|
tokenArray[stringIndex] = new XSigSerialToken(stringIndex + 1, meeting.Organizer);
|
||||||
tokenArray[stringIndex + 1] = new XSigSerialToken(stringIndex + 2, meeting.Title);
|
tokenArray[stringIndex + 1] = new XSigSerialToken(stringIndex + 2, meeting.Title);
|
||||||
tokenArray[stringIndex + 2] = new XSigSerialToken(stringIndex + 3, meeting.StartTime.ToShortDateString());
|
tokenArray[stringIndex + 2] = new XSigSerialToken(stringIndex + 3, meeting.StartTime.ToShortDateString());
|
||||||
tokenArray[stringIndex + 3] = new XSigSerialToken(stringIndex + 3, meeting.StartTime.ToShortTimeString());
|
tokenArray[stringIndex + 3] = new XSigSerialToken(stringIndex + 4, meeting.StartTime.ToShortTimeString());
|
||||||
tokenArray[stringIndex + 4] = new XSigSerialToken(stringIndex + 4, meeting.EndTime.ToShortDateString());
|
tokenArray[stringIndex + 4] = new XSigSerialToken(stringIndex + 5, meeting.EndTime.ToShortDateString());
|
||||||
tokenArray[stringIndex + 5] = new XSigSerialToken(stringIndex + 5, meeting.EndTime.ToShortTimeString());
|
tokenArray[stringIndex + 5] = new XSigSerialToken(stringIndex + 6, meeting.EndTime.ToShortTimeString());
|
||||||
|
tokenArray[stringIndex + 6] = new XSigSerialToken(stringIndex + 7, meeting.Id);
|
||||||
|
|
||||||
|
|
||||||
digitalIndex += maxDigitals;
|
digitalIndex += maxDigitals;
|
||||||
meetingIndex += offset;
|
meetingIndex += offset;
|
||||||
stringIndex += maxStrings;
|
stringIndex += maxStrings;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
while (meetingIndex < maxMeetings*offset)
|
||||||
|
{
|
||||||
|
digitalIndex += maxDigitals;
|
||||||
|
meetingIndex += offset;
|
||||||
|
stringIndex += maxStrings;
|
||||||
|
|
||||||
|
//digitals
|
||||||
|
tokenArray[digitalIndex] = new XSigDigitalToken(digitalIndex + 1, false);
|
||||||
|
tokenArray[digitalIndex + 1] = new XSigDigitalToken(digitalIndex + 2, false);
|
||||||
|
|
||||||
|
//serials
|
||||||
|
tokenArray[stringIndex] = new XSigSerialToken(stringIndex + 1, String.Empty);
|
||||||
|
tokenArray[stringIndex + 1] = new XSigSerialToken(stringIndex + 2, String.Empty);
|
||||||
|
tokenArray[stringIndex + 2] = new XSigSerialToken(stringIndex + 3, String.Empty);
|
||||||
|
tokenArray[stringIndex + 3] = new XSigSerialToken(stringIndex + 4, String.Empty);
|
||||||
|
tokenArray[stringIndex + 4] = new XSigSerialToken(stringIndex + 5, String.Empty);
|
||||||
|
tokenArray[stringIndex + 5] = new XSigSerialToken(stringIndex + 6, String.Empty);
|
||||||
|
tokenArray[stringIndex + 6] = new XSigSerialToken(stringIndex + 7, String.Empty);
|
||||||
|
}
|
||||||
|
|
||||||
return GetXSigString(tokenArray);
|
return GetXSigString(tokenArray);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user