Publishing PowerPoint Presentations in Connect Meetings

There are different techniques that a Connect content author or Connect Meeting Host may employ to publish PowerPoint content in Adobe Connect Meetings. This article discusses them and how they differ and how to choose the correct option and avoid common pitfalls. The four basic techniques are:

  • Direct upload or drag and drop into a Connect Share Pod
  • Upload to the Connect Content Library and then link to the Meeting Share Pod
  • Publish to the Connect Content Library using Adobe Presenter and then link to the Meeting Share Pod
  • Publish locally using Presenter to a zip package and upload to Connect

I will summarize each of these and then compare them and offer some tips to help make sure that the published converted SWF closely matches the original PPTX.

The first and perhaps most commonly used option by Meeting Hosts is to upload a PPTX directly to a Meeting room Share Pod. The ease and simplicity of this approach certainly accounts for its popularity: You can simply drag and drop a PPTX presentation into the Share Pod or navigate to the source PPTX and upload it.

pptxa.fw

pptxb.fw

Drag and drop is pictured above. As the PPTX is dropped into the Share Pod from the local client, the boarder around the Share Pod will appear with a yellow highlight.

pptx3.fw

File conversion begins as soon as you drop the file into the Share Pod.

pptx5.fw

The PPTX is converted and ready for viewing as shown above.

pptx.fw

You may also browse to the PPTX file locally from the Share Pod menu drop-down: As a Connect Meeting Host or Presenter, click the down arrow in a Connect Meeting Share Pod and choose “Share Document” as shown above.

pptx1.fw

Choose “Browse My Computer” (We will discuss content in the shared library anon).

pptx2.fw

Browse to the PPTX locally and select it.

pptx3.fw

The size of the file and bandwidth available will determine the amount of time it takes to upload.

pptx4.fw

Likewise with conversion.

pptx5.fw

The PPTX is converted and ready for viewing.

 

Uploading to the Content library is also a common method of Publishing a PowerPoint to Connect. This technique provides a URL for on-demand playback of a the PPTX as well as a single source for use in multiple Connect Meeting rooms. Multiple Connect Meeting rooms may share a presentation from the same source in the Content Library thereby simplifying editing and version control.

pptx6.fw

Browse to the Content Library in Connect Central and choose “New Content” as shown above. Note that a Meeting Host will have access to “My Connect” by default but may need to request access to “Shared Content” and “User Content” folders depending on prior account-wide administrative permissions set.

pptx7.fw

Browse to the desired PPTX on your client or share.

pptx8.fw

Select the desired PPTX upload.

pptx9.fw

Name the Presentation in Connect Central, create a custom URL and summarize the content for administrative reference if desired.

pptx10.fw

There will be a delay while the content is processed; see the spinning wheel in the upper left.

pptx11.fw

Once completed, the active URL and summary will be displayed.

pptx12.fw

To use the Presentation uploaded to the Content Library in a Connect Meeting, simply point the share pod to the Content Library and link it to the meeting.

pptx5.fw

It will appear instantaneously in the Connect Meeting as it is already uploaded to the Connect server.

 

The third means of uploading a presentation to Connect employs Adobe Presenter. This is the richest and most accurate PowerPoint conversion option. Presenter integrates with Connect, in fact, Connect had its start as Presenter: Presidia and Breeze 3.0 were originally based on PowerPoint on-demand content publishing to SWF. The integration of Flash Communication Server in Breeze 3.0.8 led eventually to the current Adobe Media Server and the Tomcat Application server platform along with such feature rich integration as Adobe Media Gateway for telephony and Adobe Experience Manager for Events management. Presenter has a long history and it is a very rich on-demand learning tool: http://www.adobe.com/products/presenter.html

pptx14.fw

Once installed, Presenter appears as a menu option in PowerPoint and you can drive publishing to Connect in a number of ways.

pptx28a.fw

pptx15.fw

Out of necessity, here I will be intentionally terse and ignore a plethora of Presenter features and focus only on using Presenter to publish PowerPoint content for use in a Connect Meeting. The dialog above is under Adobe Presenter>Presentation menu items in PowerPoint with Adobe Presenter installed.

pptx16.fw

The dialog above shows Presenter publishing options, among them is Adobe Connect which pushes the published Presentation to the Adobe Connect Content Library. Presenter is able to publish to any Connect server to which the author has access and permissions by its domain name.

pptx17.fw

Presenter launches a browser to log into the Connect Central Content Library.

pptx10.fw

By default Presenter will log into the Connect Central “My Content” folder belonging to the Presenter Author.

pptx19.fw

Fill in the customer URL option if desired and the summary fields.

pptx21.fw

Publishing may take a few minutes depending on the size of the PPTX file.

pptx22.fw

pptx23.fw

Once complete the active URL is available along with the summary.

pptx25.fw

It is now available as on-demand content and can be used from the Content Library in a Connect Meeting.

pptx26.fw

From the Connect Meeting room, choose the Share Pod drop down option and browse to the Content Library. Here I am using the “My Content” folder as the repository.

pptx27.fw

The published presentation is available in the Connect Meeting Share Pod.

 

The fourth method of publishing a PPTX to Connect is to first publish locally as a zip package using Presenter and then upload it to Connect.

pptx28a.fw

pptx15.fw

pptx28.fw

Within PowerPoint under Adobe Presenter >Presentation, choose “Publish” and set the publishing options to “My Computer” and the Output options to “Zip package”. Click “Publish”.

pptx29.fw

The conversion process may take a few minutes.

pptx30.fw

By default it will publish the zip package to: \Documents\My Adobe Presentations\

pptx31.fw

In the Connect Central Content Library, choose New Content.

pptx32.fw

See that among the supported upload file types, a zip package is listed.

pptx33.fw

Browse to the locally published zip package; in this case it is: \Documents\My Adobe Presentations\Large\Large.zip

pptx34.fw

Add the details in the Connect Central Content Library and click Save to begin the upload.

pptx35.fw

The published active URL allows access to the on-demand Presentation.

pptx35a.fw

pptx25.fw

In the Meeting Share Pod the Presentation is accessible from the Content Library.

You may also directly upload the Presenter published zip package from the author’s client to the Connect Meeting Share Pod and ignore the Content Library as shown below:

pptx35b.fw

pptx36.fw

pptx25.fw

The presentation is available for use in the Connect Meeting Share Pod.

 

Choosing the best presentation publishing option:

Once the PowerPoint presentation is selected, converted, and uploaded by whichever means, it is prudent to review it to check for any delta between the uploaded content and the original PPTX. Deltas are usually in one of two forms:

  • Select fonts do not match
  • Tables or bullet formatting does not line up as expected

With reference to custom fonts such as certain esoteric mathematical symbols, this article may help: Tips on Mitigating Connect Server-side PowerPoint Publishing Deltas

Using Adobe Presenter to publish, effectively eliminates any font discrepancies as all publishing is done on the author’s client where presumably all fonts are installed and are available to facilitate accurate conversion.

When uploading a PPTX to the Connect Central Content Library without Presenter, a Connect server-side version of Presenter, called Producer, facilitates the conversion process invoking the fonts available server side. If a font is used in the PPTX that is not available on the server, Producer will choose the closest font available on the Connect server to the original font.

Note: Adobe Connect hosted and ACMS customers who wish to have proprietary fonts installed on their Connect accounts  should contact the Connect Support Team to discuss the process.

When uploading a PPTX directly to a Connect Meeting room Share Pod, server-side Producer is not invoked. The client-side is leveraged and Microsoft Office should be installed on the client as PowerPoint client-side helps facilitate the conversion.

This warning message may appear when uploading a PPTX to Connect:

pptx42.fw

This warning is most common when Mac users who do not have Microsoft Office installed on their clients, attempt to upload a PPTX directly to an Adobe Connect Meeting room. There are not any client-side assets to facilitate conversion.

This tech-note is relevant: Best Practices for Sharing PPTX Files on Adobe Connect

With specific reference to portions of tables missing from graphs, often this can be mitigated by saving a PPTX as  PPT and re-uploading it to Connect.

A PPTX may also be locked down and further editing prohibited. This will affect conversion of the PPTX because conversion to SWF in Connect is a form of editing.

pptx37.fw

pptx38.fw

pptx41.fw

PowerPoint menu options to Protect the Presentation prior to uploading may cause a delta in the converted uploaded Presentation.

 

Conclusion:

The surest way to have the richest and most accurate PPTX to SWF conversion is by using Adobe Presenter on the author’s client. The next most accurate is to upload to the Connect Content library and invoke server-side Producer for conversion. The quickest way is to simply upload directly to the Meeting Share pod but be sure to have Microsoft Office  installed on the client to help mitigate any delta. Be sure to upload and test well in advance of the Adobe Connect Meeting.

9.5 Connect Edge Proxy Server Full Installer

The new 9.5 Connect Edge Proxy Server full installation procedure follows.

Note: This article applies to on-premise Connect customers who have purchased Edge Proxy servers and must install or upgrade to Connect version 9.5. The only possible exception to on-premise exclusivity may be for those who are hosted by a managed ISP that supports external Enterprise Proxy Edge Servers (this latter model is uncommon).

Step 1: Download the Connect Edge Server installer from the URL location provided by the Adobe Connect Support or Customer Service team;  extract and install it with local administrative permissions.

edgeintro.fw

edgeextract.fw

The first installation screen option allows language selection among the following:  English, French, German and Japanese. Click OK to proceed or x (in the upper right) to quit.

edge1a.fw

Step 2 displays the Welcome window in your selected language. Click ‘Next’ to proceed or ‘Quit’ to exit.

edge2a.fw

Note: If you have a previous version installed, this pop-up message will display:

edge2a.fw

Step 3 displays the License Agreement: The administrator conducting the installation must accept the agreement to proceed. Click ‘Previous’ to go to the previous panel, ‘Next’ to proceed or ‘Quit’ to exit.

edge3a.fw

Step 4 displays the option to Select Destination: This panel offers a browse button and facilitates choosing an installation directory. Choose the installation destination, click ‘Previous’ to go to the previous panel, ‘Next’ to proceed or ‘Quit’ to exit.

edge4a.fw

Note: If the destination directory for the installation selected in this panel already exists then the below warning will appear. Click ‘Yes’ to continue or ‘No’ to quit.

edge5a.fw

Note: If the target directory does not exist, this screen will display:

edge2b.fw

Step 5 presents Shortcut Creation options: This screen will facilitate creating the shortcuts in the Start menu. Click ‘Previous’ to go to the previous panel, ‘Next’ to proceed or ‘Quit’ to exit.

edge6a.fw

Step 6 presents a Summary: Click ‘Previous’ to go to the previous panel, ‘Next’ to proceed or ‘Quit’ to exit.

edge7a.fw

edge7a.fw

Step 7 presents a progress screen: This will occur when the installation starts. The installer will extract the files and will try to take a backup of any previous installation. During this panel a command prompt will occur if there were initially any edge services installed. It will create a backup in the same location where it originally existed, but will append “_backup” in the directory name. Wait for the processes to complete.

Note: A clean installation is highly recommended rather than any attempt at installing over older versions of the Edge.

edge8a.fw

After the processes are completed, click Next to proceed:

edge9a.fw

Step 8 offers a GUI, Edge Server Setup Configuration: This panel writes the Edge Server FQDN, the Connect server FQDN, the Cluster ID and the server ports into the Edge server configuration.

edge10b.fw

Example entries follow based on the sample deployment diagram below:

Edge Server Hostname: edge.company.com
Connect Server Hostname: connect.company.com
Edge cluster ID: edge.dmz-edge
Connect Server Normal Port: 80
Connect Server Secure Port: 443

 

95EdgeDMZstunnelOriginstunnel

Step 9 presents the Finish Panel: The installation has completed. Click ‘Done’ to finish the installation:

edge11a.fw

Post installation, the Edge config.ini file, based on our example will contain these relevant entries:

FCS_EDGE_HOST=edge.company.com
FCS_EDGE_REGISTER_HOST=connect.company.com
FCS_EDGE_CLUSTER_ID=edge.dmz-edge=1
FCS.HTTPCACHE_BREEZE_SERVER_NORMAL_PORT=connect.company.com:80
FCS.HTTPCACHE_BREEZE_SERVER_SECURE_PORT=connect.company.com:443

Note: Prior versions of the Connect Edge often employed (although never required) a custom.ini file in the Connect Edge server installation root directory for these entries. The custom.ini would then override the config.ini file in the \conf directory. Placing a custom.ini in the root installation directory is still an option as well as a hazard should one contain stale or wrong entries. The new Edge installer writes directly to config.in through the screen illustrated in step 8.

Once the Connect Edge Server is installed, it must be registered with the origin server or cluster for which it serves as proxy:

On the origin server, register the Edge server by adding the Edge server unique name into the host mappings section of the Connect Management Console; the settings will propagate throughout an origin server cluster from any one of the origin servers:

Start > Programs > Adobe Connect Server > Configure Adobe Connect Server

If the Edge is communicating with the origin server, then you will see a preregistration configuration under the server settings tab:

edgereg1.fw

Add the same unique Edge name into the host mapping fields as follows to register the Edge; this is a manual security mechanism to prevent unauthorized pirate Edge server registration:

edgereg2.fw

Note: The common identification variable in the custom.ini on the origin and the config.ini on the Edge is the cluster ID; following our example is dmz-edge=1 indication the first zone by name; add this to the custom.ini file on the origin(s).

Note: Even a single Edge server warrants its own cluster ID.

edge.dmz-edge=1

For additional information on Edge server deployments including maintenance and troubleshooting, see the articles on the Connect Users Community. Note that the custom.ini file is used in these articles to configure the Edge by overriding the config.ini. As aforementioned, while the new 9.5 installer writes directly to the config.ini, the custom.ini, when used as described will override the config.ini.

The first tutorial listed below discusses the reverse proxy use of the Edge and the second discusses the enterprise proxy use:

Adobe Connect Edge Server Deployment Options: part 1
Adobe Connect Edge Server Deployment Options: part 2

Best Practices publishing mp4/video embedded in a presentation to Connect meeting

There are a couple of things we should be careful about if we are looking for embedding a video(for ex mp4) file in a PowerPoint presentation and then sharing within an Adobe Connect meeting room.

First most important thing is, the supported video formats that should be used in the powerpoint file so that they are supported in Connect meeting. The video formats supported in Connect are listed here : https://helpx.adobe.com/adobe-connect/kb/content-uploading-issues.html

Next most important thing is, Connect does not directly recognize multimedia objects that are embedded in PowerPoint. If you would like to embed a video inside a slide, we recommend using Adobe Presenter to do this, and then publish to the Connect server from Presenter. Otherwise, the video file can be directly shared in a separate Share pod and played directly in the meeting.

 

video1

Video10

 

Here’s a very good video as well that demonstrates how the above can be achieved via Adobe Presenter.

Once the video is imported, save the PPTX file and the file is ready to be published.

 

Following are some recommended options for publishing this file to Connect :

Make sure the below Output options in Presenter are checked for both audio and video. You can also publish the video locally to your Desktop and then share the zip file directly in the meeting room.

video3

 

Then click on Settings on right and goto Quality and make sure Control Preloading is unchecked as highlighted below, else the video might start playing even before the slide gets loaded :

video4

 

This gets published to Adobe Connect content library, then you should be good to browse this published file in the Adobe Connect meeting room share pod.

 

Make sure the below options are checked after the pptx file is uploaded to the meeting room. You need to “Show Presentation Playbar” from the Share pod menu.

video5

That will reveal the ‘Play button’ that you can then use to start the MP4 playback.

video6

You shouldn’t need to touch the ‘Sync button’ unless you want to allow everyone to do their own playback – just leave it in Sync mode.

If you’d like even greater control, you can click the ‘Toggle playbar’ icon to reveal an even larger playbar with a scrubber.

video7

The playbar lets you scrub to any point in the video and play from there for everyone, or to rewind, etc.

  video8

 

It is also very important to keep in mind the properties of the video file which is being imported into Connect to make sure it works as expected. Below are couple of recommendations that are recommended for the video properties :

Video11

If you are using a non-supported video file such as WMV or WAV and would like to convert to a supported format for Connect meeting like flv, mp4 etc, you can use a few tools which are available for free as well, like , Riva , Super, FFMPEGAX etc.

 

I hope this information is helpful for some of you trying to upload embedded video files into Adobe Connect meeting.

Feel free to contact Support for any additional question or information.

 

Error creating or editing a UV profile

This article is applicable only to customers using Universal Voice telephony profiles and running into a very specific error in the user interface.  If you are not experiencing the exact problem below, you do not need to worry about this article.

Update: 5/23 – We are fixing this issue in our hosted environment as part of the 9.5.3 upgrade which is currently being rolled out across the various clusters  over the next month.

For licensed (on premise) customers (this includes customers in the ACMS program and customers hosted by other Connect hosting partners other than Adobe), we will be releasing a patch in early June, 2016 for the Connect 8.x and Connect 9.x environments.

 

The error: ‘This field only accepts valid DTMF commands and phone numbers (+,0-9,*,#,-,space,A,B,C,D).

uv.jpg

Issue: Recently an issue has cropped up with editing existing (or creating new) Universal Voice (UV) profiles.  This is directly related to a required change that was introduced in the latest version of the Adobe Flash Player.  The behavior is that if you try to go into My ProfileMy Audio Profiles > and click the ‘New Profile’ button  or  My Profile > My Audio Profiles > and select an existing UV profile and click the ‘Edit‘ button, you will get this error (above) when trying to SAVE the profile.

This issue is resolved in the upcoming Adobe Connect release (9.5.3).  In the interim (for Adobe Hosted customers while they wait to be upgraded) or for Licensed (on-premise) customers who may be on an older version of the application and not able to upgrade to 9.5.3 right away when it comes out, there are basically 3 ways around this problem…

    • [1] Downgrade Flash player to a version prior to version 21 or use a browser or machine that has an older version of the Flash Player (prior to 21).  This would require you to uninstall the Adobe Flash player in a browser where it is not embedded as part of the actual browser, and install an older version from the archived versions here.
    • [2] Create (or just edit an existing) mms.cfg file on the system and add the following flag (line) in the file (this will ONLY work for the next 3 months approximately).  This is only a temporary solution and the Flash Player team plans to remove support for this flag in upcoming updates but for now, it can be used until we deliver possible patches for older Connect versions and fix this in the upcoming 9.5.3 release.


      enablePCRE2=0

This mms.cfg file can be created on your system in a simple text editor if it doesn’t already exist on your computer.  First do a search for it.  If it doesn’t exist, simply create a new file in Textpad or Notepad or Textedit or whatever you use for a simple text file editor.  Add the one line above and save the new or existing mms.cfg file (with that line as either the only line in the file or added to the bottom of whatever else is in that file).

On Windows systems, the mms.cfg file would be (or needs to be) placed in:

C:/Windows/system32/Macromed/Flash (32-bit Windows) and C:/Windows/SysWOW64/Macromed/Flash (64-bit Windows).

On Mac systems, the mms.cfg file would be (or needs to be) placed in:

 MainDisk:Library:Application Support:Macromedia

    • [3] Use the XML API.  As this is only a Flash Player issue and only affects users who are using the UI in Adobe Connect, if you are familiar with the XML API, you can use the ‘telephony-profile-update‘ API as a workaround. If you are not familiar with the XML API, the documentation for the API is here.  If this is still confusing for you and you are not quite sure how to execute XML API calls, the steps below will not be for you.  If you need clarity on the below, please contact Adobe Connect support as you normally would.

The workflow is as follows for the API (again if you are not familiar with the API, you need to either familiarize yourself with the product documentation, ask and admin for assistance, or use one of the other workflows above to work around this issue):

For existing profile updates:

1) Find the profile-id by making this API call in the browser once you’ve logged into your Adobe Connect account: https://{yourConnectURL}/api/xml?action=telephony-profile-list

It will list out all your profiles.  Search for the one you want to edit and make note of the ‘profile-id‘ value (numeric) and the ‘provider-id‘ value (also numeric).

2) Get the field-ids by running this API: https://{yourConnectURL}/api/xml?action=telephony-profile-info&profile-id=xxxxxxxx  (where the profile-id = the numeric value of the profile from call 1 above).

This will show you an XML response with telephony-profile-fields listed.  You may have a field for a certain moderator pin or other value you need to edit.  The field will be listed as an ‘x-tel‘ field.  It will be in a format that looks like this: ‘x-tel-123456789‘ or something similar with numbers after the ‘x-tel’.

You can also get the fields for the provider by taking the provider-id and running this API: https://{yourConnectURL}/api/xml?action=telephony-provider-field-list&provider-id=xxxxxxxx

This will show you all the ‘x-tel-xxxxxxx’ values you need to use.

3) To update that field, you would make this API call:  https://{yourConnectURL}/api/xml?action=telephony-profile-update&profile-id=xxxxxxxx&provider-id=xxxxxxxx&field-id=x-tel-123456789&value=xxxxxxx&profile-status=enabled   (where profile-id, provider-id both equal their corresponding numeric values from the first API call above…and where the field-id= the x-tel value from call 2…. and where value= the new value you need to edit)…

For creating NEW profiles:

1) Find the provider ID you want to create a new UV profile from with this API call: https://{yourConnectURL}/api/xml?action=telephony-provider-list .   The provider-id value gets returned in this result.

2) Obtain a list of all the applicable provider fields by running this API call: https://{yourConnectURL}/api/xml?action=telephony-provider-field-list&provider-id=xxxxxxx (where the provider-id = the numeric provider-id for that UV provider).

3) Run this API to create a new UV profile: https://{yourConnectURL}/api/xml?action=telephony-profile-update&provider-id=xxxxxxxx&profile-name=xxxxxxx&field-id=x-tel-xxxxxxxxx&value=xxxxxxx&profile-status=enabled  (where the provider-id= the numeric provider-id for that UV provider… field-id= the x-tel field you want to populate …. value = the value (numeric) of that field…. profile-name = the name of your new profile …. profile-status=enabled ).

Of course, you could have more than one field to populate as everyone’s UV providers/profiles could be custom and unique to a requirement.

If you are unsure, you need to talk to your Connect admin or contact Adobe support of course for any questions regarding the above profile creation or update steps.  A support agent can assist you with identifying values and creating / updating profiles if needed.

Adobe Connect SSL guide

Here’s a new SSL configuration guide (PDF) aimed at Connect 9 and higher. It should help you get SSL working in most environments with and without Events module (CQ).

Connect SSL Guide

Please contact support via the usual channels should you feel you need additional help with SSL.

 

Connect On-premise Server Upgrade Fails because of Encrypted SQL Connection

On-premise Connect server upgrades will fail when SQL is using a secure encrypted connection between Connect and the SQL database.

Most on-premise Connect deployments do not use encrypted SQL conenctions, instead access is restricted to the DB layer/SQL via partitioning and firewalls. This tech-note only applies to encrypted SQL connections; this upgrade tech-note applies to you if you have installed Connect and then set up SQL encryption according to this tech-note:

Configuring Secure SQL with Connect

In order to upgrade Connect running with an encrypted SQL connection, you will need to remove SQL encryption until the upgrade is complete and then you may reapply SQL connection encryption. Minor Connect dot updates and patches may not appear to fail, but they will be unable to update the Connect database as long as encryption is in place. For example if you apply the 9.2.1 update to a 9.2.0 server, the following will result:

The version.txt file will read mssql=9.2.1.0, while the Database_Version table from the SQL DB will read 9.2.0.0.

Full installer upgrades will fail with more server log errors, among them you will see this:

java.sql.SQLNonTransientConnectionException: [Macromedia][SQLServer JDBC Driver]The SQL Server login requires an SSL connection.

And an option on this theme in the installation GUI will manifest where, in this case pictured, the 9.5 installer fails in an attempt to upgrade a 9.2 Connect server:

Upgrade not supported

The following steps are required to remove SQL encryption to facilitate upgrading:

  1. Open SQL Server Configuration Manager

Update Connect With Secure SQL

2. Open the Protocols for MSSQL Server Properties

Update Connect With Secure SQL1

3. Under the Flags tab, change Force Encryption to No

Update Connect With Secure SQL2

4. Under the Certificates tab, clear the certificates and click OK.

5. Restart SQL.

6. On the Connect application server, edit the ConnectProSvc.conf file in the appserv directory; remove the following entries in the list of JAVA arguments (If they exist):

wrapper.java.additional.28=-Djavax.net.ssl.trustStore= <path of Trust Store file created >
wrapper.java.additional.29=-Djavax.net.ssl.trustStorePassword=<Truststore Password >

7. In the custom.ini file in the connect (or breeze) installation root directory, comment the following entries:

DB_ENCRYPTION_METHOD=SSL
DB_VALIDATE_SERVER_CERTIFICATE=true

8. Restart the Adobe Connect and AMS/FMS Services

logssvcs4.fw

At this point you are ready to run the Connect updates or upgrade. After you have successfully run the upgrade and performed a full function check, you may reapply the encryption to the Connect SQL database connection by reversing the steps above. Abbreviated they are:

  1. Open SQL Server Configuration Manager
  2. Open the Protocols for MSSQL server Properties
  3. Under the Flags tab, change Force Encryption to Yes

Update Connect With Secure SQL4

4. Under the Certificates tab select certificate created previously and click OK.

5. Restart SQL services

6. In the ConnectProSvc.conf file in the appserv directory, add the following entries in the list of JAVA args:

wrapper.java.additional.28=-Djavax.net.ssl.trustStore= <path of Trust Store file created >
wrapper.java.additional.29=-Djavax.net.ssl.trustStorePassword=<Truststore Password >

7. In the custom.ini file in the connect (or breeze) installation root directory, uncomment or add the following entries:

DB_ENCRYPTION_METHOD=SSL
DB_VALIDATE_SERVER_CERTIFICATE=true

8. Restart the Adobe Connect and AMS/FMS Services.

Note: For greater detail refer to the original tech-note on encrypting the SQL connection:  Configuring Secure SQL with Connect

Connect Meeting and Client-side Speaker Audio Output Control

There is a Connect feature request from various customers in place asking for the Connect Meeting GUI to offer an option to choose audio output devices. The request is a complex one because the audio output control options are opaque to Flash; the settings for audio output are in the various operating systems (OS) of the many possible clients. Connect uses what is chosen as the OS default as depicted in our help documents:

Set up audio broadcasting

The feature request number is: CONN-4082570; one customer recently suggested that we add expanded functionality for client speaker audio output control roughly similar to what we already have in Adobe Connect for Microphone and Webcam selection.  A speaker drop-down menu for sound output is desirable for obvious reasons.

There is no set date for implementation of this enhancement in Connect and I will update this blog entry if that changes. In the meantime, if the default client OS audio output option is not the option desired for use with Connect Meeting, the following example may help: I will show how to add a Bluetooth speaker to a Windows client and toggle the audio output in Connect from the built-in laptop Realtek speaker to a new iHome Bluetooth speaker. While audio output options may vary, by showing how it is done with this common example of a Bluetooth output device, it will hopefully help to show how other optional client-side speaker output devices may also be managed in kind.

To see the enabled audio output options on a Windows client, look at the Device Manager under the Control Panel:

sound-dev-mgr.fw

Here we see a Realtek device and this corresponds with the option in the lower right of the desktop tray:

audiowzd-bt5b.fw

Opening the mixer shows more detail:

realtek.fw

If I play music by invoking the Audio Setup Wizard in Connect Meeting, the Realtek speaker will play:

asw.fw

conn-soundoutput.fw

Since our example will be to switch to a Bluetooth speaker, the first step will be to make certain that Bluetooth is enabled. On my Lenovo, that is done by pressing the keys FN>F5 simultaneously. Here we see Bluetooth is enabled:

sound-bt.fw

The next step is to follow the device instructions to pair the Bluetooth speaker with the client computer; these will vary.

See the Bluetooth icon enabled and  highlighted in my system tray:

sound-bt1.fw

After putting the iHome speaker in pairing mode, I am able to search for it from the client:

sound-bt2.fw

sound-bt2a.fw

sound-bt3a.fw

Now we have more than one speaker option to toggle as the Device Manager and the system tray attest:

sound-dev-mgr1.fw

sound-bt5.fw

In Connect we now see the option to use the new audio output device:

sound-fin.fw

Note: The iHome Bluetooth speaker also has a built-in Microphone so the Connect Audio Setup Wizard will see it in the Microphone drop down menu.

Without audio output controls built into Connect, adding and/or changing the default audio output device in the client OS is the way to toggle the audio output option in Connect. The key thing to be aware us is the danger of audio feedback loops. When separate speakers feed back into a microphone and cause echoing in a Connect Meeting. On a mobile device such as an iPAD, without a headset the speaker audio will feed right back in the microphone; it is best practice to use a headset with iPad to prevent audio loop/echos.

Generating Server-side Logs to Troubleshoot On-premise Connect Deployments

In order to diagnose unexpected behavior within Adobe Connect, it may be necessary for the Adobe Connect Support team to examine server-side logs from an on-premise Connect deployment. The logs directory is located in the Connect (or Breeze – it is not uncommon for Connect upgrades to reside in legacy Breeze directories) directory:

logsdir.fw

Within the logs directory there are sub-directories containing various logs:

logsdir1.fw

The most commonly requested log by the support team, is the debug.log. It can be found in the logs>support directory. With the services running, the current debug log will appear without a date at the top of the debug.log file list. The default rollover is 12 hours generating AM and PM logs each day:

logsdir2.fw

In order to make the debug.log file more useful for purposes of diagnosis, you can enable verbose logging by adding entries to the custom.ini file located in the Connect or Breeze version sub-directory. Here you see it located in a 9.3.1 directory under the Breeze root installation/upgrade directory:

logscustomini3.fw

Before editing the custom.ini file, be sure to create a backup copy of it. Add the following lines in order to enable verbose logging:

HTTP_TRACE=true
DB_LOG_ALL_QUERIES=true

Note that for versions of Connect 9.2 and prior, use yes instead of true:

HTTP_TRACE=yes
DB_LOG_ALL_QUERIES=yes

Save the custom.ini file (be careful not to accidentally change the file type to .txt) and during a scheduled maintenance window, cycle the Connect and AMS/FMS services in order to load the changes and begin verbose logging (note this will bring Connect down while the services cycle):

logssvcs4.fw

There are occasions when it may be prudent to provide more than one log for a more complete diagnosis. To provide a full sample of the various Connect logs without sending a massive historical sample of log files, you may simply stop the Connect services (during scheduled downtime as this will bring down Connect) and rename the entire log directory to log.old. Then upon starting the services back up, recreate the issue being diagnosed and then stop the services.

This activity will generate a new small log directory isolating the issue under scrutiny that you just reproduced in Connect: Zip/compress this new abbreviated log directory with all its fresh abbreviated sub-directories and provide it to the the Adobe Connect Support team to help expedite more exhaustive server-side log analysis. This option is particularly helpful when examining a cluster as each server will have a set of logs. When providing cluster logs, always label each compressed log folder to easily identify the server from which it came.

Note that often when diagnosing unexpected behavior in Adobe Connect Meetings, it may also be prudent to enable client-side Connect addin verbose logging as well.  The relevant client-side logging tech-notes are here:

Enable logging | Meeting Add-in

Troubleshooting Verbose Meeting Addin Logging

Connect on-premise: Event Emails may fail to be sent.

This is specific to Connect on-premise installations with Events and with SSL configured for the Event service.

 

When you create a new Event there are a bunch of different email notifications available, including confirmation of new registrations, event reminders, thank you notes etc.
These emails are created from email templates that the Connect application server needs to download from the CQ publish server before they’re sent out.

If you have the CQ service configured with SSL the Connect server needs to trust the certificates you configured on the remote CQ publish host, otherwise it will fail on the template download and you will get a log message as below written in the debug.log on your Connect server:

 
[…]
[03-21 08:37:52,983] cqEmailer0 (INFO) 1ms spid:197 fetch com.macromedia.breeze.model.CQTemplate(“84457”)
[03-21 08:37:52,990] cqEmailer0 (INFO) Error while fetching template from CQ: sun.security.validator.ValidatorException: PKIX path building
failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
[03-21 08:37:52,990] cqEmailer0 (ERROR) Exception thrown
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
[…]

 
To fix this, import the SSL certificate of your CQ publish server to the Connect server keystore.

On the Connect server, open a command line and change to this directory:   <drive>:\Connect\9.x\jre\bin\

The command to import the certificate is as follows (of course replace c:\pathToCertFile\cert.crt with your own path and filename). Also, make sure the path to the keystore is correct for your environment and version of Connect.

keytool -importcert -trustcacerts -alias connectcerts -file c:\pathToCertFile\cert.crt -keystore c:\Connect\9.x\jre\lib\security\cacerts

 

(If you are using intermediate certificates, you can import the whole chain as one single .crt file).

 

 

 

Virtual Classrooms and Account Limit Reached Error

This article is applicable ONLY to Adobe Connect users who have purchased a Named Virtual Classroom Manager license within the Training Module and are running into Account Limit Reached messages unexpectedly when they are launching Virtual Classrooms.

With the release of Adobe Connect 9.4 in May of 2015, we introduced a new training license model called the “Named Virtual Classroom Manager”.  This is specifically for Connect users to create and host Virtual Classrooms (plus it gives you access to the Events module).  It is basically another way we are licensing access to Virtual Classrooms.  This means there are technically two different types of Virtual Classrooms that can be created when you have the Training module enabled:

  1. The ‘traditional’ model of Virtual Classrooms (VC) which use the Concurrent Learner seat quota on the account (up to 100 seats per room), and…
  2. The Named Virtual Classroom Manager (NVCM) model of Virtual Classrooms which use a built-in 200 seat quota and does not use any Concurrent Learner seats.

When accounts are provisioned and quotas and features purchased, customers have the option of buying ONLY a Named Virtual Classroom Manager license.  They do not need to buy any additional training seats for Concurrent Learners.  In the older traditional model, in order to use a Virtual Classroom, you had to buy Concurrent Learner seats (say 250 seats for sake of discussion).  When a training manager created a VC, it would utilize seats out of that (in this example) 250 seat quota, up to 100 attendees (the rest of the concurrent seats could be used for another VC or other training content).  It was capped at 100 per VC.  With the new Named Virtual Classroom Manager license, you can now have only the NVCM feature enabled (and essentially have purchased no other training seats…so Concurrent Learner quota =0) or you can have it in conjunction with other training seats purchased in case you have a need for on-demand courses and curriculum, etc.. The NVCM model VC will not use any Concurrent Learner seats. It has a built-in 200 seat quota per room.  However, the caveat here is that the VC created for intended use with the NVCM model needs to have one of a few conditions in place in order to take on that NVCM model.  Otherwise, it may inadvertently take on the behavior of a traditional model VC and it could lead to unexpected circumstances like an ‘Account Limit Reached’ when the very first person joins the VC.

Let’s explain…

To create a Virtual Classroom, no matter what type of training features/quotas were purchased, all you need to be is a Training Manager, Named Virtual Classroom Manager, or Administrator.

The process of creating a VC is always the same.  You click on the “New Virtual Classroom” button from within the Training module.

Each time a Virtual Classroom is launched, Adobe Connect checks a few conditions to see how the VC should be licensed when it launches.  The result of which will dictate the quota used for the seats.  Where this becomes very problematic and confusing for customers is when the customer ONLY purchases a NVCM license and doesn’t have any Concurrent Learner seats (so Concurrent Learner = 0).  It is possible for a customer to create and launch a VC that is trying to use a Concurrent Learner quota by mistake.  If that happens, you will get the error ‘Account Limit Reached‘ right away.

For the sake of the scenarios below that explain how the VC’s are licensed when they launch, I will also mention that when a VC is created in a NVCM’s individual user folder under the Training tab, it automatically is a NVCM model room.  If it’s created under the Shared Training area of the Training tab, then there is a setting you can check or uncheck called ‘Named Virtual Classroom Model‘.

nvcm

The value can either be Yes or No.  Below in the listed scenarios, that is what ‘set to yes’ or ‘set to no’ means.

Also below in the listed scenarios, a ‘NVCManager‘ is a person who is in the group ‘Virtual Classroom Managers’ in the Users and Groups area of Connect.  That is what gives that person the ability to utilize the NVCM model.  A ‘non-NVCManager‘ indicates someone who is NOT in that group.  This would be a normal Training Manager or Administrator.

Here are the conditions and scenarios (assuming the room is Public) where a VC can be launched with or without the 200 seat expected NVCM quota:

Green = NVCM is used and quota will be 200 seats
Red = traditional model is used and quota will be taken from Concurrent Learner seats and could result in an “Account Limit Reached” error if that quota is 0.
Orange = NVCM is used but there could be some confusion due to the lack of NVCM in the room or permissions for that NVCM.

Scenarios:

  • VC created in My Training folder by NVCManager – launched by NVCManager = Will use NVCM license (quota 200)
  • VC created in My Training folder by NVCManager – launched by non-NVCManager = Will use NVCM license (quota 200) however will not have the host present even if non NVCM who launched the room is a host (permission-wise).  A NVCM needs to be present for the room to have an initial host, similar to Named Host Meeting.  If the VC is ‘public’ as far as access level, it will launch and use the 200 seat quota for that owner, but if the owner isn’t in the room, the users who have entered will be participants.
  • VC created in Shared Training folder by NVCManager (set to yes) – launched by NVCManager = Will use NVCM license (quota 200)
  • VC created in Shared Training folder by NVCManager (set to yes) – launched by non-NVCManager = Will use NVCM license (quota 200) however will not have the host present even if non NVCM who launched the room is a host (permission-wise).  A NVCM needs to be present for the room to have an initial host, similar to Named Host Meeting.  If the VC is ‘public’ as far as access level, it will launch and use the 200 seat quota for that owner, but if the owner isn’t in the room, the users who have entered will be participants.
  • VC created in Shared Training folder by NVCManager (set to no) – launched by NVCManager = Will use NVCM license (quota 200)
  • VC created in Shared Training folder by NVCManager (set to no) – launched by non-NVCManager = Will use Traditional VC license (quota 100 taken from Concurrent Learners quota).  IF there is no quota for Concurrent Learners purchased, user will get ‘Account Limit Reached’ error.
  • VC created in Shared Training folder or My Training folder by non-NVCManager (set to yes) – launched by NVCManager = Will use NVCM license (quota 200)
  • VC created in Shared Training folder or My Training folder by non-NVCManager (set to yes) – launched by non-NVCManager – the room will behave like a Named VC and will use the 200 quota. But The room will not be owned by anyone, to be more precisely, there will not be an active host until an Named VC manager enters the room. Also all other non-NVCM hosts and presenters will be downgraded to participants until NVCM, who is assigned as a host, arrives.
  • VC created in Shared Training folder or My Training folder by non-NVCManager (set to no) – launched by NVCManager = Will use NVCM license (quota 200)
  • VC created in Shared Training folder or My Training folder by non-NVCManager (set to no) – launched by non-NVCManager  = Will use Traditional VC license (quota 100 taken from Concurrent Learners quota).  IF there is no quota for Concurrent Learners purchased, user will get ‘Account Limit Reached’ error.

So ultimately if you have purchased a NVCM license and you are expecting a VC to open and allow 200 seats, but you are getting an Account Limit Reached error either right away OR after a lower number of people access the room (so under 200), then most likely one of the situations above (in RED) has occurred.  To confirm, make sure that the creator of the room is in the NVCM group, the room exists inside of a NVCM’s My Training folder, the host launching the room is a NVCM, or at the very least the room has ‘YES’ set for the ‘Named Virtual Classroom License Model’ setting if the room is in the Shared Training area.