websocket only sends one message?

I have a small server in Python that I’m trying to get to terminate based on a message it gets from a client. This is the server:

async def receiver(websocket, path):
    received_data = await websocket.recv()
    print("< {}".format(received_data))
    if received_data == "Order66":
        websocket.keep_running = False
        asyncio.get_event_loop().stop()
    else:
        print("< {}".format(received_data))

def start_the_server():
    start_server = websockets.serve(receiver, 'localhost', 8765)
    asyncio.get_event_loop().run_until_complete(start_server)
    asyncio.get_event_loop().run_forever()

def main():
    start_the_server()

if __name__ == "__main__":
    main()

The “client” is a larger app which also has a Javascript API and I am trying to this:

            // send the info and disconnect
            const socket2 = new WebSocket('ws://localhost:8765');
            
            socket2.addEventListener('open', function (event) {
                socket2.send(stats);
                socket2.send("Order66");
            });

However, it only ever sends “stats” (in this case it’s a string), and the second send(...) never seems to get sent.