File size: 1,507 Bytes
a485cfb b203730 a485cfb b203730 a485cfb b203730 a485cfb b203730 a485cfb b203730 a485cfb b203730 cfce83b b203730 a485cfb b203730 a485cfb |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
import websockets
from json import dumps, loads
# Define the asynchronous function to test the WebSocket connection
async def test():
# Establish a WebSocket connection with the specified URL
async with websockets.connect('wss://chatgpt.func.icu/conversation+ws') as wss:
# Prepare the message payload as a JSON object
payload = {
'content_type': 'text',
'engine': 'chat-gpt',
'parts': ['hello world'],
'options': {}
}
# Send the payload to the WebSocket server
await wss.send(dumps(obj=payload, separators=(',', ':')))
# Initialize a variable to track the end of the conversation
ended = None
# Continuously receive and process messages until the conversation ends
while not ended:
try:
# Receive and parse the JSON response from the server
response = await wss.recv()
json_response = loads(response)
# Print the entire JSON response
print(json_response)
# Check for the end of the conversation
ended = json_response.get('eof')
# If the conversation has not ended, print the received message
if not ended:
print(json_response['content']['parts'][0])
# Handle cases when the connection is closed by the server
except websockets.ConnectionClosed:
break
|