Installing Ace Operator V.2

In this blog, I describe how to install Ace Operator V.2. The blog will take you though the steps of preparation, software download, building from the sources and installing the software. Please read the blog fully to avoid surprises in the middle of the installation process :-) .

Installation of Ace Operator V.2 is a snap compared to Ace Operator V.1. There is no longer a need to follow a hundred step process like before but it is still not a breeze given the nature of the product. Since Ace Operator is a software suite that (potentially) faces the Internet, you do need to have a bit of networking, software administration and security experience to manage the service. If you don’t have the experience, get help from someone who does.

Platform Requirements

Ace Operator V.2 runs on any platform that Supports Java 1.6 Standard Edition and MySQL 5.x+ Standard Edition or above. We have tested the software on Microsoft Window 7 and Linux platforms. We use Linux in our hosted environment and would recommend it for an Internet-facing production environment.

Install Prerequisite Software and Services

There are a few pieces of software and services you need to download and install before installing Ace Operator. They are:

  1. Java SE Software Development Kit 1.6: Make sure that you download the SDK and not the JRE. Install the software using the instructions provided for your platform.
  2. MySQL 5.x Standard Edition: Download and install the software as per the instructions provided for your platform. Make sure that MySQL is installed as a service and it starts up when the system is started.
  3. Apache Tomcat 7.x or above: Download and install the software as per the instructions provided for your platform. Make sure that Tomcat is installed as a service and it starts up when the system is started. If you are using Linux, we have provided a System V service script that you can use for this purpose.
  4. Mail Server: You need access to an SMTP (outgoing mail) server. You need all the information about the server including the server host name, port, user name, password, SSL information, etc.
  5. SSL Certificate for Tomcat: Since Ace Operator uses SSL, you will need a SSL certificate. You can find out more about how to install SSL certificate for Tomcat here. In a production environment, you will need a certificate from a trusted authority so that the users do not get a warning when connecting to your service. In our hosted environment, we use a certificate issued by godaddy.com.

Secure Your System

If you are going to use Ace Operator on the Internet, you have to make sure that your server is secure and is not prone to cyber attacks.Talk to a someone with the knowledge of Internet Security if you do not understand this topic well. Here are a few things that you must do to secure the server.

  1. Make sure that the operating system has all the latest and greatest security patches installed.
  2. Install a firewall that blocks all incoming IP port connections except ports TCP/8080 and TCP/8443. If you are using Linux, we have provided a IP tables script in the source distribution that you can use. In our hosted environment, we also forward ports TCP/80 and TCP/443 to ports TCP/8080 and TCP/8443 respectively.
  3. Secure your system’s super-user or administrator accounts by setting a strong, but easy to remember, password.
  4. Secure your MySQL root account by setting a strong, but easy to remember, password.
  5. Secure your Tomcat admin account by setting a strong, but easy to remember, password. In our hosted environment, we uninstalled the Tomcat Administration and ROOT web applications to avoid any unauthorized administrator-level access.
  6. If the SMTP server you are using is located outside the system where you want to install Ace Operator, make sure that outgoing connections to the SMTP host/port is not blocked.
  7. Make sure that files and directories installed as a part of Ace Operator cannot be accessed by other uses of the system.

Build and Install Ace Operator

At this point of the installation process, you have multiple options.  If you are the Java techie type and want to get the latest Ace Operator, you can download the source code from the Ace Operator Subversion Repository. If you are not interested in mucking with the source and start using the software right away, you can download the binary package from the Ace Operator Download Site. If you downloaded the binary distribution, skip the Building from the Sources section.

Building from the Sources

If you want to create the binaries from the sources, you need the following additional tools:

  1. A Subversion client: You can use either TortoiseSVN, Command-line SVN, Subclipse, etc.
  2. Maven 2: Make sure you download Maven version 2 or above.

The Build Process

Follow the steps below:

  1. You can checkout the bleeding-edge snapshot version from https://aceoperator.svn.sourceforge.net/svnroot/aceoperator/trunk or better, checkout a stable release from https://aceoperator.svn.sourceforge.net/svnroot/aceoperator/labels/releases into your local workspace. Make sure that you checking out a release that starts with a 2, example – 2.0.0. Alternatively, you can download the source distribution from the Ace Operator Download Site if you don’t want to mess with Subversion.
  2. To build from the sources, run the following commands or equivalent (depending on the command line shell you are using):

>> cd ace        # location where you checked out Ace Operator
>> mvn install  # Make sure that maven bin directory is in your PATH.

Maven will churn for a few minutes downloading dependencies from the Maven repositories from the Internet and then compile the sources, create packages and assemble the distribution. The whole process must complete without errors. When completed, you will find the binary packages in the ace/target directory. You will find that the build has created two packages, one in zip format and another in tar.gz format. The format of the file names are ace-VERSION-bin.zip and ace-VERSION-bin.tar.gz respectively. Select one of these files depending on the availability of a suitable unzip tool for your platform. Note that you can download these binary files directly from the Ace Operator Download Site.

Install Ace Operator

Follow the steps below:

  1. In a Linux/Unix environment, create an user called tomcat and a group called tomcat. On Windows environment, create an administrator user called “tomcat“.
  2. Login to the tomcat account you just created.
  3. Make sure that the Java JDK/JRE bin directory is in the execution PATH.
  4. Unzip the binary package that you downloaded or built from sources. You can use GNU tar/gzip to extract the tar.gz archive. On Windows, you can use the Windows unzip utility to unzip the zip file or use 7Zip, a free tool, to extract the zip or tar.gz archives. The unzip process will create a directory of the format ace-VERSION and extract the content into this directory.
  5.  Copy the .ace directory (note the dot prefix) under the extracted package to the tomcat user’s home directory. In Linux, the home directory is /home/tomcat and on Windows 7, the home directory is C:\Users\tomcat.
  6. Make sure that the MySQL server is running.
  7. Change directory to the installer directory located under the extracted package and run the installer using the command ./postinstall or .\postinstall.bat depending on whether you are using Linux or Windows. Follow the instructions. on the screen. The system will prompt you for database user and SMTP information among other things.  You will also need to provide the MySQL root password. The system will create a database user called ace and two databases, ace and webtalk and create default configuration files at the end of this step.
  8. Copy all the files and directories under the web directory located under the extracted package into the Tomcat installation’s webapp directory.
  9. Make sure that the Tomcat is setup to accept HTTPS (TLS). Also, make sure that Tomcat installer is owned by the tomcat user you created above and is started and stopped by the Tomcat user. In addition, make sure that you have allocated enough virtual memory to run Ace Operator. We use the environment variable, JAVA_OPTS=”-Xms256m -Xmx512m -Djava.awt.headless=true -Dfile.encoding=UTF8″. We have included a Tomcat Unix SYSV startup script located under the bin folder of the extracted binary package. You can modify and use the script if you want.
  10. Start Tomcat.
  11. Bring up a browser and point to http://SERVER:8080/ace-contactcenter. You should see a screen if the installation has been successful.

Testing the Basic Setup

The next step is to verify that the installation has been successful. In order to verify, execute the following steps:

  1. Bring up a browser and point to http://SERVER:8080/ace-communicator and login using the credentials ace/a1b2c3d4.
  2. On the main screen, click on the Talk Application link. On the  Talk Application screen, click on the User->Administer link.
  3. Create an operator user by entering the user name, password, full name and email. Make sure that you select operator group from the Is a Member of Groups list. The other information does not need to be entered at this point.
  4. Bring up a browser and point to http://SERVER:8080/ace-contactcenter.
  5. From the form, populate the profile field with the value, default-operator and click on the Connect button. A new page is popped up. Login as an operator using the credentials of the operator user you just created. Stay logged in for the next step.
  6. To test the visitor access,  from the same form, populate the profile field with the value, default-visitor and click on the Connect button. A new page is popped up. Enter the necessary information and verify that a chat session is established between the operator and the visitor.

If all the steps completes successfully, the Ace Operator system is functional- Yeah!!

Troubleshooting the Installation

If the steps above did not complete successfully :-( , there are a few things to verify before asking for help. They are:

  1. A common problem is that the owner of the Tomcat directory tree is different from the user who started Tomcat. Make sure that your installation does not have this issue.
  2. The post-installation process described above did not go well because bad credentials were supplied for the MySQL root user. Check if the ace and webtalk database users are created and there are tables in the database. You can rerun the post installation step multiple times to rectify the issues.
  3. In addition to the Tomcat logs, you can also find more information in the Ace Operator logs located in .ace/log directory under the Tomcat user’s home directory.
  4. If nothing works, use the forums and mailing lists for Ace Operator to ask for help. You can find more information here.

Next Steps

Now that Ace Operator is installed, you need to configure and customize the system to make it work the way you want. Read my blogs on Configuration and Customization for more details.

VN:R_U [1.9.20_1166]
Rating: 5.0/5 (2 votes cast)
Installing Ace Operator V.2, 5.0 out of 5 based on 2 ratings

About amit

Amit Chatterjee is a software professional with over 20 years of experience as a software developer and architect. He has been involved in large and complex software products for Telecommunications, B2B E-Commerce and Healthcare industries. He has founded and contributed to open-source projects since the 1990s. Currently, he leads two open-source projects, QUIK-J and CafeSip. His primary interests are in the areas of Service Oriented Architecture, Enterprise Applications, Business Intelligence and Big Data.
This entry was posted in Install, Setup, Administer and tagged , , . Bookmark the permalink.

16 Responses to Installing Ace Operator V.2

  1. mundoayala says:

    Thank you for installation instructions!

    I recently installed on a CentOS 5.x where we have been testing/runinng Ace 2.0 for a week or so.

    I initially ecnountered some troubles when trying to install with errors pointing out a X server display error. I was afraid that I was gonna need X; thanks Amit for poining that its possible a remote text install using ‘./postinstall -text’ as was the case with Ace 1.7.

    Also make sure you setup your environment variables for Java pointing to the correct path. For my setup I used ‘export JAVA_HOME=/usr’.

    Looking forward to using Ace 2.0 on a production enviroment.

    One more thing: the included templates look great. Thanks for all the hard work!

    VN:R_U [1.9.20_1166]
    Rating: 0.0/5 (0 votes cast)
  2. takeshi90 says:

    when I run file postinstall.bat, I get the message “Directory ‘.ace’ not found under the home directory “. what do i do?

    VN:R_U [1.9.20_1166]
    Rating: 0.0/5 (0 votes cast)
  3. takeshi90 says:

    when i log in to server by username: ace and password: a1b2c3d4, i recieve notice “Validation Error
    You must correct the following error(s) before proceeding:
    Could not access the application server”. I have the database, create a new username and login.But I still get the above error message. would admin help me?thank you!!

    VN:R_U [1.9.20_1166]
    Rating: 0.0/5 (0 votes cast)
  4. takeshi90 says:

    log of tomcat: “2013-01-07 ERROR ACECOMM:168 – LogonAction.execute ()/ace: RMIException : Connection refused to host :localhost; nested exception is: java.net.ConnectException: Connection refused: connect”

    VN:R_U [1.9.20_1166]
    Rating: 0.0/5 (0 votes cast)
    • becky says:

      The error you’re getting indicates that things are partially setup and running, but not completely. The administrative component is running but not the application server component. Stop tomcat and delete the .ace directory under the tomcat user’s home directory, then re-execute installation steps 5 and 7. Be sure to complete the remaining steps after that, then try logging in again to the server.

      VN:R_U [1.9.20_1166]
      Rating: 0.0/5 (0 votes cast)
  5. takeshi90 says:

    when i click on “Ace communicator” , i recieve notice error “HTTP Status 500 – System logger could not be started: java.lang.IllegalArgumentException: Malformed \uxxxx encoding.”

    VN:R_U [1.9.20_1166]
    Rating: 0.0/5 (0 votes cast)
  6. takeshi90 says:

    when i login use brower is mobile, i recieve a screen empty. if i login use brower is desktop and tablet, web run normal.

    VN:R_U [1.9.20_1166]
    Rating: 0.0/5 (0 votes cast)
    • amit says:

      Takeshi, please try the latest version from trunk. This problem has been fixed but not packaged into an official release.

      Regards
      Amit

      VN:R_U [1.9.20_1166]
      Rating: 0.0/5 (0 votes cast)
  7. takeshi90 says:

    I have a question, i set up ace on win XP success. I created a application webtalk with administer is “admin”,and is member group lvs (group lvs was created by me). I login with profile “Default-operator” success. But problem is when i use profile “Default-visitor”, i recieve “All Operators are busy assisting other users. Please leave a message.”, although i logged in admin group. I do again and again, but still recieve message. I don’t know why? Please help me?

    VN:R_U [1.9.20_1166]
    Rating: 0.0/5 (0 votes cast)
    • amit says:

      Takeshi90, you are missing a number of steps and that is why you are getting the “all operators busy” message. In addition to creating groups, you have to create a group owner user and create an operator feature. Also, make sure that the default-visitor property specifies the group owner users in the “group” property. My suggestion is to use the Group Wizard when you want to create a new group instead of setting it up manually. Hope this helps.

      VN:R_U [1.9.20_1166]
      Rating: 0.0/5 (0 votes cast)
  8. sheridan says:

    Im having a hard time installing Ace 2.1.0

    I unzip the zip file into /usr/tomcat, then I copy the .ace folder to /home/tomcat, and then I go to /usr/tomcat/ace-2.1.0/ and edit the file postinstall to fix the javapath and the version number (since is 2.0 and no 2.1 (a little bug?)).

    Then I type ./postinstall -text (since i have no X), but I got an error:

    tomcat@server [~/ace-2.1.0/installer]# ./postinstall -text
    Welcome to the Ace Operator Installation Tool.
    This tool will help you setup Ace Operator as per your requirements.
    Please enter the information below. If you want to change some of the
    information you provided, you will be able to do so after the installer
    collects all the data.
    ** The specified folder does not exist
    tomcat@server [~/ace-2.1.0/installer]#

    And Im stack.

    VN:R_U [1.9.20_1166]
    Rating: 0.0/5 (0 votes cast)
    • sheridan says:

      The problem was that i didnt copy the .ace folder to the correct path. I copied it to /home/tomcat/ and install script can run.

      Now im stopped again becouse the installer cant create de databases.

      The database has not been initialized. To initialize the database manually, using a standard MYSQL client, run the SQL commands specified in the file /usr/tomcat/.ace/sql/init_ace.sql **

      I run the commands, created te user, privileges, databases and tables manually, but now i dont know what to do.

      If I run the installer again, i get the same error **

      I downloaded de jconnector from mysql.com and put the .jar file into tomcat/lib/ Im quite noob ;( and dont know what to do now, I think may be some with the Jconnector.

      VN:R_U [1.9.20_1166]
      Rating: 0.0/5 (0 votes cast)
      • amit says:

        Sheridan,

        After you ran the database creation script manually, there is no need to run the installer again. Just start the Tomcat server and you should be all set. Could you figure out why the installer could not run the database creation script?

        Hope this helps.
        Amit

        VN:R_U [1.9.20_1166]
        Rating: 4.0/5 (1 vote cast)
  9. Kumara KL says:

    Hi… I followed exactly as shown above . Successfully done with the SVN and I ‘m using eclipse Juno and MySql which is running on MAMP, I have configured in eclipse . when comes to the Maven install , I’m getting this error :
    “”" [INFO] ace-messaging ………………………………. SUCCESS [3.188s]
    [INFO] ace-framework ………………………………. SUCCESS [0.612s]
    [INFO] ace-db …………………………………….. FAILURE [2.915s]
    [INFO] ace-app ……………………………………. SKIPPED
    [INFO] ace-web ……………………………………. SKIPPED
    [INFO] ace-communicator ……………………………. SKIPPED
    [INFO] ace-installation ……………………………. SKIPPED
    [INFO] ace-custom …………………………………. SKIPPED
    [INFO] ace-migration ………………………………. SKIPPED
    [INFO] ace ……………………………………….. SKIPPED
    [INFO] ————————————————————————
    [INFO] BUILD FAILURE

    Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.10:test (default-test) on project ace-db: There are test failures.

    ” “” what I’m missing here . Please let me know, If anyone knows.

    Thanks

    VN:R_U [1.9.20_1166]
    Rating: 3.0/5 (1 vote cast)
    • amit says:

      I am going to guess that the database is not setup correctly. Make sure that you have run the installer which sets up the database before running the build. For more information, see the blogs about installing Ace Operator.

      VN:R_U [1.9.20_1166]
      Rating: 0.0/5 (0 votes cast)

Leave a Reply