livechat - gossinteractive.com · end user – livechat button access to livechat for the end user...
TRANSCRIPT
LiveChat – Technical Documentation
LiveChat Technical Documentation
Version: 1.0
Last Updated: 13/04/2016
Interactive
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
GOSS Interactive Ltd
24 Darklake View
Plymouth
PL6 7TL
England
Tel: +44 (0)844 800 3637
Fax: +44 (0)844 880 3638
Mail: [email protected]
Web: www.gossinteractive.com
All copyrights and trademarks acknowledged
All reasonable precautions have been taken in the preparation of this document, including both
technical and non-technical proofing. GOSS Interactive Ltd and all staff assume no responsibility
for any errors or omissions. No warranties are made, expressed or implied with regard to these
notes. GOSS Interactive Ltd shall not be responsible for any direct, incidental or consequential
damages arising from the use of any material contained in this document. If you find any errors,
please inform GOSS Interactive Ltd. Whilst every effort is made to eradicate typing or technical
mistakes, we apologise for any errors you may detect. All courseware and technical documents
are updated on a regular basis, so your feedback is both valued by us and will help us to
maintain the highest possible standards.
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Contents
Components................................................................................................................................................. 3
End User – LiveChat Button ................................................................................................................... 3
Customisation Options ........................................................................................................................... 3
End User – Chat Session ......................................................................................................................... 3
Agent – Chat Client .................................................................................................................................. 4
Agent Pre-requisites.................................................................................................................................... 6
Chat Client Pre-requisites ...................................................................................................................... 6
Infrastructure Pre-requisites ................................................................................................................. 6
Chat Protocol and Network Port ....................................................................................................... 6
Proxy Support ...................................................................................................................................... 6
Network / Firewall Restrictions ......................................................................................................... 7
End User Pre-requisites .............................................................................................................................. 7
Transport Security ....................................................................................................................................... 8
End User to LiveChat .............................................................................................................................. 8
Agent to LiveChat .................................................................................................................................... 8
Credential Security ...................................................................................................................................... 9
Client Side................................................................................................................................................. 9
Server Side ............................................................................................................................................... 9
Client to Server Authentication ............................................................................................................. 9
Appendix A – Definitions .......................................................................................................................... 10
Appendix B – Infrastructure Overview ................................................................................................... 11
Appendix C – LiveChat Configuration Options ...................................................................................... 12
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 3 of 14
Components
This section describes the components used in end to end LiveChat communication and how
they interact with one another.
End User – LiveChat Button
Access to LiveChat for the End User is provided through a link embedded into the customer’s
website, the link is rendered by a page snippet that loads a JavaScript file hosted on GOSS
Interactive’s LiveChat service.
This link is rendered as an image that indicates the availability of LiveChat. The client needs to
supply GOSS with the relevant online and offline images if they want to customise the images
rendered by the page snippet.
The only change required to the website in order to provide access to LiveChat is the embedding
of the JavaScript snippet on the pages they want to link to LiveChat.
If the client is using GOSS iCM to power their website we will supply an “Inline” that can be used
to embed the LiveChat link in any article.
Customisation Options
The LiveChat product includes standard images for the LiveChat online and offline buttons and
other elements of the Client. These can be downloaded from www.gossinteractive.com/livechat-
download.
If a client wishes to use their own images for the LiveChat buttons these should be provided to
GOSS when the LiveChat Configuration document is returned (found in Appendix C). We
recommend using the sample images as a guide for size and image quality.
End User – Chat Session
Once the End User has clicked the link on the client’s website to access LiveChat, a pop-up
window will open from where the rest of the interaction will take place.
From this point onwards the service being accessed is entirely hosted by GOSS Interactive and
does not rely on the client’s website.
If an Agent is available to take the request the window will present the end user with a set of
questions that need to be answered before a LiveChat session will be started. These questions
are customisable and the answers will be available to the Agent once they pick up the chat
request.
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 4 of 14
After the chat session has ended the End User will get the option to have the transcript sent to
them, again this will be performed by the service hosted at GOSS Interactive, and there is no
dependency on the website.
Agent – Chat Client
The Agents representing the company connect to LiveChat using a standalone client that has to
be installed on their local machine. This client uses the XMPP protocol to connect to the LiveChat
services hosted at GOSS Interactive.
The Spark Client and installation instructions can be downloaded from
www.gossinteractive.com/livechat-download
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 5 of 14
From the chat client the Agent will manage incoming requests, have the ability to speak to
colleagues and can join a specific workgroup.
Agents can select pre-written answers (Canned Responses) to common questions or type
responses into a free text box to send to the client.
The current Windows client supplied is not an MSI based installer, which means that it’s currently
not compatible with services such as Microsoft Application Virtualization or Windows
Deployment Services.
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 6 of 14
Pre-requisites
Agent Chat Client Pre-requisites
The client for the Agents to use the LiveChat service has to be installed on their local
workstation.
Our current LiveChat client is based on the open source Spark IM client.
The system requirements are:
Component Minimum requirement
Operating
System
Windows XP, Windows Vista or Windows 7
Hard disk 100 - 150MB Free Space
Processor 1Ghz
Memory Client application requires 80 – 100MB of memory
Other requirements and caveats:
Initial installation requires Administrator privileges on the target machine
Roaming profiles are not supported
Deployment through WDS or Microsoft App-V is not supported
Also see Infrastructure Pre-requisites
Infrastructure Pre-requisites
Chat Protocol and Network Port
The protocol used by the client running on the Agent’s work station is XMPP, a well-documented
and widely implemented communication protocol. XMPP is used in a lot of well-known chat
services, including Google Talk, Microsoft Messenger, Skype and Facebook Chat.
The port used for XMPP communication is TCP port 5222, the connection will always be initiated
by the client, and thus only one way traffic support is required.
Proxy Support
The most important infrastructure requirement to note is that the LiveChat client will require a
directly routable network connection to the LiveChat services hosted by GOSS Interactive.
LiveChat provides real time chat communication and for that reason it keeps a continuous
connection open with the LiveChat service. This and the fact that it’s not a HTTP based protocol
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 7 of 14
means that we do not support the use of a proxy between the Agent’s LiveChat client and the
LiveChat service hosted by GOSS Interactive.
It can still be routed through firewalls and/or gateways that do content inspection; however it
should be noted that the traffic will be encrypted with TLS SSL meaning that content inspection
will not be very effective.
Network / Firewall Restrictions
If communication from an Agent’s work station has to be locked down to specific targets then
the following source and destination ports and networks should be configured to lock down the
connection:
Source Destination
IP Address Work station IP address 212.104.147.47
Hostname Work station host name livechat.gossinteractive.com
Port TCP port >1024 TCP port 5222
The connection will always be initiated from the client to the server; communication back from
server to client will always go over an already established TCP connection.
All active chat sessions will be routed over a single TCP connection, which means that there
should only eve be a one open connection to “livechat.gossinteractive.com” on TCP port 5222.
Please bear in mind that this traffic will need to be allowed through any firewall that is placed
between the Agent’s work station and the internet, including the local Windows Firewall.
See also Appendix B – Infrastructure Overview.
End User Pre-requisites
For an end user to be able to use LiveChat a modern browser supporting JavaScript is required.
Known working browsers are:
Internet Explorer 8, 9 and 10
Google Chrome (up to current version as of writing: 31.0.1650.57)
Mozilla Firefox (up to current version as of writing: 25.0.1)
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 8 of 14
Transport Security
End User to LiveChat
The End User’s chat session is entirely browser based, using HTTP with TLS/SSL encryption. This
is identical in encryption level to any other website that has been secured using HTTPS.
The certificate used to encrypt communication to “webchat.gossinteractive.com” has been
generated using a 4096 bit RSA key and has been signed by Geo Trust as a Certificate Authority
that is trusted by all modern browsers.
There is no support for weak ciphers or protocols, as required for full PCI compliancy.
Agent to LiveChat
The Agent’s connection to the LiveChat services is secured using TLS/SSL over implicit XMPP,
which is enforced by the server.
This does mean that the initial connection is unencrypted; however an encrypted channel is
enforced before any authentication can occur. This is further detailed in the Credential Security
section.
The certificate used to encrypt communication to “livechat.gossinteractive.com” has been
generated using a 4096 bit RSA key and has been signed by Geo Trust as a Certificate Authority.
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 9 of 14
Credential Security
This section only applies to Agents, there is no authentication required for End Users.
Client Side
On the client side, when an Agent ticks the “Save Password” option in the client, it will store the
password in the local user profile with 3DES encryption in ECB mode.
However this is a reversible encryption method, similar to users remembering their passwords in
a browser.
Server Side
On the server side, the Agent’s credentials are stored with encrypted using a unique key.
Client to Server Authentication
The connection and authentication to the LiveChat service is done as follows:
The LiveChat client initiates an XMPP connection to the LiveChat service using TCP port
5222
The server will respond with a list of supported features, including the requirement to
use an SSL connection
The client will initiate the negotiation of an SSL connection by using a STARTLS command
The server and client will negotiate a secure TLS SSL connection
Only after a TLS SSL connection has been established the client will transmit base64
encoded credentials to the server for authentication
If the client attempts to issue any commands before establishing a secure connection the service
will forcefully disconnect the client to prevent the transmission of credentials in plain text.
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 10 of 14
Appendix A – Definitions
The following definitions apply within the context of this document:
“LiveChat” means the service as a whole provided by GOSS Interactive.
“LiveChat client” means the application used by the Agents to access the LiveChat service
“End User” refers to the user whom will be using the LiveChat service to interact with a
representative of the client’s organisation.
“Agent” refers to the representative of the client’s organisation who will manage and
respond to incoming chat requests from end users.
“Website” refers to the website the live chat service will be accessed from by the end
user.
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 11 of 14
Appendix B – Infrastructure Overview
Here’s a very basic network diagram showing the communication protocols for the end user and
the Agent:
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 12 of 14
Appendix C – LiveChat Configuration Options
This section outlines the configurable elements used when a LiveChat implementation is
delivered by GOSS Interactive. The GOSS Support Team will guide you through these options.
Handover
No. of Workgroup(s) Maximum of one workgroup for period.
No. of users entitlement Maximum of three users for trial period.
Configuration
Workgroup *
Workgroup name <client>
Queue(s) for workgroup N/A
Canned responses:
Please specify if you would
like any global canned
responses (i.e. Office
opening times)
Offline settings:
Please specify an option
and relevant information
Option 1: Redirect to a webpage
URL:
Option 2: Display email form
Email address (recipient of submission):
Subject:
Offline Text:
Transcript:
Please specify the text
required when a transcript
is sent to the end user
From:
Email address:
Subject:
Message:
Default option:
From: <Organisation name>
Subject: Copy of the transcript from your online enquiry
Message: Hi,
Please find attached a transcript of your online
conversation with us.
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 13 of 14
Regards,
<Organisation name team>
Images *:
If you would like to provide
images rather than use the
defaults provided, please
send the relevant zip of
images to be used and
reference below
Only GOSS standard branding applied for free trial.
Agent typing button N/A
Background N/A
End Button N/A
Offine button N/A
Online button N/A
Send Mail button N/A
Send Message Button N/A
Title Logo N/A
Agents
Agents Please list the agents: Firstname Lastname, and email
address
Queue (if applicable)
Queue: <please specify> N/A
Queue: <please specify> N/A
Room monitors
Please list users who are
allowed to listen in on
other agents conversations
without showing their
presence in the
conversation
N/A
Download transcripts
Please specify which user(s)
you would like to be able to
List of users who can download transcripts
LiveChat – Technical Documentation
Self Service Platform | Content Management | Managed Cloud Hosting | Digital Transformation
Commercial In Confidence GOSS Interactive Ltd 2016
Page 14 of 14
download chat transcripts
from the GOSS website
* Repeat these as many as required depending on the number of workgroup purchased