Adobe Connect User Community


Send this page





Bookmark and Share

Home >  Learning Center >  Tutorials >  Developing Authorware Content for Use in Connect Pro

Developing Authorware Content for Use in Connect Pro

Andrew Chemey, Adobe Systems

December 2008

Expertise Level: Advanced

  
1 Votes

This document serves as a review of some of the features of an Authorware example file designed to work with Adobe Connect (Connect). To be clear, its actually not all specifically designed to work with Connect, but rather to work in any AICC/SCORM environment; of which Connect is one, though there is one minor implementation designed specifically for Connect that will be pointed out.

I thought it worth mentioning what this document isnt. Its not a document that describes Authorware or its features. Its not intended to demonstrate everything you can develop with Authorware nor is it designed to indicate how you should develop with Authorware. It also doesnt describe [in detail] the ways to make Authorware communicate with an LMS, or in this case Connect.

Requirements

  • Authorware (for editing or viewing the source file)
  • Authorware Web Player (2004)
  • Sample Files associated with this document is available for download. This sample file uses at least two additional components for Authorware; LMS KOs for Authorware 7 (Professional) and Interaction KOs for Authorware 7. You can view the source files, though youll need the KOs installed to view or modify the wizards associated with LMS KO or Interaction KO icons in the source file. Please feel free to contact me for additional information about these KOs. To use the content, download the sample content from the links, below. They are available in .zip format and may require you to install an extraction program such as WinZip available from http://www.winzip.com.

Communicating with an LMS

There are many articles written about communicating with an LMS and even specifically integrating Authorware with Adobe Connect. Some of these articles can be found here:

http://www.adobe.com/resources/breeze/training/articles/aicc_compliant.html
http://www.adobe.com/devnet/authorware/articles/compliant_files.html
http://www.adobe.com/devnet/authorware/articles/breeze_authorware.html

NOTE: If you only read ONE of these articles, I highly recommend the last article by Joe Ganci on Breeze/Authorware for steps you can take to publish your file for Connect.

The example file that is provided with this document uses a version of the LMS KOs that was developed for Authorware. It uses a Professional version, though it really wasnt necessary (just convenient). This is NOT required for communication to occur with Connect. In order to see the wizard of the LMS KOs (by double-clicking on any of the LMS KO icons in the example) youll need to have the LMS KO Professional installed.

The example file also uses a set of Interaction KOs. These were used out of convenience and to demonstrate how you can have files send AND retrieve interaction data with an LMS / Connect. The Interaction KOs are available for FREE, though they only communicate with an LMS through the Professional version of the LMS KOs. Again, this is NOT required for any of the communication (including showing how to remember answers in previous sessions) to occur with Connect. In order to see the wizard of the Interaction KOs (by double-clicking on any of the Interaction KO icons in the example) youll need to have the Interaction KOs installed.

What is the point of this document?

I received a simple request to demonstrate an Authorware file launching and tracking in Adobe Connect Training or Curriculum. I seriously could have demonstrated this in just a few minutes using any number of example files (including examples from the articles, above). However, there are some issues that I wanted to prevent and ensure a smooth integration with *any* LMS in as many browser environments, as possible. I used an example I already developed and packaged, though it uses functionality that you might not use.

So far, it might seem as if the example file might not be the best choice for this demonstration (and I have to admit, it might not be). However, I like to demonstrate that there are ways to accomplish interesting functionality in an easy fashion. What I mean is a developer can develop a wizard which performs very complex actions in such a way that a significantly less skilled developer can interact with it. Thats what this content example demonstrates (or attempts to demonstrate). Even though the all of this functionality is NOT discussed here, heres an example of what you might find in this example content:

  • Communication with an LMS (though the example uses the Professional version of the LMS KOs, there are a number of ways this can be accomplished to communicate data to Connect)
  • Using a Resume/Restart type mechanism. If a learner exits the content in Connect Training as a Course or Curriculum, before it is completed (for example, exit after answering the first question), the example will display a prompt asking the learner if they would like to resume or restart when the re-launch the content from Connect. This prompt goes away after the learner has completed the file. The learner will be taken to the first page of the content on restart, after completion
  • In addition to resuming where a learner left off, the content demonstrates how Authorware can be used to remember how the learner answered individual questions, so they can be re-displayed for historical or reporting purposes
  • This content should work in all browsers (though admittedly, there might be some minor changes, if the learner doesnt have or doesnt have the correct version of the Authorware Web Player)
  • This content should work in all AICC and SCORM-compliant LMSs
  • This content shows as Authorware type content in Adobe Connect
  • Communication with the LMS is much more customizable in Authorware. Simple examples is demonstrated on Page 1, where the content displays Welcome {FirstName} to Photography 101
  • Automatically close the browser window when the exit button is clicked

All of these features can be developed by any knowledgeable Authorware developer. I am sure you have your own content and development standards, so this is more to be used for folks that werent aware this functionality existed. This document and associated example file is more to discuss some of the other not-so-known issues with Authorware and browsers (such as an issue with IE7, discussed below) that I resolved while producing this example.

Using Internet Explorer 7 with Authorware

There is an issue when launching web-packaged Authorware files in Internet Explorer 7 (IE7). Authorware has the ability to easily communicate from Authorware to JavaScript (and vice versa) using its ReadURL function.

NOTE: This document does NOT attempt to understand how or why the issue exists, simply to acknowledge that there is an issue. As far as I know it exists for all Authorware web-packaged files attempting to communicate with JavaScript in IE7.

If you used a simple function call like this in Authorware:

ReadURL(javascript:alert(\hi, mom\);, 0)

This function would cause an alert box to appear when packaged and launched via an HTM file in a browser under IE6 (or earlier) and Mozilla-based browsers. However, the same file would not have any seemingly affect when typically launched in IE7.

The key word in the paragraph above, is typically. In most typical instances, the Authorware file when packaged contains a single HTM that contains the embedded Authorware Map file (references the AAM in the embed tag). That HTM file is then launched from a browser, regardless of whether its launched from an LMS or not. Under this typical scenario, the communication between Authorware and Javascript in IE7 seems not to be functioning. However, it has been found that if you wrap the Authorware HTM file in either a frameset or an iFrame, then the communication between Authorware and Javascript functions as expected.

To review this in a bit more technical detail, lets look at what it takes to create a frameset, which makes this work. Assume we have an Authorware packaged file with the following files:

  • authorware.htm
  • authorware.aam
  • auth0000.aas

NOTE: These are they types of files an Authorware developer would expect to see when they web-publish a file using Authorware. If you arent familiar with these file-types, you may want to review any documentation or article about publishing from Authorware.

Obviously, the file that is launched from the browser would be the authorware.htm file. However, if your Authorware file uses the ReadURL function to communicate with javascript, the function would not seemingly work when launched in IE7.

To make it work, imagine adding another file to your Authorware package called index.htm. This file would make your fileset look like:

  • authorware.htm
  • authorware.aam
  • auth0000.aas
  • index.htm

The index file would contain HTM/Javascript to wrap the real Authorware file in a frameset. In a most basic example (though it wont work in our case), the frameset code would look similar to this:



IE7 Frameset


Normally, a frameset is used to create an environment where you have more than one frame appear in a browser. You see this in websites, where there might be a logo and company information at the top of the page in one frame, and a separate content frame in the bulk of the browser with a scrollbar so that a viewer can scroll through the content frame, but the logo and title frames dont move.


Figure 1: Typical Frameset

To address the Authorware and IE7 issue, we are creating a frameset with one frame:


Figure 2: Authorware / IE7 Frameset

The frameset we are creating is pretty much seemless, from a learners perspective. They dont see any frame windows just the browser window that contains the Authorware file. However, the frameset has the ability to cause technical issues

When an HTM file is launched from an AICC-compliant LMS, at least two parameters are passed to the HTM file so that it can communicate data with the LMS. These parameters (aicc_sid and aicc_url) are added to the end of the HTM file like this:

http://server/folder/authorware.htm?aicc_sid=0001&aicc_url=http%3A%2F%2F...

The Authorware content tends to use these parameters from HTM file its launched from to communicate with an LMS. However, the launch file is now index.htm and its the index.htm file that is passed the parameters not the authorware.htm file. That complicates the launch process, but only slightly. The following code in the index.htm file will resolve this issue:



IE7 Frameset



This code passes the URL parameters from the index.htm (or the launch file, whatever its called) to the authorware.htm (or the file that launches the Authorware file). Please review the index.htm file in the root of the packaged files thats included with this document.

The actual frameset file is found in the line:
var strURLNew = "content/photography.htm";

Its this file that contains the reference to your Authorware-packaged file. If youve followed along, so far the basic steps to workaround Authorware and IE7 communication is to:

  • Web-packaged your Authorware file
  • Copy/Paste a file similar to the index.htm contained in the example or using the code sample from above (you should now have the index.htm file, which is the launch file, your Authorware HTM file, an Authorware Map or AAM file, potentially a series of AAS files, and possibly other related files copied from the publish process
  • Edit the index.htm file and change the frameset reference (by changing the line var strURLNew = "content/photography.htm"; to reflect the name of the Authorware HTM file. In this case, we put all of the Authorware-published files in a folder called content and that will be explained below.
  • I suppose I should indicate that if we followed our example files thus far, the actual name of the frameset file (the variable reference) should actually be authorware.htm without being launched from a content folder. So in reality the frameset variable reference should be: var strURLNew = "authorware.htm";

Content Types in Connect
When content is imported into Connect, it attempts to differentiate between the different content types or tools used to create that content. This screen capture shows some of the content-types that Connect recognizes in the Content tab.


Figure 3: Content Types (and their associated icons) in Connect

For Authorware, Adobe Connect looks at the contents of the zip file. It looks for a single HTM and a single AAM file in the root of the zip. If the zip file only contains one HTM and one AAM (though it can contain any number of other types of files) than Connect displays the Authorware type and associated icon in its interface, as demonstrated above.

However, if you think about our file contents, we have been discussing, we have:

  • authorware.htm
  • authorware.aam
  • auth0000.aas
  • index.htm

We added an extra HTM file to our fileset, to accommodate an IE7 issue. This means that the content icon and type will actually display as HTML Content as shown in the Unknown / HTML / Generic Content entry, above.

NOTE: It might be a bit late, but if you are NOT using IE7 you dont need this workaround or extra file.

Thats why youll notice in the code sample, above, from the index.htm file there is a reference to a folder in the frameset reference called content. By placing all of the Authorware-packaged content in a folder, the only file in the root of the package is our index.htm file (which is our frameset file to resolve IE7). Theoritically, our fileset looks like:

  • index.htm
  • content/authorware.htm
  • content/authorware.aam
  • content/auth0000.aas

But even then, if we zipped up the content and imported it into Connect, it would display as HTML Content. Thats because the root of the package only contains an HTM file. It does NOT contain an AAM file. To get the content to display as Authorware content type in Connect, we need to add an AAM file to the root of the fileset, so that it looks like this:

  • index.htm
  • index.aam
  • content/authorware.htm
  • content/authorware.aam
  • content/auth0000.aas

The index.aam file isnt actually referenced in any file, so it doesnt matter what the contents of that file are. If you look at the AAM file in the root of the package included with this documentation, it does not contain anything associated to a typical Authorware map. It just needs to exist in the zip package for Connect to recognize the content as an Authorware type.

Conclusion

I like to think that my documents and articles are long, to do my topics justice. I dont want to give anyone the feeling that this process is overwhelming or complicated it really isnt. I just wanted to explain the process I went through to get one of my existing example files to appear, launch and track in Adobe Connect (though really in any AICC or SCORM-compliant LMS) in the most optimal way.

Please feel free to contact me with any problems or questions you have with this article or any integration with an LMS issues.



Member Comments

Share your thoughts. Tell us what you think about this tutorial.


DECEMBER 18, 2008

Excellent article and well documented points. The article is NOT overly complicated the subject matter just takes a little understanding to explain to folks how Authorware content can continued to be used and leveraged within the Adobe Connect server. As with all learning file in any LMS environement test, test, test to make sure the results are what you expect.

thanks much Andrew great article.

APRIL 06, 2011

i have some problems to run my authorware course with mozilla firefox 3.6 (actual version).
in ie7 (iframe) it works well, but people also would like to use the firefox browser to learn web based trainings.
is there a special workaround?
i hope you can help me, with a sample course that works in both browsers.
Log in to leave comments


<< Back to Tutorials main menu.

?>