Remote Indigo Access

After you have started the Indigo Server in client/server mode, you can remotely access it from other Macs using the Indigo Client, from your iPhone or iPod Touch using Indigo Touch, or from any modern Web browser (Safari, Firefox, Opera).

The following steps explain how to access the Indigo Server from within the local area network (LAN) of your house. Configuring your network to allow Indigo Server access from outside your home (on the other side of your router/cable modem) is more complex and will depend on your network topology, router type, and ISP features (static versus dynamic IP addresses). For this reason, we are only providing instructions on how to get local (in house) remote access to Indigo Server.

If you desire easy remote Indigo Server access from outside your home, then you may want to subscribe to the Prism Reflector service, which provides secure Indigo Touch and remote Web browser access from anywhere with no network configuration needed. A free trial subscription is available for all Indigo customers.

Alternatively, you can configure your network by consulting your router user manual and, if your ISP does not provide a static IP address, using a dynamic DNS mapping service like DynDNS.com. Because of the potential complexity involved in manually configuring networks and routers for this type of access, Perceptive Automation cannot provide direct support answers about router port forwarding or IP discovery issues. Users having difficulty configuring their networking hardware should post on the online support forum. Be sure and include details about the type of hardware you have and what steps you have tried.

Modifying Firewall Settings

In order to remotely access the Indigo Server we must enable the ports Indigo Server uses in the system's network firewall. Follow these steps on the Mac running Indigo Server. OS X 10.5 uses a different firewall service than OS X 10.4 and earlier, so follow the instructions below based on which version of OS X you are running.

OS X 10.5 and higher

  1. Stop the Indigo Server if it is running by choosing the Indigo 4->Stop Server menu item.
  2. Choose the Apple Menu->System Preferences menu item.
  3. Select the Security preference panel.
  4. Select the Firewall tab.
  5. Select the Set access for specific services and applications radio button.
  6. Restart the Indigo Server by choosing the Indigo 4->Start Local Server... menu item and pressing the Start Server button.
  7. Mac OS X will now ask your permission to allow incoming network connections for the application IndigoServer.app and Python.app. Press the Allow button for each.

OS X 10.4

  1. Choose the Apple Menu->System Preferences menu item.
  2. Select the Sharing preference panel.
  3. Select the Firewall tab.
  4. Press the New... button to define new ports.
  5. Choose Other from the Port Name popup menu.
  6. Enter 1176, 8176 in the TCP Port Number(s) edit field. If you overrode either the Indigo Server port number (default: 1176) or Indigo Web Server port number (default: 8176) in the Start Local Server dialog, then use those port number values instead.
  7. Leave the UDP Port Number(s) edit field empty.
  8. Enter Indigo Server in the Description edit field.
  9. OK out of the dialog and close the System Preferences window.

Discovering the Indigo Server IP Address (LAN only)

The Indigo Web Server advertises itself via Bonjour, so Indigo Touch and Safari (by clicking on the bookmarks icon, then selecting Bonjour) will automatically find any local servers. In addition to that, when connecting to a local server for the first time, Indigo Touch will also automatically fetch Prism Reflector settings for that connection so that you'll be able to connect outside your LAN via Edge/3G.

For other browsers to remotely access the Web server, we need to know the network IP address for the Mac running Indigo Server. This address will be used on the remote Mac or Web browser when connecting to the Indigo Server. Follow these steps on the Mac running Indigo Server.

  1. Choose the Apple Menu->System Preferences menu item.
  2. Select the Sharing preference panel.
  3. If File Sharing is not turned on, then temporarily enable it.
  4. Note the URL shown at the bottom of the window: afp://xxx.xxx.xxx.xxx/
  5. The IP address is the number portion of the URL (ex: 192.168.1.23).
  6. If you do not want File Sharing on, then turn it off. You only turned it on to make the IP address visible.
  7. Close the System Preferences window.

You now have the IP address for the Mac running Indigo Server. Depending on your home network setup, this IP address may change periodically, such as when the Indigo Server Mac or router is restarted. If this happens, then you can use the steps above to discover the IP address again, or you can configure a static (not dynamic) IP address for the Mac running Indigo Server.

Remote Access Using the Indigo Client

  1. Double click the Indigo 4 application (inside /Applications/Indigo 4) on the remote Mac.
  2. If this is the first time to run Indigo 4 on this remote Mac, then press the Connect to Remote Server... button in the connection status window.

        -- or --

    If you are wanting to connect to a different Indigo Server, then select the Indigo 4->Connect to Remote Server... menu item.
  3. Enter the IP address for the Indigo Server Mac discovered in the section above.
  4. If you overrode the Indigo Server port number (default: 1176) in the Start Local Server dialog on the server Mac, then select the Override default port number checkbox and enter your custom port number.
  5. Press the Connect button.

NOTE: the Indigo Mac Client doesn't use the Prism Reflector service. Connecting an Indigo Mac Client to a server over the internet is a complex topic that is well beyond this document – we suggest you search our online forums for others that have configured this type of access.

Remote Access Using Indigo Touch

Indigo Touch, the iPhone and iPod Touch application from Perceptive Automation, allows the user to view and control Devices, activate Action Groups, view Variables, and access custom Control Pages (Pro only feature). One of the best features of Indigo Touch is it's ability to automatically detect and configure network connections. If your iPhone (or iPod Touch) is connected to your local wireless LAN, then it should automatically discover your server. In Indigo Touch, tap the Settings button. You should see the name of your Database in the list. Tap on it, and it will connect (it will ask for your username/password if you have one set, but it will remember it going forward so you won't have to type it in again).

At this point, Indigo Touch will also query the server to see if you have a Prism Reflector account set up for the server. This makes connecting to your home server via Indigo Touch completely seemless. If you have a reflector set up and running, then Indigo Touch will automatically attempt to connect no matter where you are or how you're connected. If you're local, it will use the local wireless LAN, If you're on a remote wireless LAN, it will attempt to use the reflector account. If you're on you iPhone on EDGE/3G, it will also attempt to connect via your reflector account. This makes Indigo Touch truly location agnostic!

You can, however, configure a connection manually. Simply tap Manually Add Server on the Settings screen in Indigo Touch and you can enter your host/ip address and port number.

Remote Access Using a Web Browser

Indigo, when run in client/server mode, will automatically start its built-in Web server on launch. This allows access from remote Macs, PCs, and other internet devices like the iPhone, iPod Touch, Nokia 770 and PepperPad. Any device that can run a modern Web browser (Safari, Firefox, Opera) will work.

To access the Indigo Web Server use the IP address you discovered in the section above along with the Indigo Web Server port number (default: 8176). The URL will look like this (substitute your server's correct IP address):

   http://192.168.1.23:8176/

Alternatively, if you already have the Indigo Client on a remote Mac connected to the Indigo Server, then you can use Indigo's Go->Browser... menu items to open a new browser page pointing to the built-in Web server.

See the using Control Pages section for information on how to create custom browser accessible interface pages.