Cloudkibo / CloudKibo

CloudKibo
0 stars 0 forks source link

Modifications required in Conference when the customer comes from FB Messenger #522

Open zarmeen92 opened 7 years ago

zarmeen92 commented 7 years ago

In KiboEngage Facebook Chat, Agent is able to start call with the facebook customer by sending conference url via Facebook message. When both (Agent and Facebook Customer) arrives on Conference url, we need to save the chat in FbMessages table instead of userchats table.

jekram commented 7 years ago

Please explain how this done for WebChat first

zarmeen92 commented 7 years ago

sir for WebChat, we are saving all the chat (whether done in KiboEngage Dashboard or Cloudkibo conference) inside UserChats table. On account of being saved inside single table, on kiboengage dashboard we are able to see the chat messages send/receive inside conference

For facebook chat, we are saving facebook chat messages inside FbMessages table in our database. So in order to view the chat done inside conference with Facebook customer, the chat messages on conference should be saved in FBMessages table

jekram commented 7 years ago

So in KiboEngage we have two tables: 1) For WebChat 2) FB Chat? Is that correct. Instead of one table with a flag to identify the kind of Chat Data?

zarmeen92 commented 7 years ago

yes sir. We did this because the chat schema for Facebook chat is different from our web chat sessions

jekram commented 7 years ago

I am very confused.

I am assuming that Chat data is maintained in KiboEngage and not in CloudKibo. Correct?

Who is storing the data in these tables: KiboEngage or CloudKibo?

If these is Chat on CloudKibo it should be sent back to KiboEngage and KiboEngage should store it?

CloudKibo should not be storing data in KiboEngage tables. It should be sending the data back to KiboEngage and let KiboEngage store it.

zarmeen92 commented 7 years ago

Yes sir Chat data is maintained in KiboEngage. KiboEngage saves the data in these tables . Cloudkibo conference calls api of Kiboengage to send the chat done in conference.

If these is Chat on CloudKibo it should be sent back to KiboEngage and KiboEngage should store it? Yes we are doing the same.

zarmeen92 commented 7 years ago

worked on this issue. The task is completed now. The chat on the conference will now be visible in Facebook chat sessions page after the conference ended. screen shot 2017-06-20 at 8 28 20 am screen shot 2017-06-20 at 8 28 25 am screen shot 2017-06-20 at 8 28 56 am

But agent needs to refresh his page or the conference chat is visible when agent logins next time. The reason is that our database resides in KiboEngage Swagger. KiboEngage web fetches data from Swagger on the start of application (on login or page refresh)

zarmeen92 commented 7 years ago

Removing the label resolved. We will implement it like the way discussed in meeting that Cloudkibo should simply return back what is given through URL along with chat message. KiboEngage should handle the logic of saving the chat in appropriate table

sojharo commented 7 years ago

Here is the required document :

https://docs.google.com/document/d/1MbxvA2O2bjGC2yx0VuRoJnNTT5_GgbHRUflwOZKuBJc/edit

@zarmeen92 please read and comment.

zarmeen92 commented 7 years ago

@sojharo: why can't we make Cloudkibo return whatever parameters it has received along with chat message instead of returning fixed set of variables? If we are not sending Sender id and Recipient id then how will we know on KiboEngage these values? We need these values to save chat inside fbmessages table on kiboengage

sojharo commented 7 years ago

In yesterday's meeting, we had discussed with Sir and I said that we would send these common parameters for all types of conferences (facebook and web). It will be upto KiboEngage to determine where to store the chat. Also, we need to take care that CloudKibo doesn't differentiate between web chat and facebook chat conference. I have suggested these parameters so that cloudkibo will not know this. Also, the parameters given to CloudKibo will also be limited in the new way that sir had discussed. so it will only return the parameters given to it. Difference is that parameters will be less on both input and output.

Please update the document if you think some parameters are missing.

zarmeen92 commented 7 years ago

we can now close this task. I have completed the work on KiboEngage and Cloudkibo. Now on Cloudkibo, conference is returning to KiboEngage endpoint whatever parameters it has received along with Chat data. On kiboengage endpoint, we are conditioning over received parameters to decide where to save chat message