Zammad is a web based open source helpdesk/ticket system with many features to manage customer communication via several channels like Telephone, Facebook, Twitter, chat and e-mails.
Features
Easy data historization
Zammad is auditable. That’s the reason it is often used in banks. Via the ticket history it’s possible to reconstruct at any time who changed which attribute to which value.
Individual fields
With Zammad you can easily create individual fields like a desired deadline. And here’s the kicker: It doesn’t only work for tickets, but also for clients and organizations.
Your own overview
Create individual overviews – especially for your different teams. The admin is able to define numbers, names, columns, attributes and authorizations.
Phone
The Zammad API helps you to integrate your telephone system into in- and outgoing calls. Clients are picked and shown via their telephone number and outgoing calls can be initialized by click.
Branding
Individual guys need individual styles. That’s why clients and agents are able to change the look of Zammad according to their wishes and give the user interface their own personality.
Autosave
No need to be scared of closing without saving. The current progress is being saved automatically and work can be continued on other devices.
Permanent marking
You wish to mark important sections for the whole team? Zammad supports the permanent marking of important sections in order to provide indication for your colleagues.
Security
Play it safe with Zammad: We support different guidelines for keywords, device-logging and two-factor-authentication.
Customer interface
Customers are able to track the current editing at any time via the customer interface and can provide further information easily.
External authentication
Zammad is up to date. It’s possible to log in via Twitter, Facebook, LinkedIn or Google via OAuth.
Escalations
Would you like to ensure your clients an individual escalation or solution time limit? Zammad will help you to adhere to your agreements and their evaluation
Immediate changes
The change of objects is reported immediately in the application. The advantage? Double editing is impossible and your colleagues are always provided with the newest information.
Chat
It’s worth to be quick: Customer requests can be solved seven times faster via our chat than via email.
Multilingual
The Zammad Web-App supports nine languages. You only have to choose the preferred language for your user interface.
Tasks
Zammad supports multitasking: Your agents are up to open and edit several documents (tickets, user, organization) at once without switching between browser windows.
Text modules
Zammad is comfortable: With the aid of our flexible text modules, customer requests can be solved more efficiently.
Full-text search
Looking for the needle in a haystack? No problem with Zammad. Our full-text search doesn’t only browse tickets but also their attachments. And this with full power: The search within 40 GB of data for example takes only up to three seconds.
Twitter integration
The world’s talking about you? We guarantee your attention. You can answer immediately via status updates or message.
VIP
Zammad shows you who’s important. Via the VIP-feature important clients can be “marked” and will be presented marked in the interface.
Zammad migrator
Moving without missing data? It’s easy: By moving to Zammad you can migrate your previous data straightforwardly. Use the Zammad migrator and migrate from OTRS or Zendesk to Zammad.
Prerequisites
STEP – I
Find and save your MySQL root password somewhere as we will need that later.
cat /root/.my.cnf | grep password | cut -d' ' -f1 | cut -d'=' -f2
Output
[root@cwp ~]# cat /root/.my.cnf | grep password | cut -d' ' -f1 | cut -d'=' -f2 oTBbvCNGYKHg
In my case the password is oTBbvCNGYKHg. It will be different in your case.
STEP – II
Increase max_allowed_packet to 128M or above in file /etc/my.cnf under [mysqld]
nano /etc/my.cnf
Add bellow line under [mysqld] and save
max_allowed_packet=128M
Check if it looks like below
cat /etc/my.cnf
Output
[root@cwp ~]# cat /etc/my.cnf [mysqld] max_allowed_packet=128M
Restart Mysql
Centos 6
service mysqld restart
Centos 7
systemctl restart mariadb.service
STEP – III
Install Ruby 2.4.4 using RVM
yum install curl gpg gcc gcc-c++ make gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 curl -sSL https://get.rvm.io | sudo bash -s stable sudo usermod -a -G rvm `whoami` source /etc/profile.d/rvm.sh rvm requirements rvm install 2.4.4 rvm use 2.4.4 --default
STEP – IV
Install ElasticSearch
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch echo "[elasticsearch-5.x] name=Elasticsearch repository for 5.x packages baseurl=https://artifacts.elastic.co/packages/5.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md"| sudo tee /etc/yum.repos.d/elasticsearch-5.x.repo yum install -y java-1.8.0-openjdk elasticsearch sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment
Start and Enable ElasticSearch
Centos 6
service elasticsearch start chkconfig elasticsearch on
Centos 7
systemctl start elasticsearch.service systemctl enable elasticsearch.service
Install Zammad
STEP – I
This installation is done for MySQL
useradd zammad -m -d /opt/zammad -s /bin/bash sudo usermod -a -G rvm zammad cd /opt wget https://ftp.zammad.com/zammad-latest.tar.gz tar -xzf zammad-latest.tar.gz -C zammad chown -R zammad:zammad zammad su - zammad gem install bundler bundle install --without test development postgres
STEP – II
Configure Datatabse
cp config/database/database.yml config/database.yml
Edit MySQL Database. Uncomment #### mysql config ##### part and add your MySQL root login
Under Prerequisites (STEP – I) we saved MySQL root login
nano config/database.yml
Find
#### mysql config ##### # adapter: mysql2 # username: zammad # password: <password>
Change to
#### mysql config ##### adapter: mysql2 username: root password: oTBbvCNGYKHg
STEP – III
Initialize your database
export RAILS_ENV=production export RAILS_SERVE_STATIC_FILES=true rake db:create rake db:migrate rake db:seed rake assets:precompile
STEP – IV
Change to Root and setup Zammad Services
su - root
Centos 6
cp /opt/zammad/script/init.d/zammad /etc/init.d/zammad service zammad start
Centos 7
sh /opt/zammad/script/systemd/install-zammad-systemd-services.sh systemctl start zammad.service
Now we have Zammad running on port 3000
STEP – V
Setup Apache Virtual Host
Replace zammad.cwp.com with your Domain name.
Copy and paste all lines not one by one.
cat > /usr/local/apache/conf.d/zammad.conf << "EOF" <VirtualHost *:80> # replace 'localhost' with your fqdn if you want to use zammad from remote ServerName zammad.cwp.com ## don't loose time with IP address lookups HostnameLookups Off ## needed for named virtual hosts UseCanonicalName Off ## configures the footer on server-generated documents ServerSignature Off ProxyRequests Off ProxyPreserveHost On <Proxy localhost:3000> Require local </Proxy> ProxyPass /assets ! ProxyPass /favicon.ico ! ProxyPass /robots.txt ! ProxyPass /ws ws://localhost:6042/ ProxyPass / http://localhost:3000/ DocumentRoot "/opt/zammad/public" <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory "/opt/zammad/public"> Options FollowSymLinks Require all granted </Directory> </VirtualHost> EOF
Restart Apache
service httpd restart
Now you can access Zammad with your domain name.