OCS 2007 On-Premise Web Conferencing Meeting Expiration
2011-02-25 Updated
2011-01-28 Initial Post
I would really like someone to help me make sense of all the articles and posts about meeting expiration times and give me a definitive answer. And please don’t tell me about the ContentExpirationGracePeriod setting because it isn’t for setting the meeting expiration time itself—it’s for the content. Per the MS article, Managing Meeting Life Cycles, that setting is described as, “Grace period in addition to the expire time, after which the Web Conferencing Server should clean up content for a conference.” Note the terms “in addition to” and “content for a conference.” That means that it cleans up the content of the meeting after a certain grace period. It doesn’t mean that it sets a grace period for the meeting expiration time itself (and even if it did, that still doesn’t tell me how to set the actual meeting expiration time).
Note that if you search for “Live Meeting expiration time” or some form of that, you could get results that reference the Live Meeting hosted service. What I’m referring to here is known as “on-premise” Web conferencing using Live Meeting as the client to an internally-hosted Office Communications Server 2007 (non R2) on-premise Web Conferencing server.
The only article that that I found from MS that specifically mentions the meeting expiration time is that same article above, Managing Meeting Life Cycles. It states, “Expiration. When you reach the expiration time, the meeting and all associated meeting content are deleted from the database. The default expiration time is 14 days.” So the default expiration time for a meeting is 14 days. Great! But it doesn’t further specify if that applies to all meetings or just scheduled or ad-hoc (Meet Now) meetings.
Some articles, such as this MS TechNet Blog post break down the different meeting expiration times, as follows:
- For a single one time scheduled meeting, the conferences expires after 14 days.
- For a recurring meeting, the conference expires 14 days after the last instance of that meeting.
- For a recurring meeting with no end date, the conference never expires.
- For a Meet Now, the session expires in under 8 hours.
Where’s the author getting that information from? There’s no reference to a MS KB or white paper. It looks like a rehash of the info from the article below, but doesn't mention the “recommendations” part.
This WindowsNetworking.com article has excerpts from “Microsoft Office Communications Server Resource Kit.” It states the following:
It is up to the scheduling client to specify the expiration time when creating a conference on the server. The expiration time is communicated to each conferencing server that is involved when the conference is activated. Here are some recommendations based on the conference type:
- For one-time scheduled conferences, set the expiration time to be the scheduled end time plus 14 days.
- For recurring scheduled conferences with an end date, set the expiration time to be the scheduled end time of the last occurrence plus 14 days.
- For recurring scheduled conferences without specified end dates, do not set an expiration time or set null as the expiration time.
- For ad hoc IM or A/V conferences, set the expiration time to be eight hours.
Note
If no expiration time is specified by the client, the maximum grace period (six months) allowed by the server is used as the expiration time. This maximum allowed grace period is reset whenever a conference is activated. For example, after a conference is activated and deactivated, it will expire in six months. After three months, the meeting is activated again, and then the conference will expire in another six months, not three months.
Similarly, the Web Conferencing Server also runs a low-priority expiration thread similar to the one that runs on the front-end server. When woken up, the thread scans the conference content metadata file share and checks for the expiration time for each conference. The Web Conferencing Server adds a grace period (by default 14 days) on top of the expiration time. It deletes the content folder associated with a conference only if the conference expiration time plus the grace period has passed.
The excerpt states that the expiration times mentioned are “recommendations.” It does not specifically state that those are the actual, default, settings in OCS (maybe they are, but it doesn’t state that). There’s a MS OCS forum post that references the excerpt above, but doesn’t clarify anything about it.
Another thing that I haven’t been able to find is how to allow “the scheduling client to specify the expiration time.” In the Live Meeting client and Web Conferencing add-in, I don’t see any way to do this. Per this UC Blog post, regarding setting of meeting expiration times, it states, “In Live Meeting Console you can't. When using the web scheduler can.” The Web Scheduler isn’t a fully supported tool, from what I’ve read, and I don’t see that it’s necessary in most environments.
So at this point, there are a few options that I can think of to really get a definitive answer about the meeting expiration times. Here are the options:
1. Open a case with Microsoft. There would be a cost to do this.
2. Create all types of test meetings and test them for months to see when they’ll actually expire. This would obviously take too long and isn’t feasible.
3. Create all types of test meetings and then browse the RTC database (RTC is the default name for the OCS SQL database) and look at the records for all the test meetings to find their expiration dates. I’m not sure what the field name is for the expiration time and what format it’s stored in, but I could probably figure it out. The issue with this is that in some environments, there’s a separate DBA group that handles SQL, so trying to get access to the database can involve a lot of red tape. But I think this is the best option, so I’m going to have to set up a test OCS environment where I have access to browse the RTC database.
2011-02-25
I set up a test OCS environment where I have access to browse the RTC database and created some test meetings and noted their behavior.
I mentioned this somewhat in my initial post but it deserves another mention and further clarification. Web Conferencing is the OCS server component that allows online meetings between clients who are using either Office Communicator or Live Meeting (there are some other clients also, but these two are the most popular). The terms “conference” and “meeting” can be used interchangeably with regards to OCS.
I don’t know why MS just didn’t keep it simple and name the server component Web Meeting; I’ve personally never ran into anyone who uses the term “conference” to refer to what is commonly known as a “meeting.” Usually the term “conference” is used for very large meetings that occur every few months or years, with individuals from several different organizations, e.g., an annual conference for hospital CIOs.
So if a user using Live Meeting sets up a conference through OCS Web Conferencing, the client might use the terms “meeting” or “Live Meeting” to refer to that conference, e.g., “I’ll set up a Live Meeting later this week so we can discuss the sales forecast.” The users will most likely always use some form of the term “meeting,” while on the backend, OCS might refer to it as a “meeting” or “conference.”
Meeting/conference information is stored in the database table named Conference (dbo.Conference) in the rtc database. For each meeting, a record is created in that table.
^ rtc database --> Conference table (design view)
^ rtc database --> Conference table (content view). You can actually go in and change the time of a meeting to extend it--just use the same time format. Surprisingly, this table is pretty easy to understand.
^ I was messing around and tried to delete one of the meeting entries directly from the Conference table and got this error.
Here are some column names found in dbo.Conference and a brief description of them. (All times are in GMT time zone):
ExpiryTime Time meeting will expire (this will change if the meeting time is changed/extended).
ExternalConfId The meeting ID
ProvisionTime Time meeting was created
Title Meeting subject (name is taken from Outlook meeting entry via Conferencing Add-in for Microsoft Office Outlook)
I initially didn’t understand how OCS could keep track of the meetings created by the Conferencing Add-in for Microsoft Office Outlook because when a meeting is created in Outlook, it gets assigned a meeting ID right away, so I thought that the meeting information was static in OCS from that point on. But now I see that the Conferencing Add-in actually sends updates to OCS. So if you change the meeting time in Outlook, the Conferencing Add-in communicates that change to OCS and hence the meeting’s record in the rtc database will get updated.
I found it hard to believe that there’s no clear explanation of what “Modality Summary” means. I checked a few search engines and OCS docs and found nothing. That term is found in the OCS admin MMC under <Pool name> --> Database tab --> Conference Summary Reports --> Modality Summary.
So here’s what I found: A “modality” as it relates to OCS is basically the communications method used for a particular conference. For example, a group chat session uses the “chat” modality while an actual Web conference (Live Meeting) uses the “meeting” modality. There are other modalities also, but I only tested with those two.
Below are my test results regarding meeting expiration. They are consistent with the references I mentioned in my initial post. I have examples and screenshots which should help clarify and give a definitive answer to anyone else looking for this information.
Server components used in tests:
- Office Communications Server 2007 (Office Communications Server Web Conferencing DataMCUSvc.exe version 3.0.6362.0)
- SQL Server 2005 Enterprise Edition SP3 with a dedicated instance for OCS
Client components used in tests:
- Office Communicator 2007 R2 (3.5.6907.0)
- Live Meeting 2007 (8.0.6362.200)
- Outlook 2003 SP3 (11.8217.8221)
- Conferencing Add-in for Microsoft Office Outlook (3.0.3718.0)
Test – Group IM via Office Communicator
Meeting ID: 957AFC7237C3AF4AB8ACB085B61C1B08
MCU URL: https://chh-ocsfe-01.company-ad.sysadmin-e.com:444/liveserver/immcu/
Media Type: chat
Default expiration time: 8 hours
Notes: A regular IM between two users is not considered a “conference” and does not have a persistent entry in the rtc database. A group IM involves three or more users and is considered a conference. A two user IM session can turn into a group IM by clicking on the “Invite” option in OC and inviting other users. At that point, the conference will stay active in OCS until the last user closes out the chat window.
Test – Meet Now via Office Communicator (aka ad-hoc meeting)
Meeting ID: D0990AC2B9B43E43881F1F56502FEAB5
MCU URL: https://chh-ocsfe-01.company-ad.sysadmin-e.com:444/liveserver/immcu/
Media Type: chat
Default expiration time: 8 hours
Notes: This looks the same as a group IM; I don’t see any difference other than the fact that a MeetNow session that starts with only two users is considered a conference and has a persistent entry in the rtc database (group IM requires at least three users).
Test –Share Information Using Live Meeting via Office Communicator
Meeting ID: FAFE32E35C015047A9198E6107521B9E
MCU URL: https://chh-ocsfe-01.company-ad.sysadmin-e.com:444/liveserver/immcu/
Media Type: chat
MCU URL: https://chh-ocsfe-01.company-ad.sysadmin-e.com:444/liveserver/datamcu/
Media Type: meeting
Default expiration time: 8 hours
Notes: There’s one conference entry in the rtc database, but there can be two modalities in use—chat and meeting, if meeting attendees are also IMing each other outside of the conference chat. If all participants close their chat windows, only the meeting/datamcu modality remains.
^ Note the two different meeting types/modalities here.
Test – Schedule a Live Meeting via Outlook
Meeting ID: 4e59a2cc30af4084aa1cbba06361cb49
MCU URL: I didn’t actually start the meeting, but it should be datamcu
Media Type: I didn’t actually start the meeting, but it should be meeting
Default expiration time: 14 days after meeting start
Notes: The ProvisionTime field is when the meeting ID was assigned, which is right after clicking on the "Schedue a Live Meeting" button in Outlook. The Title field (meeting subject) isn’t populated until the meeting invitation is sent. Sending the invitation also updates the LastUpdateTime field.
Test – Schedule a Live Meeting via Outlook, Recurring weekly 10 weeks
Meeting ID: 229fedc44dd3412c86d7797effbfda09
MCU URL: I didn’t actually start the meeting, but it should be datamcu
Media Type: I didn’t actually start the meeting, but it should be meeting
Default expiration time: 14 days after last occurrence.
Notes: Created the meeting first, then clicked on “Make this a Live Meeting” button, which adds it to OCS. Later on I edited this meeting and extended it by 5 weeks (15 weeks total). After sending the update, OCS updated the expiration time to 14 days after the new last occurrence (14 days after the 15th week).
I went in a few days later and deleted/cancelled the entire meeting series. OCS immediately deleted the meeting from the rtc database.
Test – Schedule a Live Meeting via Outlook, Recurring with NO end date
Meeting ID: 24ebeaf8517540a3bfcdea9c824c6205
MCU URL: I didn’t actually start the meeting, but it should be datamcu
Media Type: I didn’t actually start the meeting, but it should be meeting
Default expiration time: NULL
Notes: How long is NULL? I’ve read that this can be six months or 365 days after the last occurrence. Either way, that’s a long time, but it should be a best practice to always include an end date for recurring meetings.
I checked the next day and found that the first three meetings (the meetings using group IM and ad-hoc/Meet Now) were deleted from the rtc database. Their meeting content and metadata folders were still in the folder shares, but should get deleted in 14 days because of the default 14 day grace period as configured in the ContentExpirationGracePeriod setting.
I went in 13 days later and verified that the meeting content and metadata folders were still there. The following evening (the 14th day), the meeting content and metadata folders were also still there. It wasn’t until sometime after 12:00 AM on Sunday, February 20, 2011 (the 15th day) did those folders get deleted. This must be related to some of the OCS maintenance processes that run after 12:00 AM.
Below are the three meeting content folders and their creation dates. So based on this test, it looks like the ContentExpirationGracePeriod doesn’t deleted the meeting content and metadata until the 15th day.
957AFC7237C3AF4AB8ACB085B61C1B08
Saturday, February 05, 2011, 6:35:21 PM
D0990AC2B9B43E43881F1F56502FEAB5
Saturday, February 05, 2011, 6:50:23 PM
FAFE32E35C015047A9198E6107521B9E
Saturday, February 05, 2011, 7:06:16 PM
I tried to re-enter one of the expired/deleted meetings (FAFE32E35C015047A9198E6107521B9E - Test –Share Information Using Live Meeting via Office Communicator) and was not able to. It looks like for scheduled meetings (created in Outlook) you can get into the content of expired meetings (as long as the content is within the ContentExpirationGracePeriod setting) by rescheduling the meeting. I didn’t try that, but it’s mentioned here and makes sense since OCS can just use the same meeting ID but change the time. The meeting ID is tied to the content, so this looks like that would work. But what about Meet Now/ad-hoc meetings? How can I “reschedule” them to get to the expired content?
^ Error when trying to enter expired/deleted meeting
2011-02-25
I set up a test OCS environment where I have access to browse the RTC database and created some test meetings and noted their behavior.
I mentioned this somewhat in my initial posting but it deserves another mention and further clarification. Web Conferencing is the OCS server component that allows online meetings between clients who are using either Office Communicator or Live Meeting (there are some other clients also, but these two are the most popular). The terms “conference” and “meeting” can be used interchangeably with regards to OCS.
I don’t know why MS just didn’t keep it simple and name the server component Web Meeting; I’ve personally never ran into anyone who uses the term “conference” to refer to what is commonly known as a “meeting.” Usually the term “conference” is used for very large meetings that occur every few months or years, with individuals from several different organizations, e.g., an annual conference for hospital CIOs.
So if a user using Live Meeting sets up a conference through OCS Web Conferencing, the client might use the terms “meeting” or “Live Meeting” to refer to that conference, e.g., “I’ll set up a Live Meeting later this week so we can discuss the sales forecast.” The users will most likely always use some form of the term “meeting,” while on the backend, OCS might refer to it as a “meeting” or “conference.”
Meeting/conference information is stored in the database table named Conference (dbo.Conference) in the rtc database. For each meeting, a record is created in that table.
Here are some column names found in dbo.Conference and a brief description of them. (All times are in GMT time zone):
ExpiryTime Time meeting will expire (this will change if the meeting time is changed/extended).
ExternalConfId The meeting ID
ProvisionTime Time meeting was created
Title Meeting subject (name is taken from Outlook meeting entry via Conferencing Add-in for Microsoft Office Outlook)
I initially didn’t understand how OCS could keep track of the meetings created by the Conferencing Add-in for Microsoft Office Outlook because when a meeting is created in Outlook, it gets a meeting ID right away, so I thought that the meeting information was static in OCS from that point on. But now I see that the Conferencing Add-in actually sends updates to OCS. So if you change the meeting time in Outlook, the Conferencing Add-in communicates that change to OCS and hence the meeting’s record in the rtc database will get updated.
I found it hard to believe that there’s no clear explanation of what “Modality Summary” means. I checked a few search engines and OCS docs and found nothing. That term is found in the OCS admin MMC under <Pool name> --> Database tab --> Conference Summary Reports --> Modality Summary.
So here’s what I found: A “modality” as it relates to OCS is basically the communications method used for a particular conference. For example, a group chat session uses the “chat” modality while an actual Web conference (Live Meeting) uses the “meeting” modality. There are other modalities also, but I only tested with those two.
Below are my test results regarding meeting expiration. They are consistent with the references I mentioned in my initial post. I have examples and screenshots which should help clarify and give a definitive answer to anyone else looking for this information.
Server components used in tests:
- Office Communications Server 2007 (Office Communications Server Web Conferencing DataMCUSvc.exe version 3.0.6362.0)
- SQL Server 2005 Enterprise Edition SP3 with a dedicated instance for OCS
Client components used in tests:
- Office Communicator 2007 R2 (3.5.6907.0)
- Live Meeting 2007 (8.0.6362.200)
- Outlook 2003 SP3 (11.8217.8221)
- Conferencing Add-in for Microsoft Office Outlook (3.0.3718.0)
Test – Group IM via Office Communicator
Meeting ID: 957AFC7237C3AF4AB8ACB085B61C1B08
MCU URL: https://chh-ocsfe-01.company-ad.sysadmin-e.com:444/liveserver/immcu/ Media Type: chat
Default expiration time: 8 hours
Notes: A regular IM between two users is not considered a “conference” and does not have a persistent entry in the rtc database. A group IM involves three or more users and is considered a conference. A two user IM session can turn into a group IM by clicking on the “Invite” option in OC and inviting other users. At that point, the conference will stay active in OCS until the last user closes out the chat window.
Test – Meet Now via Office Communicator (aka ad-hoc meeting)
Meeting ID: D0990AC2B9B43E43881F1F56502FEAB5
MCU URL: https://chh-ocsfe-01.company-ad.sysadmin-e.com:444/liveserver/immcu/ Media Type: chat
Default expiration time: 8 hours
Notes: This looks the same as a group IM; I don’t see any difference other than the fact that a MeetNow session that starts with only two users is considered a conference and has a persistent entry in the rtc database (group IM requires at least three users).
Test –Share Information Using Live Meeting via Office Communicator
Meeting ID: FAFE32E35C015047A9198E6107521B9E
MCU URL: https://chh-ocsfe-01.company-ad.sysadmin-e.com:444/liveserver/immcu/ Media Type: chat
MCU URL: https://chh-ocsfe-01.company-ad.sysadmin-e.com:444/liveserver/datamcu/
Media Type: meeting
Default expiration time: 8 hours
Notes: There’s one conference entry in the rtc database, but there can be two modalities in use—chat and meeting, if meeting attendees are also IMing each other outside of the conference chat. If all participants close their chat windows, only the meeting/datamcu modality remains.
Test – Schedule a Live Meeting via Outlook
Meeting ID: 4e59a2cc30af4084aa1cbba06361cb49
MCU URL: I didn’t actually start the meeting, but it should be datamcu
Media Type: I didn’t actually start the meeting, but it should be meeting
Default expiration time: 14 days after meeting start
Notes: The ProvisionTime field is when the meeting ID was assigned, which is right after clicking on the "Schedue a Live Meeting" button in Outlook. The Title field (meeting subject) isn’t populated until the meeting invitation is sent. Sending the invitation also updates the LastUpdateTime field.
Test – Schedule a Live Meeting via Outlook, Recurring weekly 10 weeks
Meeting ID: 229fedc44dd3412c86d7797effbfda09
MCU URL: I didn’t actually start the meeting, but it should be datamcu
Media Type: I didn’t actually start the meeting, but it should be meeting
Default expiration time: 14 days after last occurrence.
Notes: Created the meeting first, then clicked on “Make this a Live Meeting” button, which adds it to OCS. Later on I edited this meeting and extended it by 5 weeks (15 weeks total). After sending the update, OCS updated the expiration time to 14 days after the new last occurrence (14 days after the 15th week).
I went in a few days later and deleted/cancelled the entire meeting series. OCS immediately deleted the meeting from the rtc database.
Test – Schedule a Live Meeting via Outlook, Recurring with NO end date
Meeting ID: 24ebeaf8517540a3bfcdea9c824c6205
MCU URL: I didn’t actually start the meeting, but it should be datamcu
Media Type: I didn’t actually start the meeting, but it should be meeting
Default expiration time: NULL
Notes: How long is NULL? I’ve read that this can be six months or 365 days after the last occurrence. Either way, that’s a long time, but it should be a best practice to always include an end date for recurring meetings.
I tried to re-enter one of the expired/deleted meetings (FAFE32E35C015047A9198E6107521B9E - Test –Share Information Using Live Meeting via Office Communicator) and was not able to. It looks like for scheduled meetings (created in Outlook) you can get into the content of expired meetings (as long as the content is within the ContentExpirationGracePeriod setting) by rescheduling the meeting. I didn’t try that, but it’s mentioned here and makes sense since OCS can just use the same meeting ID and reschedule it. The meeting ID is tied to the content, so this looks like it would work. But what about Meet Now/ad-hoc meetings? How can I “reschedule” them to get to the expired content?
I checked the next day and found that the first three meetings (the meetings using group IM and ad-hoc/Meet Now) were deleted from the rtc database. Their meeting content and metadata folders were still in the folder shares, but should get deleted in 14 days because of the default 14 day grace period as configured in the ContentExpirationGracePeriod setting.
I went in 13 days later and verified that the meeting content and metadata folders were still there. The following evening (the 14th day), the meeting content and metadata folders were also still there. It wasn’t until sometime after 12:00 AM on Sunday, February 20, 2011 (the 15th day) did those folders get deleted. This must be related to some of the OCS maintenance processes that run after 12:00 AM.
Below are the three meeting content folders and their creation dates. So based on this test, it looks like the ContentExpirationGracePeriod doesn’t deleted the meeting content and metadata until the 15th day.
.
957AFC7237C3AF4AB8ACB085B61C1B08
Saturday, February 05, 2011, 6:35:21 PM
D0990AC2B9B43E43881F1F56502FEAB5
Saturday, February 05, 2011, 6:50:23 PM
FAFE32E35C015047A9198E6107521B9E
Saturday, February 05, 2011, 7:06:16 PM
August 24th, 2012 at 6:10 AM
[...] Полезные ссылки: Live Meeting: Best Before Date Lync 2010 Conference ID Expirtation OCS 2007 On-Premise Web Conferencing Meeting Expiration [...]