For each slide set created, the Web Conferencing Server saves two encrypted XML files. The encryption algorithm is AES and the encryption key is the master key stored in the conference.xml file. Because the files are encrypted, their file names use an .exml file name extension.
Each slide set has a unique identifier. The slide set file names are created using the following patterns:
For example, for a slide set with the unique identifier abc, the file names are set-abc.exml and set-s-abc.exml.
The content of the two files is the same. The second file is provided for backup purposes. When the Web Conferencing Server needs to save new changes in the slide set with the unique identifier aaa, the server opens the first file—set-aaa.exml—and attempts to save the changes to that file. If the original write operation succeeds, the Web Conferencing Server creates a copy of set-aaa.exml and renames the copy slide-s-aaa.exml. If the write operation fails, the Web Conferencing Server deletes set-aaa.exml, creates a copy of set-s-aaa.exml, and renames the copy set-aaa.exml.
The following figure shows the logical flow of the update operation.
The update procedure for slide sets is called every five minutes. This value is hard coded and cannot be changed. If an update operation fails, the changes made to a slide set in the past five minutes are not saved. If the Web Conferencing Server stops running during this period, changes to the slides can be lost. However, the Web Conferencing Server continually tries to update the files every five minutes. As a result, if one attempt fails, the Web Conferencing Server can attempt to save the content later.
Each slide set file contains the XML serialization of the data required to recreate the slide set content. The generic layout for this XML is as follows:
- A root node that contains information about the slide set (for
example, the name, creator, and time when the slide set was
created).
- A child node for each slide in the slide set. This node
contains the information about the slide (for example, the name,
creator, time when the slide was created, type of slide, a link to
the original document, and a link to the images representing the
slide).
- Based on the type of slide, there can be child nodes. For
example, there can be a child node for the annotations in a
PowerPoint slide or a child node for the question and answer
choices in a poll slide.
The file is a snapshot of the current content for a given slide set. The file does not store historical information such as deleted slides or the values for attributes before they have been updated.
There are two types of slides:
- Slides for which all the slide content is shared between Web
Conferencing Server and meeting clients using only the PSOM
channel. The following table lists the slide types for which all
content is shared over PSOM.
Slide Type Slide Content Shared over PSOM Web slide
Name, URL
Poll Slide
Name, question, answer choices
Text Slide
Name, content
Application Sharing Slide
Name, type of sharing (that is, Desktop or Application), color depth, process ID
- Slides for which some part of the content is shared between the
Web Conferencing Server and meeting clients over PSOM and some
other part of the content is shared between the Web Components
Server and meeting clients over HTTPS. The following table lists
the slide types for which content is partially shared over PSOM and
partially shared over HTTPS.
Slide Type Slide Content Shared over PSOM Slide Content Shared over HTTPS Whiteboard
Name, annotations
Background image (white rectangle)
Snapshot
Name, annotations
Background image (the desktop screen capture from the conference presenter)
PowerPoint
Name, annotations
PNG files for the large slide image and for the slide thumbnail; original PPT document
Word Document
Name, annotations
PNG files for the big image and for thumbnail;
original MDI document
Multimedia
Name
Original multimedia file; the chunk files
For slides for which some content is shared over PSOM and some is shared over HTTPS, the content that is shared over HTTPS is stored in the conference content folders. The conference metadata file for the slide set stores only the link to the conference content file and the encryption key.
For example, if you have a slide generated from a PowerPoint slide, under the XML node for that slide you find the:
- Randomly generated name for the original uploaded PPT file.
- Encryption key for the PPT file.
- Randomly generated name for the large image of the slide in PNG
format.
- Encryption key for the PNG file.
- Randomly generated name for the thumbnail image of the slide in
PNG format.
- Encryption key for the PNG file.
You can use the names of these PPT and PNG files to search for the slide content in the conference content folders.
Metadata File for Poll Slide
The following is an example of the XML content for a Poll slide.
Copy Code | |
---|---|
<poll-slide name="[ Poll 1 ]" recording-id="" createdby="sip:vw01@rtcdev.nttest.contoso.com [vw01]"> <question>What day is today?</question> <choice>MON</choice> <choice>TUE</choice> <choice>WED</choice> <choice>THU</choice> <choice>FRI</choice> <choice>SAT</choice> <choice>SUN</choice> </poll-slide> |
Metadata file for Text Slide
The following is an example of the XML content for a Text slide.
Copy Code | |
---|---|
<text-slide name="[ Text Slide 1 ]" recording-id="" createdby="sip:vw01@rtcdev.nttest.contoso.com [vw01]" > <current-text> This is the content of a text slide I've just typed </current-text> </text-slide> |
Metadata File for Web Slide
The following is an example of the XML content for a Web slide.
Copy Code | |
---|---|
<web-slide name="[ Web Slide 1 ]" recording-id="" createdby="sip:vw01@rtcdev.nttest.contoso.com [vw01]" url="http://microsoft.com"> </web-slide> |
Metadata File for Whiteboard Slide
The following is an example of the XML content for a Whiteboard slide.
Copy Code | |
---|---|
<image-slide name="[ White Board 1 ]" recording-id="" createdby="sip:vw01@rtcdev.nttest.contoso.com [vw01]" image-width-attr="704" image-height-attr="528" page-number="-1" rich-slide-type="Whiteboard" thumbnail-aspect="1.33333337"> <ann COLOR="0" AUTHOR="vw01" TYPE="1" recording-id=""> 01000000000a0075007a00af007100cc009c00c000ba009d00b0009b009d00f40084011400980116009901160099 </ann> <ann COLOR="0" AUTHOR="vw01" TYPE="23" recording-id=""> 17000000009700fa01090144 </ann> </image-slide> |
Metadata File for Snapshot Slide
The following is an example of the XML content for a Snapshot slide.
Copy Code | |
---|---|
<image-slide name="[ Snapshot 1 ]" recording-id="" createdby="sip:vw01@rtcdev.nttest.contoso.com [vw01]" image="x8d51284585d1.epng" key="a51fe0f3e26813761e12435a9c2c5d89" image-filesize-attr="52865" image-width-attr="388" image-height-attr="369" page-number="-1" rich-slide-type="Image" thumbnail-image="xe31d11b0506d.epng" thumbnail-key="a51fe0f3e26813761e12435a9c2c5d89" thumbnail-aspect="1.0" compliance-image="xcb4de1d7b784-aae.png"> <ann COLOR="0" AUTHOR="vw01" TYPE="1" recording-id=""> 01000000000a0075007a00af007100cc009c00c000ba009d00b0009b009d00f40084011400980116009901160099 </ann> <ann COLOR="0" AUTHOR="vw01" TYPE="23" recording-id=""> 17000000009700fa01090144 </ann> </image-slide> |
Metadata File for Word Document Slide
The following is an example of the XML content for a Word document slide.
Copy Code | |
---|---|
<image-slide name="Page 1" slideset-name="test.txt" recording-id="" createdby="sip:vw01@rtcdev.nttest.contoso.com [vw01]" image="xebc7f400248d.epng" key="ce3de85a37a8a6fc6b3b702b70a1a925" image-filesize-attr="6778" image-width-attr="816" image-height-attr="1056" document="x9838edc7b0d2.emdi" document-key="8ca685d4bcfb9afe94cc27ea4bd0a2e1" document-filesize-attr="1537" rich-slide-type="Modi" thumbnail-image="x908006115ceb.epng" thumbnail-key="40d224ca035ee8f77ba9c7342da17b1b" thumbnail-aspect="0.772727251" thumbnail-filesize-attr="748" compliance-image="xf3ae96bf86cd-aag-pngimage0.png" compliance-document="xbe356497761b-aag-x.mdi"> </image-slide> |
Metadata File for Application Sharing Slide
The following is an example of the XML content for an Application Sharing slide.
Copy Code | |
---|---|
<demo-slide name="Command Prompt - vw01" recording-id="" createdby=sip:vw01@rtcdev.nttest.microsoft.com [vw01] shareProcInfo=sip:vw01@rtcdev.nttest.contoso.com - 01C7E74B9137AC70 shareHwnd="262300" shareSpeed="1" sharePid="4592" slideHotKey="19" slideColor="24" shareTitle="Command Prompt" slideCtrl="1" shareType="1"> </demo-slide> |