<mxfile host="65bd71144e">
    <diagram id="-TGdlIeuPAAU9olSj8nq" name="Page-1">
        <mxGraphModel dx="1113" dy="732" grid="1" 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="75" value="Webscoket" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;dashed=1;dashPattern=12 12;strokeColor=#FF0000;fontColor=#0000FF;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="650" y="345" width="70" height="105" as="geometry"/>
                </mxCell>
                <mxCell id="33" value="Biz Server" style="rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fillColor=#dae8fc;strokeColor=#6c8ebf;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="730" y="295" width="370" height="160" as="geometry"/>
                </mxCell>
                <mxCell id="2" value="SIP Proxy/WebRTC SBC/WebSocket" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff2cc;strokeColor=#d6b656;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="130" y="180" width="470" height="50" as="geometry"/>
                </mxCell>
                <mxCell id="4" value="" style="verticalLabelPosition=bottom;aspect=fixed;html=1;shape=mxgraph.salesforce.apps2;" vertex="1" parent="1">
                    <mxGeometry x="130" y="50" width="60" height="60" as="geometry"/>
                </mxCell>
                <mxCell id="5" value="" style="verticalLabelPosition=bottom;aspect=fixed;html=1;shape=mxgraph.salesforce.web;" vertex="1" parent="1">
                    <mxGeometry x="330" y="56.3" width="60" height="47.400000000000006" as="geometry"/>
                </mxCell>
                <mxCell id="6" value="" style="fontColor=#0066CC;verticalAlign=top;verticalLabelPosition=bottom;labelPosition=center;align=center;html=1;outlineConnect=0;fillColor=#CCCCCC;strokeColor=#6881B3;gradientColor=none;gradientDirection=north;strokeWidth=2;shape=mxgraph.networks.phone_2;" vertex="1" parent="1">
                    <mxGeometry x="530" y="56.3" width="60" height="55" as="geometry"/>
                </mxCell>
                <mxCell id="7" style="edgeStyle=none;html=1;entryX=0.062;entryY=-0.02;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="4" target="2">
                    <mxGeometry relative="1" as="geometry"/>
                </mxCell>
                <mxCell id="8" value="WebRTC" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" vertex="1" connectable="0" parent="7">
                    <mxGeometry x="-0.3034" relative="1" as="geometry">
                        <mxPoint y="19" as="offset"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="9" style="edgeStyle=none;html=1;entryX=0.487;entryY=-0.04;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="5" target="2">
                    <mxGeometry relative="1" as="geometry"/>
                </mxCell>
                <mxCell id="10" value="WebRTC" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" vertex="1" connectable="0" parent="9">
                    <mxGeometry x="-0.2517" y="1" relative="1" as="geometry">
                        <mxPoint y="11" as="offset"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="11" style="edgeStyle=none;html=1;" edge="1" parent="1" source="6">
                    <mxGeometry relative="1" as="geometry">
                        <mxPoint x="560" y="180" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="12" value="SIP/RTP" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" vertex="1" connectable="0" parent="11">
                    <mxGeometry x="0.033" relative="1" as="geometry">
                        <mxPoint as="offset"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="13" value="APP" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="130" y="10" width="60" height="30" as="geometry"/>
                </mxCell>
                <mxCell id="14" value="Web" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="330" y="10" width="60" height="30" as="geometry"/>
                </mxCell>
                <mxCell id="15" value="Phone" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="530" y="10" width="60" height="30" as="geometry"/>
                </mxCell>
                <mxCell id="18" value="Audio Processing" style="rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fillColor=#d5e8d4;strokeColor=#82b366;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="130" y="260" width="470" height="230" as="geometry"/>
                </mxCell>
                <mxCell id="28" style="edgeStyle=none;html=1;fontSize=14;" edge="1" parent="1" source="19" target="20">
                    <mxGeometry relative="1" as="geometry"/>
                </mxCell>
                <mxCell id="19" value="Noise Suppression&amp;nbsp;" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="370" y="290" width="90" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="20" value="VAD Detector" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="480" y="290" width="90" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="27" style="edgeStyle=none;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;fontSize=14;" edge="1" parent="1" source="21" target="19">
                    <mxGeometry relative="1" as="geometry"/>
                </mxCell>
                <mxCell id="21" value="Resampler" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="260" y="290" width="90" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="26" style="edgeStyle=none;html=1;fontSize=14;" edge="1" parent="1" source="23" target="21">
                    <mxGeometry relative="1" as="geometry"/>
                </mxCell>
                <mxCell id="23" value="Decode" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#ffe6cc;strokeColor=#d79b00;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="150" y="290" width="90" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="24" value="Processor" style="rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="135" y="370" width="455" height="100" as="geometry"/>
                </mxCell>
                <mxCell id="25" value="Recorder" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="160" y="410" width="90" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="62" style="edgeStyle=orthogonalEdgeStyle;html=1;" edge="1" parent="1" source="29">
                    <mxGeometry relative="1" as="geometry">
                        <mxPoint x="730" y="375" as="targetPoint"/>
                        <Array as="points">
                            <mxPoint x="470" y="430"/>
                            <mxPoint x="470" y="375"/>
                        </Array>
                    </mxGeometry>
                </mxCell>
                <mxCell id="67" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontSize=14;" edge="1" parent="1" source="29" target="40">
                    <mxGeometry relative="1" as="geometry"/>
                </mxCell>
                <mxCell id="29" value="ASR" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="370" y="410" width="90" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="30" value="CDR" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="267.5" y="410" width="90" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="69" style="edgeStyle=orthogonalEdgeStyle;html=1;entryX=0.75;entryY=0;entryDx=0;entryDy=0;fontSize=14;" edge="1" parent="1" source="31" target="40">
                    <mxGeometry relative="1" as="geometry"/>
                </mxCell>
                <mxCell id="31" value="TTS" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f8cecc;strokeColor=#b85450;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="487.5" y="410" width="90" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="64" style="edgeStyle=none;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="37" target="38">
                    <mxGeometry relative="1" as="geometry"/>
                </mxCell>
                <mxCell id="37" value="Intent Detection" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;dashed=1;dashPattern=8 8;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="790" y="355" width="110" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="65" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="38" target="46">
                    <mxGeometry relative="1" as="geometry"/>
                </mxCell>
                <mxCell id="38" value="LLM" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="955" y="355" width="110" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="40" value="ASR/TTS Provider" style="rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fillColor=#dae8fc;strokeColor=#6c8ebf;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="130" y="540" width="467.5" height="110" as="geometry"/>
                </mxCell>
                <mxCell id="41" value="Aliyun" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="142.5" y="580" width="100" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="42" value="Coze" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="257.5" y="580" width="100" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="43" value="Tencent" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="367.5" y="580" width="100" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="44" value="Deepgram" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="477.5" y="580" width="100" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="46" value="LLM Provider" style="rounded=1;whiteSpace=wrap;html=1;verticalAlign=top;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="735" y="540" width="370" height="105" as="geometry"/>
                </mxCell>
                <mxCell id="48" value="Ollama" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="755" y="575" width="100" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="49" value="OpenAI" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="865" y="575" width="100" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="50" value="Qwen" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="975" y="575" width="100" height="40" as="geometry"/>
                </mxCell>
                <mxCell id="55" value="" style="endArrow=none;dashed=1;html=1;" edge="1" parent="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="640" y="660" as="sourcePoint"/>
                        <mxPoint x="640" y="70" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="70" value="Events" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" vertex="1" connectable="0" parent="55">
                    <mxGeometry x="-0.0356" relative="1" as="geometry">
                        <mxPoint x="40" y="-6" as="offset"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="57" value="App server" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry x="815" y="250" width="180" height="30" as="geometry"/>
                </mxCell>
                <mxCell id="58" value="" style="shape=curlyBracket;whiteSpace=wrap;html=1;rounded=1;labelPosition=left;verticalLabelPosition=middle;align=right;verticalAlign=middle;" vertex="1" parent="1">
                    <mxGeometry x="80" y="200" width="20" height="300" as="geometry"/>
                </mxCell>
                <mxCell id="59" value="RustPBX" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontSize=14;" vertex="1" parent="1">
                    <mxGeometry y="335" width="95" height="30" as="geometry"/>
                </mxCell>
                <mxCell id="63" style="edgeStyle=orthogonalEdgeStyle;html=1;exitX=0;exitY=0.75;exitDx=0;exitDy=0;" edge="1" parent="1" source="33" target="31">
                    <mxGeometry relative="1" as="geometry">
                        <mxPoint x="735" y="445" as="sourcePoint"/>
                        <Array as="points">
                            <mxPoint x="630" y="415"/>
                            <mxPoint x="630" y="430"/>
                        </Array>
                    </mxGeometry>
                </mxCell>
                <mxCell id="71" value="Command" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];fontSize=14;" vertex="1" connectable="0" parent="63">
                    <mxGeometry x="-0.4489" y="-1" relative="1" as="geometry">
                        <mxPoint y="1" as="offset"/>
                    </mxGeometry>
                </mxCell>
            </root>
        </mxGraphModel>
    </diagram>
</mxfile>