• Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint
Share this Page URL



The phone rang just after I arrived at my office following a very uninteresting commute from the suburbs of Toronto. A familiar and friendly voice was on the other end. It was Linda. Linda is an acquisitions editor at New Riders Publishing. We had worked on a project together earlier that year.

After some light small talk, she cut to the chase, as she is prone to do. “Kevin,” she said, “Would you be interested in writing a book?”

“A book,” I said, all the while wondering what she thought I had to say to the world. “What about?” I have to admit I was intrigued.

Tin Can,” Linda said excitedly. Now, Linda always sounds excited over the phone, but this time it was different. It was the kind of excitement that you couldn't say “no” to.

I thought about it that morning over an especially strong cup of coffee. Tin Can was the code name of the long anticipated release of Macromedia Flash Communication Server MX. I wasn't too worried about the technical challenge; I could handle that. I was more concerned about the book's approach and the challenges of introducing concepts that were so new.

Ok, I decided if I was going to write a book, I had to have some “story-telling” element to it.

And here is the result. I started this section with a traditional form of communication: an expressive story told using the written word. Now, my story-telling skills may need work, but the opening anecdote illustrates what this book is all about—communication. This book is about building technology to help us communicate with each other in a more human way.

The problem with many software programs is that the talented engineers have focused on issues of technology and not human interface. Everyday we are forced to deal with amazing technology through poor user interfaces. The Flash Communication Server is a technology framework that abstracts connectivity and platform concerns to a level where developers don't have to be concerned about them any more.

This is not to say that the Flash Communication Server will solve human interface problems. It won't. It does, however, take care of some of the technical plumbing so that you can focus on how people will communicate. The Macromedia Flash MX authoring environment and Macromedia Dreamweaver MX are the integrated development environments (IDE) for creating Flash Communication Server Applications on the Mac and Windows platforms. These technologies are accessible to literally millions of developers, designers, animators, and engineers in every country and in every language. Plus, new techniques and an awesome collection of Flash UI components make it simple and quick to start working with the Communication Server.

Exactly What Is Macromedia Flash Communication Server MX?

Flash Communication Server MX is an enterprise-grade server technology that facilitates connections between the Flash 6 players, .NET, and J2EE application servers and other Flash Communication Servers. The 1.0 release of the server is supported on the Windows platform only.

An application that uses the resources of a communication server is called a Flash Communication Application. Flash Communication Applications can be distributed over a local network or across the Internet using a traditional web server on any server platform (Mac, Unix, Windows). Applications are executed within Flash Player 6, independently, or embedded with a web browser that supports the Flash Player 6 plug-in.

How Does the Flash Communication Server Work?

The Flash Communication Server is a hub. Flash players connect to the hub using Macromedia's bidirectional communication protocol called Real-Time Messaging Protocol (RTMP). As the hub, the Flash Communication Server can easily connect to other communication servers (hubs) to increase user and bandwidth capacity. The Flash Communication Server can also connect to J2EE, web services, and ASP.NET application servers to extend applications with database connectivity and other server resources, such as an email or LDAP server.

The connection between client and server or server and server supports multiple one-way streams published or received by a client or the server. The Flash Communication Server has a powerful programming model called SharedObjects. SharedObjects synchronize complex data and send one-way messages between clients connected to the server.

Regular ActionScript objects are transported across network connections using the Action Message Format (AMF). This format is used over a non-persistent HTTP or secure HTTPS connection when exchanging data with application servers. The format is also used over the persistent RTMP when exchanging data between client and server. AMF is a binary format that is handled transparently by the server and Flash Player 6.

Why Is Flash Communication Server Needed?

The Flash Communication Server solves two very specific issues in the world of Internet-based communication:

  • A development environment

  • Technology adoption across platform and device

It solves these problems by connecting Flash players together and leveraging the sophistication of the Flash MX authoring environment.

The Flash Communication Server takes care of the communication “plumbing” and allows the developer to focus on quickly building communication applications that are easily integrated into a business or creative environment. The communication server provides the building blocks for Flash applications to communicate with each other using a standard object-oriented scripting language: ActionScript, which is based on JavaScript.

Flash Communication Applications are delivered using Flash Player 6, the most universally adopted software that has ever been produced. Flash Player 6 is available across all platforms and is supported by a growing number of mobile devices, such as the pocket PC. This acceptance and distribution breaks through a major barrier faced by any new application hitting the market for the first time. Developing applications that use Flash Player 6 lets developers focus instead on what is key—the communication experience.

The SWF file format, which Flash Player 6 uses, is an open standard adopted by television and film production tools, 3D animation software, and now Internet-based communication technology. Flash Player 6 is the most universally accepted new release product ever with a 68% market saturation just six months after its release in May of 2002.

Macromedia has changed everything with the Communication Server. The company calls it a revolution, which is a pretty accurate description. The traditional client-server relationship of Internet applications was simple: Someone asked for something, and you gave it to them, as in HTTP and the client-request method. JavaScript allowed you to place data and logic on the client, autonomous from its origin. Databases and application servers made life easier by separating content from display logic. This brought on the content-management revolution.

In the early 1990s, the basics of Internet communication were just starting. There was messaging over the Internet, both live and offline, but they were not practical parts of web page concept. The arrival of streaming application servers and XML in the late 1990s changed the perception. The Flash Communication Server has just added another layer of complexity to everything, bringing about a fundamental change in thinking about Internet applications.

A New Paradigm for Communication

As humans, we want to communicate, but the machines that “enable” online communication are very “offline.” So much technology has allowed us to talk not with each other, but with computers instead. Consider how you interact with your telephone's voicemail system: You use the keypad to enter a series of numbers, even though the technology supports voice input! The same is true of saving a name in your cell phone address book; you press 1 for a, b, and c, 2 for d, e, and f, and so on. So, why are we trying to be connected all the time if everything we use is offline?

In a Macromedia newsletter, the company's chief technology officer, Jeremy Allaire, describes the Flash player as a Trojan Horse. He describes delivering hundreds of millions of Flash 6 players to the market as “distributing several hundred-million next generation communications devices—and just now turning it on.”

To understand what he means, consider the recent trends in gaming and instant messaging. Battle.net enables game manufacturers to connect their games together, so humans can compete with humans regardless of location. Game consoles, such as Xbox and Playstation, will soon introduce network gaming and player-to-player voice communication through the game. This new technology will allow gamers to play a hockey match with a player somewhere else on the planet. Another indication of the communications shift is the popularity of instant messaging from AOL, MSN, and Yahoo!.

Such hardware devices as Cybiko (http://www.cybiko.com) target a consumer market with sophisticated communication technology wrapped in an interface that is easy to understand.

It is more than clear that we are starting to consider technology as a formidable means of communication. The Flash Communication Server is exciting for developers not only because it has already been adopted and distributed for you, but also because your time has been freed up to focus on delivering the messages of others in a more “human” way. It is now up to you to enable us to communicate in new ways.

So, get comfortable and get ready to be inspired!

Who Is This Book for?

Flash Communication Server MX is for developers familiar with building Flash applications. Developers who are versed in object-oriented programming using JavaScript or Flash ActionScript will gain a unique advantage and learn to leverage the real power of the server. This should not discourage developers new to ActionScript or even Flash MX. The first 10 chapters will walk you slowly through foundation concepts and basic exercises designed to step you through each element and process.

This book is also for server administrators and Internet service providers considering offering the Communication Server as a shared hosting solution.

The book provides a strong technical and contextual background to get you building and distributing applications quickly, from installing the server to building a work environment to scripting complex applications. There's context, code, design, and even some humor thrown in.

What Does the Book Cover?

Flash Communication Server MX walks through 10 quick steps to get you started. Beginning with the install process, you will move quickly to a basic implementation of the Flash UI components and simple ActionScript. Some advanced exercises will give you the footing you need to be successful with Flash Communication Server MX. The book will follow up the 10 steps with a detailed overview of the communication objects available on the server and within the Flash MX authoring environment. Detailed reviews of server administration, connecting databases, and development techniques also will be presented.

Three real-world workshops will introduce you to methods of developing communication applications, games, and training and education applications. You will walk away stunned and amazed at the new possibilities of Macromedia Flash MX, when combined with the Macromedia Flash Communication Server.

You will discover that developing rich and connected applications with Flash MX and the Flash Communication Server is very quick and painless. If you are not a Flash programming expert, don't be scared; you will build communication applications with no ActionScript over the first five steps! Get ready for a shock: You don't need any code to be productive with the Communication Server. Once through the introductory chapters, you will gain a deeper insight into the Communication Server's operation using server-side ActionScript.

What Are the Software Requirements?

You must have a few things in place before you get started.

Make sure you also have Flash MX installed before putting the Communication Server on the same workstation. If you use Flash MX on the Mac, you can develop Communication Server Applications. You will not, however, be able to test your application without a Windows-based server. Version 1.0 of the Flash Communication Server is available for Windows platforms only. The manual process to install the Communication Components on your Mac will be discussed later in this chapter. Here are the requirements to get started:

  • Flash Communication Server (any edition)

  • Macromedia Flash MX (trial or full version on Windows or Mac OS)

  • Macromedia ColdFusion (any version; you'll use this in the Flash Remoting MX examples)

  • Sorenson Squeeze (trial or purchased version)

  • The most recent version of the Flash player

  • Windows XP Professional, Windows XP Home, Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server, or Windows NT 4.0 Workstation SP6 or later

  • Windows Web Services IIS (recommended, but not required)

  • A web browser with Flash Player 6 installed (Microsoft Internet Explorer is recommended)

  • Multimedia hardware: web camera (or live video source), microphone, and headphones or speakers for each “connected” computer

Having a web server installed is also a good idea, but is not required. If you do want to run the Communication Server with a web server, set up the server before you install the Communication Server.

If you are considering using the Flash Communication Server for a one-time event or application and don't want to worry about managing the server, bandwidth, or licensing, you can use a Shared Hosting company to supply you with Flash Communication Server access. Since Macromedia released the Flash Communication Server, many Internet Hosting companies have started to offer Flash Communication Server Hosting as part of their shared service. One company, NI Solutions Group, Inc. (http://www.nisgroup.com), offers Flash Communication Server hosting at very reasonable rates. They are also hosting all the example applications that are presented in this book (http://flashcom.PangaeaNewMedia.ca).

Trial Software and Downloads

If you don't have the listed software, you can download free 30-day trials from these links:

This book focuses on Flash Communication Server MX; please consult the individual software manuals for Flash MX and other programs for installation requirements and procedures. Your 10-step journey into the world of Flash Communication applications will start by installing the Flash Communication Server in Chapter 1, “STEP 1: Installation and Setup.”

What Is on the Web Site?

All exercise source code, errata, and updates will be posted to the book's web site:


Additional tutorials and exercises may be posted, as well. Live Flash Communication web casts will occur at regular intervals to help you with any problems you might have with the server implementation. Keep an eye on the site as you jump into developing applications with the Flash Communication Server MX.

  • Creative Edge
  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint