Botframework-sdk: Delegate bot conversation to human

Created on 25 Jan 2017  路  5Comments  路  Source: microsoft/botframework-sdk

I ve seen this question asked multiple times but answers were never enough or included code snippets so I am open a new issue here. This is the use case I am trying to resolve:

1) Human asks a question to the bot.
2) As bot doesn't know the answer, bot passes the question to an expert.
3) Experts gets notified that a user needs help, so he takes control of the bot.
4) A conversation starts between both humans, but via the bot (the user just sees incoming messsages by the bot).
5) Whenever they finish their conversation, bot goes back to normal state.

I ve seen many posts about this, for instance:

Here
Here
Here

And I think this is the one that has the best answer, although, I still have some doubts about how to tackle this.

1) Is it necessary to use another GUI for the expert human? How can this be done via the same bot channel (for example Skype)?
2) Any examples of how to use DirectLine?

What is the best way to implement this?

Thanks!

customer-replied-to

Most helpful comment

In the Node SDK we recently added a new bot.loadSession() method which lets you load a session for a different address just for this type of situation. We don't have samples for this yet but you should be able to save an address for an agent in a database and then load the assigned agents session object and proxy the messages back and forth.

All 5 comments

@LarsLiden do you have any thoughts?

I'm really interested in the solution too. Any ideas?

I've found a solution in C# here. But the Agent UI included in this document works by a interval request to the Bot Service, it's very painful if the Bot will be in production and you have lots of customers interact with your bot. And in my point of view, it's quite difficult to customize the code
Intermediator Bot

In the Node SDK we recently added a new bot.loadSession() method which lets you load a session for a different address just for this type of situation. We don't have samples for this yet but you should be able to save an address for an agent in a database and then load the assigned agents session object and proxy the messages back and forth.

Any sample documentation?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

clearab picture clearab  路  3Comments

peterbozso picture peterbozso  路  3Comments

somprabhsharma picture somprabhsharma  路  3Comments

hailiang-wang picture hailiang-wang  路  3Comments

kenyeung128 picture kenyeung128  路  3Comments