Posts in Category "Administration"

Seminar Extensions after Connect 9.3

Beginning with Connect 9.1.1, Connect Seminar extensions in session beyond the initially scheduled time were 30 minutes and then another 30 minutes and then an additional 10 minutes provided there was not a conflict with another scheduled Seminar. Beginning with Connect 9.3, this has changed; the new in-session Seminar extension options are now unlimited as long as there is not a conflicting scheduled Seminar under the same Seminar license. If there is another scheduled Seminar that is in conflict, then you will only get a 10 minute warning before your Seminar ends, but if there is not a conflicting Seminar then this interactive pop up will allow the Seminar host to extend the Seminar:

force-extend-seminar

Connect on-premise: Seminar licenses show as expired following an upgrade to version 9.3.1

Some customers may run into this issue following an upgrade from Connect 9.0.0.1 to 9.3.1 if you use seminar licenses.

After the successful upgrade all seminar licenses show as expired. Re-applying the license file in the console does not help and you see the following message in the debug.log:

[03-03 13:41:48,526] http-80-24 (ERROR) Exception caught in DBRows.populate(), e=java.sql.SQLException: [Macromedia][SQLServer JDBC Driver][SQLServer]Ambiguous column name ‘DATE_END’.
[03-03 13:41:48,527] http-80-24 (INFO) 1ms spid:64 com.macromedia.airspeed.db.SQLServerUtilityQueries.setIsolationLevel(Disable Isolation)
[03-03 13:41:48,527] http-80-24 (ERROR) Exception thrown
java.sql.SQLException: [Macromedia][SQLServer JDBC Driver][SQLServer]Ambiguous column name ‘DATE_END’.
at macromedia.jdbc.sqlserverbase.ddcg.b(Unknown Source)
at macromedia.jdbc.sqlserverbase.ddcg.a(Unknown Source)
at macromedia.jdbc.sqlserverbase.ddcf.b(Unknown Source)

[…]

To resolve this, run the following query on your database to change the SQL compatibility level:

sp_dbcmptlevel ‘breeze’, 90

If your Connect database is named something other than “breeze”, then put the correct name of the database in the query.

Now re-install your license file one more time.

 

This is also the solution to a related issue: http://blogs.adobe.com/connectsupport/licensed-after-upgrading-to-connect-9-1-exception-occurs-when-clicking-on-meeting-tab/

Please contact Support if you still encounter issues.

On-premise Server: Add user-agent info to access logs

If you run your own Connect server you may want to add user-agent information to the tomcat access logs.

Here’s how to add the information:

1.  Take a backup copy of the server.xml located in \Connect\9.x\appserv\conf\.

2.  Open the file in an XML friendly editor and locate the line:

 

<Valve className=”org.apache.catalina.valves.AccessLogValve” directory=”../../logs/tomcat”
prefix=”tomcat_access.” suffix=”.log” pattern=’%h %l %u %t %m “%U” %{BREEZESESSION}c %s %b %T’ resolveHosts=”false”/>

 

3.  Edit the line to include %{User-Agent}i . It should look like this:

 

<Valve className=”org.apache.catalina.valves.AccessLogValve” directory=”../../logs/tomcat”
prefix=”tomcat_access.” suffix=”.log” pattern=’%h %l %u %t %m “%U” %{BREEZESESSION}c %s %b %T %{User-Agent}i‘ resolveHosts=”false”/>

 

4. Restart the Connect service and load any page of Connect.

The log output in \Connect\logs\tomcat\tomcat_access.-date-.log should now include user-agent information:

127.0.0.1 – – [23/Feb/2015:11:39:45 +0000] GET “/common/help/en/support/meeting_test.htm” breezbreezhvc7xdcgu5h3cqwm 200 16703 0.017 Mozilla/5.0 (Windows NT 6.1; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0

 

Enjoy logging!

Empowering Your Seminar Hosts to Create Seminar Rooms

The question comes up on occasion, “Why can’t my Seminar Hosts create seminar rooms?”

The answer is that they have been affected by an intermittent bug, which we realize may cause some confusion, if not chagrin. There is a workaround available, which we’ve outlined below.

Workaround:

As an Administrator, create a typical account with Meeting and Seminar Host permissions (as a test):

sem

Log in with that account and this is what you may see in the Shared Seminars directory. There is no ability to create a Seminar and the Seminar license is not viewable:

sem1

If you switch back to the administrative account log-in, you will see the Seminar license sub-directories:

sem2

sem3

Resetting the permissions on the Seminar license sub-folder using the to “Reset to Parent” button in the Connect Central GUI has no effect on the permissions. You must manually add the folder permissions to the Seminar license sub-folder instead of using the “Reset to Parent” option:

sem4

Once the Seminar license sub-folder permissions are manually edited, the Seminar Host is able to view and manage the Seminars including the ability to create new Seminar rooms under the Seminar license sub-folder:

sem5

The workaround is very easy so this is a low priority bug and we will address it in a future release. At the time of the writing this tech-note, the shipping Connect release is 9.3.1.d.

XML API TIPS: Moving Archives That Have Been Repaired

One common workaround that customers do (or Adobe support may do on behalf of customers) to fix recordings that have some sort of sync or playback issue, is to download the archive (recording) zip, potentially run it through a repair tool, and then re-upload the zip package back to Connect as a content object in the ‘Content’ directory.  A common request may be to move that archive from the Content directory, to another location or even back underneath the Meeting’s ‘Recording’ directory.  The problem is that with failed recordings (recordings that didn’t fully process) and/or re-uploaded recordings, they will not have a ‘date-end’ parameter for the sco, like normal recordings do.  So when you try to (for example) move the archive to the original Meeting’s Recordings directory (which can really only be done using the API), you will get the following error:

API Call = Sco-Move:

/api/xml?action=sco-move&sco-id=xxxxxxx&folder-id=xxxxxxx

where sco-id = the sco-id of the re-uploaded archive
where folder-id = the sco-id of the original meeting (which is also the sco-id of the Recordings directory for that meeting)

Result:

<results>
<status code=”invalid”>
<invalid field=”sco-id” type=”string” subcode=”recording-is-in-progress“/>
</status>
</results>

This is because the sco does not have a date-end param/value.  You can see this by running the sco-info call on the sco-id.  You will see no date-end.

What you need to do before you can move the sco, is set a date-end param using the sco-update API.  You would set the date-end value to some date in the past.

Here is an example:

/api/xml?action=sco-update&sco-id=xxxxxxxx&date-end=2015-01-01T12:00:00.000-04:00

Result:

<results>
<status code=”ok”/>
</results>

Now, when you do a sco-info on that sco you should see the date-end param and value.

You can now also move the recording to it’s desired location (say back to the Meeting’s recording directory):

/api/xml?action=sco-move&sco-id=xxxxxxx&folder-id=xxxxxxx

Result:

<results>
<status code=”ok”/>
</results>

Deleting Corrupted Ghost Meetings on Adobe Connect On-premise Servers

Deleting Corrupted Ghost Meetings on Adobe Connect On-premise Servers

Perhaps due to network outages or hardware failures, etc., there are rare occasions when the Adobe Connect database may become disconnected from the Adobe Connect server while active Meeting sessions are ongoing. It is prudent to avoid database outages while Connect is in use and to publish maintenance schedules so that Meetings are not in session when the database is taken offline for administrative reasons. In most cases when the database is disconnected, once it is reconnected, Connect will be fine and all Meetings will be functional upon full recovery of all systems. In the rare instance, that a Meeting is corrupted through a database outage and cannot be deleted through the Connect Central GUI, you may need to manually delete the Meeting room from the content library directory structure and possibly also from the database itself. If you see displayed at the corrupted Meeting URL, a gray window without any menu or pods, or if you see the following error when you hit a corrupt Meeting URL, you may need to manually delete the Meeting:

Request Not Processes” – “For further assistance, please refer to the Adobe Connect support center or contact Adobe Connect support

If the Meeting cannot be deleted through the Connect Central GUI, delete the content folder for the corrupted Meeting. You can identify it by its sco ID in the Connect\content directory:

content.fw

Restart the Connect and FMS services. If that fails to remove remnants of the corrupt Meeting from the database, try recreating the folder mentioned, (even with empty content), then attempt to delete the room again. If that fails, you may need to delete the Meeting references from the database manually:

sco: update pps_scos set disabled = getUTCdate() where SCO_ID=XXXXX

Note: XXXXX represents the actual sco ID of the meeting.

The Adobe Connect API Accepts Special Charaters (+,$,# etc) if Executed with Encoded Values

Description : The Adobe Connect Web Services API accepts special characters such as (+,$,# etc) if you encode the characters. For example:

If a user Login employs the credentials shown below on the User Interface, it will work without issue.
User Name :- abc+def@adobe.com
Password :- Passw0rd

However, when the user uses the following API “/api/xml?action=login&login=abc+def@adobe.com&password=Passw0rd”

The plus sign is interpreted as though it were a space and the Login looks like this “abc def@adobe.com” resulting in the following:

  • <results>
  • <status code=”no-data”/>
  • </results>

In order to employ these special characters, you must encode them and then execute the API.  For instance in the above case we will execute an API as shown below :

/api/xml?action=login&login=abc%2Bdef@adobe.com&password=Passw0rd

Special character encoding reference information is found under URL :- w3schools  This reference is useful for those users who are trying to run API with special characters.

XML API TIPS: Moving Virtual Classrooms to Meetings

You may have a situation arise where you want to move Virtual Classrooms (VCs) over to the Meeting area of Adobe Connect.  You may notice that if you try to move Virtual Classrooms, you only have the ability to move them within the confines of the Training module and not out to the Meetings area if you are using the UI.  There is an option however.  The API can be used to move VC’s either one by one or an easier way is to put them all into folders inside of the training area (in either Shared or User training folder) and then move the folders themselves (which in turn will move all the VCs inside of it).

The API process for doing this is:

https://{connect domain} /api/xml?action=sco-move&sco-id=xxxxxxx&folder-id=xxxxxxx

where:

sco-id = the sco-id of the VC (or folder that contains all the VCs you want to move)
folder-id = the folder-id of the destination folder you want to move the VC to.

** DO NOT move any main User Training folder or the Shared Training folder itself. ONLY move user-created folders or individual VCs themselves.

 

The process is not done however.  For each VC you move, you have to do one more step.  You need to change the icon of the VC to a meeting icon.  If you do not do this, the VC’s will NOT launch.  You won’t even be able to get to the information page for the VC once it’s moved.  The link to the VC information will simply refresh the meeting list page if you do not change the icon.

To finish the process change the icon by making this call:

https://{connect domain} /api/xml?action=sco-update&sco-id=xxxxxxx&icon=meeting

where:

sco-id = the sco-id of the VC you just moved.
icon=meeting

 

Now, the VC link will work and you will be able to get into the information page and access the links, content, reports, and archives.

Your application can handle building a list of VCs to move by using the sco-contents or sco-expanded-contents API calls (filtering on ‘icon=virtual-classroom’) to list out all VC’s in a specific folder or across the account as a whole, should you want to move everything for example.  Then your application would loop through and not only move the VCs but then also loop through each and change the icon.  If you only want to move one or two, you can simply do this in the browser with the API calls above.

It’s important to note that the uploaded content and any archives associated with this will be retained, HOWEVER in the reports, you will notice you are missing the ‘By Course’ report.  That is LOST with the move.  ‘By Course’ report is essentially the difference between a meeting and a VC.  So if you move VCs to meetings, that report is gone.  You still will have ‘By Attendees’ , ‘By Session’, and ‘By Questions’ (which are poll pod questions, not courses) reporting that will be retained.

Of course moving meetings to training will work the opposite way.  You finish that process off by changing the icon from ‘meeting’ to ‘virtual-classroom’.

 

Adobe Connect 9.3 Concurrent Learner Licensing Updates

Adobe Connect 9.3 Concurrent Learner Licensing Updates

As we released Adobe Connect 9.3, we began to more accurately track Concurrent Learner licensing usage (i.e., licensing of the Adobe Connect Training Module), with reporting available in the “Reports” section of Adobe Connect Central to provide specific usage metrics.  With increased accuracy of concurrency measurement introduced in version 9.3, you may reach your concurrency limits more quickly due to this change.  Here is an FAQ around this update:

http://helpx.adobe.com/adobe-connect/kb/connect-93-concurrent-learner-licensing.html