Although on-premises web conferencing meetings organized with Office Communications Server (OCS) are not perishable products (and thus they don’t require a “best-before date”), there is some configuration involved around meeting life-cycle that I would like to explore a little bit further.
Suppose you organize a web conference using the Live Meeting client or the Conferencing Add-in for Microsoft Outlook. You invite some attendees and during the meeting some content is generated and uploaded (e.g. PowerPoint slides, polls, whiteboard, etc.).
Three weeks after this specific meeting has occurred, you want to review some of the annotations that were made on the slides and some of the brainstorming carved on the whiteboard. “No problem”, you think. After locating the appointment on the Outlook Calendar, you click the “Join the meeting” hyperlink, but suddenly the following error pops-up:
The meeting has ended or the information you entered was not recognized. Contact the meeting organizer for more information.
Before going any further, let’s review some of the concepts associated with meeting life-cycle:
With the present release of OCS it’s not possible to control the duration of the meeting expiration period (although the content grace period can be extended). This is the default behavior for the meeting expiration time (txs Tarang Mittal):
Hopefully, after this explanation we can now understand the error message we got when trying to rejoin a meeting that had ended 3 weeks before. Since the expiration time is 14 days, it’s no longer possible to rejoin it. The good news is that we have an additional 14 days for the content to expire, after the default meeting expiration period. So, by simply rescheduling the meeting using Outlook, we can now successfully reopen it and check the content we were looking for.
There are some parameters in OCS that can only be controlled using WMI, such as the ones involved with meeting life-cycle.
For conference deactivation, there are two pool-level WMI settings that are stored as properties in the MSFT_SIPMeetingScheduleSetting WMI class in the root\CIMV2 namespace:
For conference expiration, there is one pool-level WMI setting that is stored as a property in the MSFT_SIPDataMCUCapabilitySetting WMI class in the root\CIMV2 namespace:
To use VBScript to modify deactivation and expiration WMI settings
The following 2 scripts will modify the WMI properties previously discussed. They must be run on the OCS Web Conferencing Server using the appropriate administrative permissions.
' ' ContentExpirationGracePeriod ' Dim objLocator Dim objService Dim objInstances Dim objInstance Wscript.Echo "Connecting to local WMI store..." Set objLocator = CreateObject("WbemScripting.SWbemLocator") Set objService = objLocator.ConnectServer(".", "root\cimv2") Wscript.Echo "select * from MSFT_SIPDataMCUCapabilitySetting" Set objInstances = objService.ExecQuery _ ("select * from MSFT_SIPDataMCUCapabilitySetting where backend=""(local)\\rtc""") ' For OCS Enterprise Edition: backend=""server name\\sql instance"" If IsNull(objInstances) Or (objInstances.Count = 0) Then Wscript.Echo "Error: No instance" Else For Each objInstance in objInstances objInstance.Properties_.Item("ContentExpirationGracePeriod").Value = 365 objInstance.Put_ wscript.Echo objInstance.Properties_.Item("ContentExpirationGracePeriod").Value wscript.Echo "Done!" Exit For Next End If Wscript.Echo ""
' MaxMeetingLength ' Dim objLocator Dim objService Dim objInstances Dim objInstance Wscript.Echo "Connecting to local WMI store..." Set objLocator = CreateObject("WbemScripting.SWbemLocator") Set objService = objLocator.ConnectServer(".", "root\cimv2") Wscript.Echo "select * from MSFT_SIPMeetingScheduleSetting" Set objInstances = objService.ExecQuery _ ("select * from MSFT_SIPMeetingScheduleSetting where backend=""(local)\\rtc""") ' For OCS Enterprise Edition: backend=""server name\\sql instance"" If IsNull(objInstances) Or (objInstances.Count = 0) Then Wscript.Echo "Error: No instance" Else For Each objInstance in objInstances objInstance.Properties_.Item("MaxMeetingLength").Value = 8760 objInstance.Put_ wscript.Echo objInstance.Properties_.Item("MaxMeetingLength").Value wscript.Echo "Done!" Exit For Next End If Wscript.Echo ""
For more information, please read Managing Meeting Life Cycles.
good explaination....a few questions:
"For a recurring meeting with no end date, the conference never expires"
does that imply that meeting content for such meeting always persists ?
Even if the meeting is not in use for more than 28 days since it was last accessed ? (do understand that recurrence perio may be monthly)
How are meeting expiration + content expiration grace period play when organiser leaves the organisation ...ie., users AD account deleted or user is disabled on OCS.
Thanks