Navigation:  Messaging and Streaming > RTMP Messaging >

Application Configuration

Previous pageReturn to chapter overviewNext page

A messaging application may include a configuration file located in the root of the application. The file name must be app.config. Configuration includes the following sections:

Application handler - provides custom handling of application life cycle events
Streams folder path - configures the location of the folder containing Flash video (.flv) files available for streaming. Additionally, the folder stores the recorded streams
Extensibility implementations - configures various classes implementing WebORB Messaging APIs overriding default implementations

 

Application handler

Messaging application handler can add custom functionality to the default processing of the application life cycle events. For instance, handler may notify all connected clients about other clients joining/leaving the application. A handler must implement the Weborb.Messaging.Api.IScopeHandler interface or can extend the Weborb.Messaging.Server.Adapter.ApplicationAdapter class. Click here for additional information about WebORB application handlers.

 

Streams folder path

By default messaging applications store the streams in the /streams folder under the application directory. For example, the following directory structure shows a messaging application with 3 flash video files:

[WEBORB HOME]
   └─Applications
       └─MyVideoApp
             └─streams
                  ├─video1.flv
                  ├─video2.flv
                  └─video3.flv

It is quite common that the location of the video files must be taken outside of the IIS directory structure. Messaging application configuration file (app.config) contains a configuration option to override the default location: stream-path. For example, the configuration below sets the streams folder path to c:\mediafiles\homevideo\streams:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
 <application-handler>Examples.AppHandler</application-handler>
 <streams-path>c:\mediafiles\homevideo\streams</streams-path>
</configuration>

When the streams path is overridden, all videos for the application will be located at the specified path. Additionally, WebORB will use the same folder for any streams recorded by the application.

 

Extensibility implementations

WebORB provides several points of extensibility enabling customization of the default implementation. Below is a list of functional areas an application can be customized with:

Extensibility element

Description

Additional information

streamFilenameGenerator

A class responsible for constructing paths to the stream files

contact support

consumerService

Service for consumer objects, used to get pushed messages at consumer endpoint

contact support

streamableFileFactory

Scope service extension that provides method to get streamable file services set

contact support

schedulingService

Service that supports periodic execution of jobs, adding, removing and getting their name as list

contact support

streamService

Class responsible for handling of the stream methods that can be called through RTMP

contact support

providerService

Central unit to get access to different types of provider inputs

contact support

streamSecurityService

Service that supports protecting access to streams

contact support

flowControlService

Service that controls bandwidth of IFlowControllable objects

contact support

videoCodecFactory

Factory class responsible for creating an instance of video codec

contact support

sharedObjectService

Class responsible for managing creation and retrieval of remote shared objects

contact support