mirror of
https://github.com/OpenHands/OpenHands.git
synced 2026-03-22 13:47:19 +08:00
add mock server (#214)
This commit is contained in:
10
opendevin/mock/README.md
Normal file
10
opendevin/mock/README.md
Normal file
@@ -0,0 +1,10 @@
|
||||
# OpenDevin mock server
|
||||
This is a simple mock server to facilitate development in the frontend.
|
||||
|
||||
## Start the Server
|
||||
```
|
||||
python -m pip install -r requirements.txt
|
||||
python listen.py
|
||||
```
|
||||
|
||||
Then open the frontend to connect to the mock server. It will simply reply to every received message.
|
||||
29
opendevin/mock/listen.py
Normal file
29
opendevin/mock/listen.py
Normal file
@@ -0,0 +1,29 @@
|
||||
import uvicorn
|
||||
from fastapi import FastAPI, WebSocket
|
||||
|
||||
app = FastAPI()
|
||||
@app.websocket("/ws")
|
||||
async def websocket_endpoint(websocket: WebSocket):
|
||||
await websocket.accept()
|
||||
# send message to mock connection
|
||||
await websocket.send_json({"action": "initialize", "message": "Control loop started."})
|
||||
|
||||
try:
|
||||
while True:
|
||||
# receive message
|
||||
data = await websocket.receive_json()
|
||||
print(f"Received message: {data}")
|
||||
|
||||
# send mock response to client
|
||||
response = {"message": f"receive {data}"}
|
||||
await websocket.send_json(response)
|
||||
print(f"Sent message: {response}")
|
||||
except Exception as e:
|
||||
print(f"WebSocket Error: {e}")
|
||||
|
||||
@app.get("/")
|
||||
def read_root():
|
||||
return {"message": "This is a mock server"}
|
||||
|
||||
if __name__ == "__main__":
|
||||
uvicorn.run(app, host="127.0.0.1", port=3000)
|
||||
Reference in New Issue
Block a user