summaryrefslogtreecommitdiffhomepage
path: root/test/python/websockets/mirror/asgi.py
blob: 0f1d9953047fe5ec092aec7f2fe4dfc5183937c4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
async def application(scope, receive, send):
    if scope['type'] == 'websocket':
        while True:
            m = await receive()
            if m['type'] == 'websocket.connect':
                await send({
                  'type': 'websocket.accept',
                })

            if m['type'] == 'websocket.receive':
                await send({
                  'type': 'websocket.send',
                  'bytes': m.get('bytes', None),
                  'text': m.get('text', None),
                })

            if m['type'] == 'websocket.disconnect':
                break;