Open source online customer service System development actual combat (first: Preliminary requirements analysis and technology selection)

Source: Internet
Author: User
Tags msmq

(The reference product link has been removed )

In this series of articles, I will try to develop a fully functional online customer service system, and open it up to Git, and welcome attention.

Current progress: initial construction of the development framework, technical verification demo,git address is attached later, please pay attention.

In view of the level constraints, it is inevitable to overlook, welcome criticism.

The article will be divided into several parts

I. Requirements analysis and preliminary selection of technical solutions

Second, the technical solution selection, validation

Third, the bottom frame design, development

Iv. Server Design and development

V. Client design and Development

Vi. web-side design and development

In this series of articles, you will learn and learn the following technical knowledge:

MSMQ, YUI, WebSocket, Reporting Services, WinForms

If these techniques are useful to you, please also recommend This article, thank you!

First, let's look at what the online customer service system is:

Simply embed a system-generated piece of JavaScript code into the site page to display a floating small icon, an invitation box, and a small chat window on the site that represents customer service.

and customer service side can be in the Customer service program, check the site's real-time online visitors, browsing track, etc., visitors click on the Web page floating small icon, you can directly and the site customer service personnel online instant communication, the purpose is to improve customer satisfaction and the site's sales.

From this analysis, the online customer service system is divided into three large chunks:1) server, 2) customer service, 3) Web page end . But it is not enough to be divided into these three chunks, and we will make a further analysis of each block below.

Functionally, at a minimum, the following features should be included:

1) for the web to analyze: floating icon settings and display, invitation box settings and display, as well as the core of the chat window

Refer to the existing software effects:

Chat Interface Effect:

2) for the Customer service function analysis: Online visitor's view and unsolicited invitation, the consultation initiated by the visitor, the conversation transfer between the customer service, the visitor track, the acquisition and display of personal information, the preservation and inquiry of the history record, the real-time monitoring, and the statistical analysis related to the report.

Refer to the existing software effect:http://www.zkebao.com recruit Treasure

You can see that the customer service interface is divided into several parts:

1) to the left of the visitor area, show various different status of visitors, such as access, session, invitation medium.

2) Middle of the session chat area.

3) Extended function on the right.

Http://www.zkebao.com Recruit Treasure

Thus, for the management of visitors, the most important thing is the management of visitor status. I'm going to take a step-by-step for you after this piece of content.

Well, to this, the main function of the online customer service system people should already have an intuitive impression, then, from where to develop a full set of fully functional online customer service system?

The first is the large-to-the-Architecture and architecture design:

Selection of technical solutions:

 

1) server operating system:

Windows Server 2012

Windows Server 2012 is the latest version of Microsoft's next-generation Windows Server, which uses beyond virtualization technology to provide multiple servers with a single server, enabling a fairly flexible way to work, creating more space for each application. It will deliver scalable, dynamic, multi-tenant, and cloud-optimized infrastructure to enterprise and hosting providers, and help IT professionals respond to business needs faster and more efficiently.

2) Message Service:

Msmq

Online customer service system is the most important thing is, of course, the site visitors and customer service personnel of the exchange of information, I do not recommend repeating the wheel, but more willing to choose mature and stable products to serve us.

Message Queue (Microsoft Message Queuing) is an asynchronous transfer mode that communicates with multiple different applications, which can be distributed on the same machine or in any location in the connected network space. The idea is that the sender of the message puts the information he wants to send into a container (what we call a message) and then saves it to a message queue in a system's public space A local or offsite message receiver is then taken out of the queue to process messages sent to it.

In the message passing mechanism, there are two more important concepts. One is the message, one is the queue. Messages are information that is required by both sides of the communication, which can be a variety of media, such as text, sounds, images, and so on. The end of the message to understand the way, for the message of both sides agreed beforehand, the advantage is that the first is equivalent to a simple encryption of data, and two in their own definition of the format can save the communication of the volume. The message can contain the identity of the sending and the receiver, so that only the specified user can see only the information that is passed to him and returns the receipt for the successful operation. Messages can also contain timestamps to allow the receiver to process certain time-related applications. The message can also contain an expiry time, which indicates that if the message is not reached within the specified time, it is deprecated, and the main application is more closely related to time-sensitive applications.

3) WEB Development framework:

Yui,websocket

For the online customer service system, the stability and speed of Web pages is very important, where we use YUI and WebSocket to build a web system that can interact with the server in real time.

The Yui:yui library is a set of tools and controls created using JavaScript and CSS to create rich client Web applications. Dom Scripting,dhtml and Ajax are used.

WebSocket: is a protocol that HTML5 begins to provide full-duplex communication on a single TCP connection. The WebSocket communication protocol was established as the standard RFC 6455,websocketapi by the IETF in 2011. In the WebSocket API, the browser and server only need to do a handshake, and then a fast channel is formed between the browser and the server. The data can be transmitted to each other directly between the two.

4) Report Server

Microsoft SQL Server Reporting Services

Reporting Services provides a complete set of service, tools, and application programming interfaces (APIs) that you can use Reporting services, even if you are not a programmer. You can use the applications and tools included in Reporting Services to create, publish, and manage reports. In addition, tools or applications are available that support the various stages of the report's life cycle. Programmers can use the API to extend or integrate reporting functionality into a custom solution.

5) customer-side development framework:

Microsoft. NET Framework 4.5/winform

WinForm provides a rich set of controls that you can use to design forms to create rich Windows-based applications. New data Provider Management: Data provider Management provides data controls that are easy to connect to OLE DB and ODBC data sources, including Microsoft SQL Server, Microsoft Access, Jet, DB2, and Oracle. Convenient data display and manipulation: one of the most common scenarios in application development is displaying data on a form. Windows Forms provides full support for database processing. You can access the data in the database and display and manipulate the data on the form.

I will be in the next article, the above technical solutions to further detailed discussion and verification, please pay attention to.

If these techniques are useful to you, please also recommend This article, thank you! Your support is my motivation.

Open source online customer service System development actual combat (first: Preliminary requirements analysis and technology selection)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.