TM Web Services Installation (How To)

Overview   Top

Theatre Manager web services need 3 components set up in order to work. These are illustrated here and are:

Theatre Manager Web Sales Data Flow

This diagram shows the flow of data for web sales. The general setup involves:

  • The firewall directs incoming traffic on ports 80 and 443 to the web server from the internet. The web server is configured to elevate all port 80 traffic to use TLS on port 443.
  • The web server can be on the same subnet as the firewall (or not, as you wish). This allows:
    • web traffic from the internet on ports 80 and 443
    • provides dynamic load balancing to a number of Theatre Manager Servers and passes web requests to port 5000 on each of those servers
  • A TM Server in Services Configuration receives communication on port 5000 and talks back to the web server on internal port 8111 (a separate virtual server) to retrieve custom web pages for merging
  • Some configuration of the services in Company Preferences Director Tab

The actual installation of the is described for Macintosh and Windows. While unsupported by Arts Management, you can use Linux if you know how to use apt-get and install and configure NGINX (we can provide a template nginx.conf file for you.

The diagram refers to 192.168.1.x for the internal network and is used throughout the documentation as a sample lan addresses. Your IP addresses may be different

Install TM Server   Top

Theatre Manager Network System

The TM server functions for both web server (using NGINX) and web services. This section contains instructions for:

Tm Server should be installed on machines with multiple processors. For best results:

  • As a web server
    • Use at least a dual core machine with hyper threading
  • As a web services machine
  • Use at least a 4-core machine with hyper threading

Mac OS   Top

OSX File Location   Top

If you run into a situation where a TM Server will not start up, you can delete the preferences file and start over. Open Terminal and type: cd ~/Library/Application Support/Theatre Manager Server and then rm -rf config.json.

For classic listeners run and managed by the TM Server on OSX. There is a temporary file created in /var/root/Library/Caches/Theatre\ Manager\ Server/TheatreManagerRunTime/Libraries that tells the classic listener how to startup. It cannot be edited or changed by a user as it is re-created each time the classic listener starts.

Installing   Top

Step 1

Download the extract the Macintosh installers.

Step 2

Click the installer and then click Continue.

Step 3

Click Continue.

Step 4

Read the license and click Agree.

Step 5

Enter your admin password (or use your finger if the machine as touchID enabled).

Step 6

Let the installer run.

Step 7

Click Close.

Step 9

Turn off Airplay Mirroring in since that has a conflict port port 5000 used by Theatre Manager. This problem seems to have begun in Monterey.

Step 10

Proceed to the server configuration steps.

Starting the NGINX Server   Top

Use Terminal to start or stop the TM Server on OSX.

  1. Open Terminal
  2. To completely stop and restart the server (this should have already been stopped during the install process), you will need to enter the following commands:
    • sudo launchctl unload /Library/LaunchDaemons/com.artsman.theatremanagerserver.plist
    • sudo chown -R root:wheel /Library/Application\ Support/TheatreManager/
    • sudo chown root:wheel /Library/LaunchDaemons/com.artsman.theatremanagerserver.plist
    • sudo launchctl load /Library/LaunchDaemons/com.artsman.theatremanagerserver.plist
  3. Use the Director to configure the second generation server for the first time.
  4. Disable all power saving settings on OSX so that the server doesn't go to sleep - it's not a good idea for it to do so for web sales.

Troubleshooting   Top

You can test and troubleshoot the Theatre Manager Server on OSX using any of the following tools. If you bring up this web page on the nginx server, the links below should work directly by clicking in them. If not, substitute your web server IP address for in all links below.

  • Director
    • Use the Director web page to verify the second generation server management process is running.
    • You can use the console log to verify errors on start up.
      • If you see that it cannot connect to the database, then verify that you put the IP address and Database name into the right fields in the director window
      • If you see a console message that says the schema is incorrect versions, the second gen listener should download the latest and install it. if it does not, manually stop and start the second gen listener via the terminal
      • If you get a message that indicates trouble with editing json preferences, you may need to use the following command in terminal to remove the preferences file and start again: sudo rm "/var/root/Library/Application Support/Theatre Manager Server/config.json
  • Activity Monitor
    • In Activity Monitor, if you view the list of processes, you should see a number that are named Theatre Manager Server if it started properly.
  • Virtual Host Test
    • You can test for a direct response to retrieving a page on the virtual server.. If the Theatre Manager Server is on, then the link below should elicit a response that shows a page that has not been merged. If you get Page Not Found or some other error, then the virtual host is not set up correctly:
  • Eternal Probe
    • If you want to check the general health periodically of the second gen server, then use the following URL to ask for the time from the second generation listener: (replace /1/ with your outlet number)
    • If you want to query through the second generation listener to see if a classic listener is running, then add &force_proxy to the URL. This talks through the second generation to the classic and, in effect, tests both at the same time:

Windows   Top

Windows File Location   Top

If you run into a situation where a TM Server will not start up, you can delete the preferences file and start over. Navigate to the directory: C:\Windows\system32\config\systemprofile\AppData\Local\Arts Management Systems\Theatre Manager Server and then delete the config.json.

Installing   Top

See current help pages

Starting the Server   Top

See current help pages

Troubleshooting   Top

See current help pages

Server Configuration   Top

See current help pages

Services Configuration   Top

See current help pages

TM Server Special URLs   Top

See current help pages