connectplatform / guru Goto Github PK
View Code? Open in Web Editor NEWLive chat system for website support.
Live chat system for website support.
Sequence of actions:
login =>
press "Account" =>
URL changed to /account
Result:
"Could not find account." error notification
Sequence of actions:
Create a chat that does not have operators =>
you see "Submit a question" form =>
enter correct data =>
press "Send" button
Result:
error notification with content: "Error: [object Object]"
Sequence of actions:
Result:
Account created - you can login with created account. But application show Cannot use recurly in development mode
error notification and not redirect to Thank you
page
TODO:
mockup recurly for not production
Sequence of actions:
Result:
/newChat?websiteUrl=undefined
. But if to replace undefined
to correct URL - chat workCould not translate specialties: null with context:
{
data: [
allowedSpecialties: [],
embedLink: "<a href="JavaScript:void(0);" onclick="window.open('http://localhost:4000/chat.html#/newChat?websiteUrl=undefined' , 'Live Support', 'width=620,height=660, menubar=no,location=no,resizable=yes,scrollbars=yes,status=yes'); return false;" rel="nofollow"> <img border='0' title='Click for Live Support' alt='Click for Live Support' src='http://localhost:4000/chatLinkImage/undefined'></a>"
]
}
TypeError: website is undefined
then on "Websites" page
TypeError: site is null
error in JS consoleTypeError: website is null
error in JS consoleSequence of actions:
#/login
to #/createAccount
and press Enter
Result:
In order to use "Create new account" you need click backdrop
Sequence of actions:
create website with URL: http://some_domain.com =>
copy "embed link" =>
open /newChat?websiteUrl=http://some_domain.com =>
enter name, press "Enter Chat" =>
Result:
"websiteUrl invalid" error notification
if to create website with URL: some_domain.com then everything okay
Note:
see https://github.com/automart/Guru/blob/dev/app/server/load/argumentTypes.coffee#L64
Sequence of actions:
Result:
As operator
Expected:
After the visitor left the chat, which was not accepted by the operator:
Hey, I won't have time to respond to individual bugs for the most part, but I think I can help out with an overall sense of where the project was heading before.
I assume you're working off of the master branch. When the project was stalled, there was a big refactor in progress for the core messaging approach. This code is contained in the 'particle' branch, and is based on the Particle npm package which I published:
https://github.com/torchlightsoftware/particle
I don't think that the message based approach you find in 'master' will be sustainable, and we were having memory leaks and performance issues with it. Particle too, has some problems and may not be the right approach. Lack of a good solution here was the primary cause of complexity and wasted time on the server.
It's similar to the problem that trello solved:
http://blog.fogcreek.com/the-trello-tech-stack/
There may be technologies that have come out in the last few months that will assist you in this.
The UI as well is built on messaging patterns which aren't sustainable. Facebook's React has recently come out, and solves a lot of the encapsulation and performance problems we were dealing with. It's very modular, so the system could be refactored over time as performance warrants.
That's about all I have for now.
Good luck!
Brandon
There is "Help" button in operator control panel. It open new window with /help.html
.
But there is no resource for this link
Sequence of actions:
Result:
Expected:
after operator kick visitor button should be disabled
Sequence of actions:
Result:
Expected:
if there is no visitor then
When operator press "Invite" or "Transfer" buttons application show "User Information" modal. "User Information" modal contains "Name" and "Actions" columns even if there are no appropriate users.
Suggestion:
if there are no appropriate users then "User Information" modal should show something message like "No appropriate users" instead empty "Name" and "Actions" columns
Sequence of actions:
Result:
Expected:
The operator must still be logged in
When operator visit "Dashboard" page he see all chats which have been proposed for him. Each proposed chat has 2 buttons: "Accept" and "Watch". If the operator will be prompted to 1000 chats, he will see the 1000 chats. And he will not be able to refuse or conceal those chats which he does not want to accept.
Suggestion:
each "not active" chat in dashboard should have "Refuse" or "Hide" button
Sequence of actions:
Result:
you (as operator in 1st browser) will see that chat, which you accepted already, now have state "waiting" and you need to accept it again
Expected:
chat, which was accepted by the operator, should have the state "active" and the operator does not need to accept it again
Notes:
Content of the "expected" section does not applicable to cases where:
Questions:
Sequence of actions:
logout =>
you see "Login" modal =>
click on backdrop
Result:
"Login" modal will be hidden and then shown again
Sequence of actions:
Result:
Expected:
if there is no visitor then
Sequence of actions:
Create a chat that does not have operators =>
you see "Submit a question" form =>
leave form fields blank =>
press "Send" button
Result:
error notification with content: "Error: [object Object]"
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.