bot-handoff
Version:
Bot hand off module for the Microsoft Bot Framework. It allows you to transfer a customer from talking to a bot to talking to a human.
25 lines (22 loc) • 928 B
text/typescript
import { Session } from 'botbuilder';
import { MessageReceivedWhileWaitingHandler } from '../options/MessageReceivedWhileWaitingHandler';
import { AgentMessageRouter } from '../routers/AgentMessageRouter';
import { CustomerMessageRouter } from '../routers/CustomerMessageRouter';
import { IHandoffMessage } from './../IHandoffMessage';
export function getRouteMessgeMiddleware(
customerMessageRouter: CustomerMessageRouter,
agentMessageRouter: AgentMessageRouter
): (session: Session, next: Function) => void {
return (session: Session, next: Function) => {
if (session.message.type === 'message') {
const message = session.message as IHandoffMessage;
if (message.agentAddress) {
agentMessageRouter.Route(session);
} else {
customerMessageRouter.Route(session, next);
}
} else {
next();
}
};
}