BotSharp/docs/architecture/assets/routing-redirection.drawio

97 lines
10 KiB
Plaintext
Raw Normal View History

<mxfile host="Electron" modified="2023-10-10T21:37:42.505Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/22.0.2 Chrome/114.0.5735.289 Electron/25.8.4 Safari/537.36" etag="-dbqqSJbNwoyw_Kk7Jn3" version="22.0.2" type="device">
<diagram name="Page-1" id="kO8wPeW4tp55nROlIybF">
<mxGraphModel dx="1434" dy="844" grid="0" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="X3GvA0o1aQpa0wGmxsrW-7" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fillColor=#f8cecc;gradientColor=#ea6b66;strokeColor=#b85450;sketch=1;curveFitting=1;jiggle=2;" parent="1" source="X3GvA0o1aQpa0wGmxsrW-1" target="X3GvA0o1aQpa0wGmxsrW-5" edge="1">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="X3GvA0o1aQpa0wGmxsrW-1" value="&lt;b&gt;User&lt;/b&gt;" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;sketch=1;curveFitting=1;jiggle=2;" parent="1" vertex="1">
<mxGeometry x="370" y="150" width="30" height="60" as="geometry" />
</mxCell>
<mxCell id="X3GvA0o1aQpa0wGmxsrW-4" value="&lt;div style=&quot;line-height: 18px;&quot;&gt;&lt;font color=&quot;#1e1e1e&quot;&gt;&lt;b&gt;May I know the order payment status?&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;" style="shape=callout;whiteSpace=wrap;html=1;perimeter=calloutPerimeter;sketch=1;curveFitting=1;jiggle=2;" parent="1" vertex="1">
<mxGeometry x="285" y="90" width="225" height="60" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-9" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;sketch=1;curveFitting=1;jiggle=2;" edge="1" parent="1" source="X3GvA0o1aQpa0wGmxsrW-5" target="X3GvA0o1aQpa0wGmxsrW-10">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="X3GvA0o1aQpa0wGmxsrW-5" value="&lt;b&gt;&lt;font style=&quot;font-size: 15px;&quot;&gt;BotSharp&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Routing with redirection" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#ffcc99;strokeColor=#36393d;sketch=1;curveFitting=1;jiggle=2;" parent="1" vertex="1">
<mxGeometry x="295" y="310" width="180" height="60" as="geometry" />
</mxCell>
<mxCell id="X3GvA0o1aQpa0wGmxsrW-6" value="&lt;b&gt;&lt;br&gt;&lt;br&gt;Payment&lt;br&gt;&lt;/b&gt;" style="shape=actor;whiteSpace=wrap;html=1;fillColor=#ffff88;strokeColor=#36393d;sketch=1;curveFitting=1;jiggle=2;" parent="1" vertex="1">
<mxGeometry x="220" y="467" width="60" height="70" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.75;entryDx=0;entryDy=0;sketch=1;curveFitting=1;jiggle=2;" edge="1" parent="1" source="X3GvA0o1aQpa0wGmxsrW-10" target="X3GvA0o1aQpa0wGmxsrW-12">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-19" value="&lt;b&gt;&lt;font style=&quot;font-size: 12px;&quot;&gt;Redirect to Ordering&lt;/font&gt;&lt;/b&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="6MggG28vB1jrAnJqoctb-3">
<mxGeometry x="-0.7634" relative="1" as="geometry">
<mxPoint y="10" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-11" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=1;entryY=0.75;entryDx=0;entryDy=0;sketch=1;curveFitting=1;jiggle=2;" edge="1" parent="1" source="X3GvA0o1aQpa0wGmxsrW-10" target="X3GvA0o1aQpa0wGmxsrW-6">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="X3GvA0o1aQpa0wGmxsrW-10" value="&lt;b&gt;Have Order Number?&lt;/b&gt;" style="rhombus;whiteSpace=wrap;html=1;fillColor=#ffcc99;strokeColor=#36393d;sketch=1;curveFitting=1;jiggle=2;" parent="1" vertex="1">
<mxGeometry x="345" y="480" width="80" height="80" as="geometry" />
</mxCell>
<mxCell id="X3GvA0o1aQpa0wGmxsrW-12" value="&lt;b&gt;&lt;br&gt;&lt;br&gt;Ordering&lt;/b&gt;" style="shape=actor;whiteSpace=wrap;html=1;fillColor=#ffff88;strokeColor=#36393d;sketch=1;curveFitting=1;jiggle=2;" parent="1" vertex="1">
<mxGeometry x="608" y="620" width="60" height="70" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-12" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.3333333333333333;entryDx=0;entryDy=0;entryPerimeter=0;sketch=1;curveFitting=1;jiggle=2;" edge="1" parent="1" source="X3GvA0o1aQpa0wGmxsrW-6" target="X3GvA0o1aQpa0wGmxsrW-1">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="168" y="520" />
<mxPoint x="168" y="170" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-13" value="&lt;b style=&quot;border-color: var(--border-color);&quot;&gt;&lt;font style=&quot;border-color: var(--border-color); font-size: 12px;&quot;&gt;The order of P12345 &lt;br&gt;has been paid successfully&lt;/font&gt;&lt;/b&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="6MggG28vB1jrAnJqoctb-12">
<mxGeometry x="-0.2864" y="2" relative="1" as="geometry">
<mxPoint x="2" y="-18" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-14" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=1;entryDx=0;entryDy=0;entryPerimeter=0;sketch=1;curveFitting=1;jiggle=2;" edge="1" parent="1" source="X3GvA0o1aQpa0wGmxsrW-12" target="6MggG28vB1jrAnJqoctb-16">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-15" value="&lt;b&gt;&lt;font style=&quot;font-size: 12px;&quot;&gt;Do you have the order number?&lt;/font&gt;&lt;/b&gt;" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="6MggG28vB1jrAnJqoctb-14">
<mxGeometry x="0.1208" relative="1" as="geometry">
<mxPoint y="24" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-18" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.3333333333333333;exitDx=0;exitDy=0;exitPerimeter=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;sketch=1;curveFitting=1;jiggle=2;" edge="1" parent="1" source="6MggG28vB1jrAnJqoctb-16" target="X3GvA0o1aQpa0wGmxsrW-5">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-16" value="&lt;b&gt;User&lt;/b&gt;" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;sketch=1;curveFitting=1;jiggle=2;" vertex="1" parent="1">
<mxGeometry x="638" y="320" width="30" height="60" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-17" value="&lt;div style=&quot;line-height: 18px;&quot;&gt;&lt;font color=&quot;#1e1e1e&quot;&gt;&lt;b&gt;The order is P12345&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;" style="shape=callout;whiteSpace=wrap;html=1;perimeter=calloutPerimeter;sketch=1;curveFitting=1;jiggle=2;direction=east;" vertex="1" parent="1">
<mxGeometry x="578" y="240" width="140" height="60" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-20" value="" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;lid=0;sketch=1;curveFitting=1;jiggle=2;" vertex="1" parent="1">
<mxGeometry x="258.53999999999996" y="877" width="91.49" height="120" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-21" value="&lt;b&gt;&lt;br&gt;&lt;br&gt;Router&lt;br&gt;&lt;/b&gt;" style="shape=actor;whiteSpace=wrap;html=1;fillColor=#ffff88;strokeColor=#36393d;sketch=1;curveFitting=1;jiggle=2;" vertex="1" parent="1">
<mxGeometry x="278.57000000000005" y="917" width="51.43" height="60" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-22" value="&lt;b&gt;&lt;br&gt;&lt;br&gt;Payment&lt;br&gt;&lt;/b&gt;" style="shape=actor;whiteSpace=wrap;html=1;fillColor=#ffff88;strokeColor=#36393d;sketch=1;curveFitting=1;jiggle=2;" vertex="1" parent="1">
<mxGeometry x="413.99999999999994" y="787" width="51.43" height="60" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-23" value="&lt;b&gt;&lt;br&gt;&lt;br&gt;Ordering&lt;br&gt;&lt;/b&gt;" style="shape=actor;whiteSpace=wrap;html=1;fillColor=#ffff88;strokeColor=#36393d;sketch=1;curveFitting=1;jiggle=2;" vertex="1" parent="1">
<mxGeometry x="150" y="737" width="51.43" height="60" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-24" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.jumpInArrow;dy=15;dx=38;arrowHead=55;direction=south;sketch=1;curveFitting=1;jiggle=2;" vertex="1" parent="1">
<mxGeometry x="212.5" y="777" width="100" height="100" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-25" value="" style="html=1;shadow=0;dashed=0;align=center;verticalAlign=middle;shape=mxgraph.arrows2.jumpInArrow;dy=15;dx=38;arrowHead=55;direction=east;sketch=1;curveFitting=1;jiggle=2;" vertex="1" parent="1">
<mxGeometry x="330" y="797" width="70" height="70" as="geometry" />
</mxCell>
<mxCell id="6MggG28vB1jrAnJqoctb-26" value="&lt;b&gt;Router maintains the agent calling stack &lt;br&gt;according to conversation state&lt;/b&gt;" style="text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=none;fillColor=none;" vertex="1" parent="1">
<mxGeometry x="396" y="908" width="248" height="41" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>