Installation Notes

Before beginning the installation
process, please read all of the
instructions.

Step 1 - Determine system requirements

The PhoneStream AudioStreamer server version 1.0.10.4 requires the following:
  • One of the following operating systems:
    • RedHat Linux 6.2 or 100% compatible Linux distribution with:
      • Apache HTTP Server 1.3.12 with DSO option.
      • 64 MB RAM for Linux and Apache plus approximately 2MB RAM for each concurrently active stream.
      • X Windows Display (required only for installation).
    • Windows 2000 or Windows NT 4.0 (Service Patch 3 or later) with:
      • Internet Information Server (IIS) 4.0 or later.
      • 128 MB RAM for Windows and IIS plus approximately 500 KB RAM for each concurrently active stream.
  • Intel Pentium Pro or greater processor.
  • 10Mbit or faster Ethernet NIC.
  • 30 MB free hard disk space.
  • IMAP4rev1 compatible mail server.

Step 2 - Planning your system configuration

Prior to installing any of the PhoneStream software, determine how many concurrent audio streams you wish to support and whether any additional software will be running on the PhoneStream AudioStreamer host. For example, a small site or an evaluation environment may wish to run a 100 license PhoneStream AudioStreamer server, a basic web site, and the IMAP server all on the same host. A larger site, however, will generally host its primary web site, IMAP mail server, and PhoneStream AudioStreamer each on dedicated hosts. In enterprise environments, PhoneStream AudioStreamer can also be load balanced to provide optimal scalability and performance.

Once the server layout has been determined, calculate how much memory is needed for each PhoneStream AudioStreamer host. In addition to the base RAM required by the operating system and web server, allow 2 MB for each concurrent stream on Linux and 500 KB for each concurrent stream on Windows. To operate efficiently, a 100 license PhoneStream AudioStreamer host therefore requires approximately 256 MB of RAM on Linux and 192 MB of RAM on Windows. You will probably want to calculate the maximum number of concurrent streams to be the same as the PhoneStream AudioStreamer license count you obtained for your server.

Finally, verify that the network and network card (NIC) you are using is sufficient for the desired load. Ethernet runs most efficiently when network usage is well below the stated bandwidth. Allowing approximately 13 Kbits/second (.013 Mbits/sec) for each stream,a 100 concurrent stream server requires about 1.3 Mbits/sec. However, since most installations will use an external IMAP server, the network usage may be twice this value since there is both an incoming stream from the IMAP server and an outgoing stream to the user. The 100 concurrent stream server will therefore require approximately 2.6 Mbits/sec, which is well within the bandwidth of a 10 Mbits/sec ethernet network if the remainder of the network traffic is nominal.

Step 3a - Preparing a PhoneStream AudioStreamer host (Linux ONLY)

PhoneStream AudioStreamer for Linux is designed to work on any installation which is binary compatible with RedHat 6.2. After installing Linux according to the distribution instructions, it may be necessary to separately install the Apache HTTP Server if it is not installed automatically. When installing Apache from binaries or when building it from sources, always verify that Apache is built with the DSO option (dynamic shared objects), otherwise Apache will not be able to communicate with the PhoneStream AudioStreamer server.

After installing Linux and Apache, test your installation by navigating to the host using a web browser. You should be presented with a banner page stating that Apache is installed. If not, you will need to correct your Apache installation before continuing.

If you have previously installed PhoneStream AudioStreamer and are now upgrading to a new release, you should uninstall the previous version by running the Uninstall_AudioStreamer script which was saved to the install location you specified when the software was initially installed:
/usr/local/PhoneStream/AudioStreamer/Uninstall_AudioStreamer

Step 3b - Preparing a PhoneStream AudioStreamer host (Windows ONLY)

PhoneStream AudioStreamer for Windows is designed for use with Internet Information Server 4.0 or later. IIS 4.0 is available as a free update to Windows NT 4.0 (part of the Windows NT Option Pack). IIS 5.0 is included as an optionally installed component of Windows 2000.

After installing Windows and IIS, test your installation by navigating to the host using a web browser. You should be presented with a banner page stating that IIS is installed. If not, you will need to correct your IIS installation before continuing.

If you have previously installed PhoneStream AudioStreamer and are now upgrading to a new release, you should uninstall the previous version by running the Add/Remove Programs control panel, selecting AudioStreamer, and choosing Remove. After the uninstall is complete, it is recommended that you unload any cached scripts, executables, or pages by rebooting the server (or using the Unload button on the Home Directory tab of the Web Site Properties in the Internet Information Services Management Console).

Step 4a - Installing the PhoneStream AudioStreamer software (Linux ONLY)

The PhoneStream installation can now proceed using the following steps. These steps assume the installation is started from a command line shell:
  1. Start the PhoneStream AudioStreamer host and wait for the Login prompt.
  2. Login to the PhoneStream AudioStreamer server as root or use 'su' to promote your security level to root.
  3. Set your DISPLAY variable to your X Windows display. This is generally handled automatically when you login if an X Windows Server is running on the PhoneStream AudioStreamer host, but may be necessary if installing the software using a remote X Windows Display.
  4. Obtain the PhoneStream installation package in the form of a self-extracting archive called install.bin.gz and save it to the current directory.
  5. Uncompress install.bin.gz to create install.bin:

  6. gunzip install.bin.gz
  7. Execute install.bin:

  8. ./install.bin
  9. When the installation requests a serial number, use the license key obtained from AudioBanner.com or leave the field blank for a 2 concurrent stream evaluation license.
  10. When requested, choose "Typical Installation" or "Full Installation". Full Installation is recommended unless only web browser access is required (the IMAP proxy for e-mail client access is not installed by "Typical Installation.")
  11. Choose the location of your Linux Apache configuration file. The installer will prompt you with the default location.
  12. On the installation's configuration screen, set the following:
    • Type your IMAP server's DNS or IP address in the IMAP Server/Port field. If your IMAP server runs on a port other than the well-known IMAP port (143) then you will also need to change the port in the subsequent field. If this is the first time you have installed a PhoneStream system, you may wish to use the PhoneStream test IMAP server mailtest.phonestream.com (port 1430) to initially test your installation and later change this setting to point to your actual IMAP server by editing eastream.ini. If desired, verify the connection by selecting "Check it!" (this may take up to 30 seconds to time out if the server does not respond).
    • Select the "Server Properties" button. In this form, set the following:
      • Set the name of the IMAP folder which will be scanned for messages:

      • Mailbox: inbox
      • Configure the MIME type that will be checked for compatible attachments:

      • MIME Type: audio
      • Determine the number of bytes prefetched by the AudioStreamer to choose the audio codec used for a particular audio attachment:

      • Header Size: 100
      • Optimize the shared memory used by the PhoneStream AudioStreamer:

      • Shared Memory (KB): 512
      • For improved compatibility with IMAP servers that do not support advanced server-side attachment searches (e.g. iPlanet Messaging Server), select the option:

      • Regular expression in applet mask
      • To enable web browser client users to see messages that do not contain audio attachments, select the option:

      • Show all messages in mailbox
      • G.711 audio attachments can be automatically transcoded to GSM by the PhoneStream AudioStreamer to allow the audio to stream over a low-bandwidth connection. To enable this feature, select the option:

      • G.711 -> GSM
    • Select the "Security Properties" button. In this form, set the following:
      • To encrypt URIs sent to the web server, change the Algorithm setting to an option other than None. The recommended setting is either RC2 or RC4 encryption. If encryption is not selected the end-user's username and password will be sent to the web server as clear-text. Therefore the None setting is only recommended for evaluation and testing:

      • Algorithm: RC2
      • If an encryption algorithm is selected then a random encryption key must be generated to perform the encryption process. In this case, choose the Generate option. If you would like to use an existing encryption key previously generated by the PhoneStream AudioStreamer choose the Select option and type the path to the key in the text field.
    • Type the DNS or IP address of the web server on which you are installing the PhoneStream AudioStreamer software in the WWW Server/Port field. If your web server runs on a port other than the well-known HTTP port (80) then you will also need to change the port in the subsequent field. If desired, verify the connection by selecting "Check it!" (this may take up to 30 seconds to time out if the server does not respond).
    • Select the "Proxy Properties" button. In this form, set the following:
      • Determine the port that will be used by e-mail clients to connect with the IMAP Proxy. For the best results, you will generally want to use the well known IMAP port (143). However, if you are running the IMAP server on the same IP address as the IMAP Proxy you must either use a different port for the IMAP Proxy (e.g. 1430) or reconfigure your IMAP server to use a different port. If you choose to reconfigure your IMAP server, be sure to reflect this change in the IMAP Server/Port setting you made earlier.
      • Select the number of client connections you wish to allow the IMAP Proxy to handle simultaneously using the Max. Connections setting. Connections are handled by the IMAP Proxy in a round-robin fashion.
      • Choose an Idle Timeout value to allow idle connections to be returned to the pool of available connections.
      • If desired, select Re-read INI file for new connections if you expect these settings to need to be changed dynamically. This allows new connections to utilize the new settings without restarting the entire IMAP Proxy. This settings is recommended only for evaluation and testing purposes.
    • If you obtained a separate applets package with your PhoneStream installation, add entries for the MIME subtypes supported by these applets.
  13. Complete the remaining installation steps of the installer.
  14. Restart Apache and verify it starts properly:

  15. apachectl restart
    apachectl status
  16. Start the IMAP Proxy and verify it starts properly:

  17. /etc/rc.d/init.d/easproxyd start
    /etc/rc.d/init.d/easproxyd status

Step 4b - Installing the PhoneStream AudioStreamer software (Windows ONLY)

The PhoneStream installation can now proceed using the following steps:
  1. Start the PhoneStream AudioStreamer host and login with administrative privileges.
  2. Obtain the PhoneStream AudioStreamer installation package in the form of a self-extracting archive called install.exe and save it to the current directory.
  3. Double-click on install.exe and follow the installation instructions.
  4. When the installation requests a serial number, use the license key obtained from AudioBanner.com or leave the field blank for a 2 concurrent stream evaluation license.
  5. When requested, choose "Typical Installation" or "Full Installation". Full Installation is recommended unless only web browser access is required (the IMAP proxy for e-mail client access is not installed by "Typical Installation.")
  6. On the installation's configuration screen, set the following:
    • Type your IMAP server's DNS or IP address in the IMAP Server/Port field. If your IMAP server runs on a port other than the well-known IMAP port (143) then you will also need to change the port in the subsequent field. If this is the first time you have installed a PhoneStream system, you may wish to use the PhoneStream test IMAP server mailtest.phonestream.com (port 1430) to initially test your installation and later change this setting to point to your actual IMAP server by editing eastream.ini. If desired, verify the connection by selecting "Check it!" (this may take up to 30 seconds to time out if the server does not respond).
    • Select the "Server Properties" button. In this form, set the following:
      • Set the name of the IMAP folder which will be scanned for messages:

      • Mailbox: inbox
      • Configure the MIME type that will be checked for compatible attachments:

      • MIME Type: audio
      • Determine the number of bytes prefetched by the AudioStreamer to choose the audio codec used for a particular audio attachment:

      • Header Size: 100
      • Set the web site ID on which the PhoneStream AudioStreamer will be installed. This value is generally a numerical index starting with 1 for the default IIS web site. If your IIS server only hosts one web site, the setting should be 1.
      • Determine the virtual directory to be used for the PhoneStream AudioStreamer on the web site specified in the previous field. This is the location web site users and IMAP proxy users will refer to using hyperlinks when retrieving audio attachments. The default setting is /audiostreamer.
      • For improved compatibility with IMAP servers that do not support advanced server-side attachment searches (e.g. iPlanet Messaging Server), select the option:

      • Regular expression in applet mask
      • To enable web browser client users to see messages that do not contain audio attachments, select the option:

      • Show all messages in mailbox
      • G.711 audio attachments can be automatically downconverted to GSM by the PhoneStream AudioStreamer to allow the audio to stream over a low-bandwidth connection. To enable this feature, select the option:

      • G.711 -> GSM
    • Select the "Security Properties" button. In this form, set the following:
      • To encrypt URIs sent to the web server, change the Algorithm setting to an option other than None. The recommended setting is either RC2 or RC4 encryption. If encryption is not selected the end-user's username and password will be sent to the web server as clear-text. Therefore the None setting is only recommended for evaluation and testing:

      • Algorithm: RC2
      • If an encryption algorithm is selected then a random encryption key must be generated to perform the encryption process. In this case, choose the Generate option. If you would like to use an existing encryption key previously generated by the PhoneStream AudioStreamer choose the Select option and type the path to the key in the text field.
    • Type the DNS or IP address of the web server on which you are installing the PhoneStream AudioStreamer software in the WWW Server/Port field. If your web server runs on a port other than the well-known HTTP port (80) then you will also need to change the port in the subsequent field. If desired, verify the connection by selecting "Check it!" (this may take up to 30 seconds to time out if the server does not respond).
    • Select the "Proxy Properties" button. In this form, set the following:
      • Determine the port that will be used by e-mail clients to connect with the IMAP Proxy. For the best results, you will generally want to use the well known IMAP port (143). However, if you are running the IMAP server on the same IP address as the IMAP Proxy you must either use a different port for the IMAP Proxy (e.g. 1430) or reconfigure your IMAP server to use a different port. If you choose to reconfigure your IMAP server, be sure to reflect this change in the IMAP Server/Port setting you made earlier.
      • Select the number of client connections you wish to allow the IMAP Proxy to handle simultaneously using the Max. Connections setting. Connections are handled by the IMAP Proxy in a round-robin fashion.
      • Choose an Idle Timeout value to allow idle connections to be returned to the pool of available connections.
      • If desired, select Re-read INI file for new connections if you expect these settings to need to be changed dynamically. This allows new connections to utilize the new settings without restarting the entire IMAP Proxy. This settings is recommended only for evaluation and testing purposes.
    • If you obtained a separate applets package with your PhoneStream installation, add entries for the MIME subtypes supported by these applets.
  7. Complete the remaining installation steps of the installer.

Step 5 - Test your PhoneStream server

Type http://localhost/AudioStreamer/main.htm in your browser's address field (replacing localhost with the DNS name or IP address of your PhoneStream AudioStreamer host if you not using a local browser). This will log you in to your IMAP server using the PhoneStream AudioStreamer software and display the message list page.

If you selected AudioBanner's test IMAP server, mailtest.phonestream.com, you can log in using the user name test and the password audiobanner by pressing the Login button. After a short wait, you are presented with a list of messages containing audio attachments. Selecting the first message in the list will open a second list with a single item (this message has only one attachment). Selecting Play will allow you to hear the test message. If the message or audio attachment does not appear, contact support@audiobanner.com for assistance.

Eastream.msg

This file contains all error messages returned by PhoneStream.

Debug Log

  • The log file can be turned on by setting the flag Log in eastream.ini (note that it is necessary to restart the web server and unload any cached libraries for changes to eastream.ini ro take effect):

  • Log=on
  • For Windows, the name of the log file is debug.log (located in the product installation directory).
  • For Linux, log information is stored in Apache's error_log, located in <ServerRoot>/logs. To enable Apache logging, it is also necessary to set LogLevel=debug in <ServerRoot>/conf/httpd.conf.

PhoneStream Settings (eastream.ini)

Section [applets]

The applets section contains key=value pairs. These pairs are used to associate a MIME subtype with the location of a Java applet which can decode this MIME subtype. For example, if the currently installed PhoneStream server can support the wav, x-wav, and gsm subtypes with the following settings:
audio/wav=classes-021
audio/x-wav=classes-021
audio/gsm=classes-023

The values classes-021 and classes-023 represent Java applet folders installed in the AudioStreamer folder.

Section [init]


Parameter Meaning Default
Server IMAP server IP address None
ServerPort IMAP server TCP port 143
Mailbox IMAP server mailbox Inbox
WWWServer DNS name or IP address of PhoneStream AudioStreamer server or load-balancing router. None
WWWServerPort HTTP TCP port of PhoneStream AudioStreamer server or load-balancing router. 80
SessionTimeout Session timeout in seconds 1500
CheckInterval Interval in seconds between checks for session timeouts 300
MIMEType Default MIMEType of selected messages audio
ListTemplate HTML file used as the template for message list List.htm
PlayTemplate HTML file template containing applet Play.htm
AttListTemplate HTML file used as the template for attachments list Attlist.htm
ErrorReportTemplate HTML file template for error report. Error.htm
VirtualPath IIS virtual path to AudioStreamer install directory

IIS implementation only

/1/ROOT/AudioStreamer
KeepIMAPSession On/Off. User remains connected to IMAP server between HTTP request if value is On

Windows implementation only

Off
SharedMemSize Size in KB of shared memory block

Linux implementation only

256
UseRegExp Use left part on applet section entries as regular expression for message selectionto. Off
ShowAllMessages Shaw all messages in mailbox without any selection. Off
CheckHeaderSize Number of bytes prefetched by the AudioStreamer to choose the audio codec used for a particular audio attachment 100
SSL Enable secure login using https and a SSL certificate (not provided). Off
G711toGSM Enable transcoding of G.711 audio attachments into GSM to allow the audio to stream over a low-bandwidth connection. On
Log Debugging/status log for AudioStreamer Off

Section [proxy]


Parameter Meaning Default
ProxyPort TCP port on which IMAP Proxy listens. 1430
WWWAudioStreamer Path to virtual directory containing PhoneStream AudioStreamer on WWWServer /AudioStreamer
ReadEveryTime Parse the eastream.ini file for each new IMAP Proxy connection Off
Timeout Number of seconds before an idle connection is timed out 10
MaxConnection Number of simultaneous connections to allow before refusing a connection 100
PlainTextURL   Off
Console   Off
ProxyLog Debugging/status log for IMAP proxy Off

Section [security]


Parameter Meaning Default
Algorithm Encryption algorithm for URIs transmitted to the PhoneStream AudioStreamer to retrieve specific attachments without transmitting the username, password, and message ID (currently only None, RC2, RC4, and Base64 are supported). None
KeySource Filename (not full path name) of the encryption key. If you are running multiple AudioStreamer servers behind a load-balancing router this file should be the same on all servers. None

AudioBannerTM and PhoneStreamTM are trademarks of AudioBanner.com Inc.
Copyright © 1999-2005 AudioBanner.com Inc.