WebSocket ఇన్ ద్వారా సందేశాలను పంపడం మరియు స్వీకరించడం Python

WebSocket కమ్యూనికేషన్ సర్వర్ మరియు క్లయింట్‌ల మధ్య నిజ-సమయ సందేశాలను పంపడానికి మరియు స్వీకరించడానికి మిమ్మల్ని అనుమతిస్తుంది. Python లైబ్రరీని ఉపయోగించడంలో దీన్ని ఎలా సాధించాలనే దానిపై వివరణాత్మక గైడ్ ఇక్కడ ఉంది websockets.

దశ 1: WebSocket లైబ్రరీని ఇన్‌స్టాల్ చేయండి

మొదట, websockets కింది ఆదేశాన్ని అమలు చేయడం ద్వారా లైబ్రరీని ఇన్‌స్టాల్ చేయండి terminal:

pip install websockets

దశ 2: సర్వర్‌లో సందేశాలను పంపడం మరియు స్వీకరించడం

సర్వర్‌లో సందేశాలను ఎలా పంపాలి మరియు స్వీకరించాలి అనేదానికి దిగువ ఉదాహరణ WebSocket:

import asyncio  
import websockets  
  
# WebSocket connection handling function  
async def handle_connection(websocket, path):  
    async for message in websocket:  
        await websocket.send(f"Server received: {message}")  
  
# Initialize the WebSocket server  
start_server = websockets.serve(handle_connection, "localhost", 8765)  
  
# Run the server within the event loop  
asyncio.get_event_loop().run_until_complete(start_server)  
asyncio.get_event_loop().run_forever()  

కోడ్ స్నిప్పెట్‌లో:

  • async def handle_connection(websocket, path):: ఈ ఫంక్షన్ WebSocket కనెక్షన్‌లను నిర్వహిస్తుంది. క్లయింట్ సందేశాన్ని పంపినప్పుడు, ఈ ఫంక్షన్ వింటుంది మరియు ప్రతిస్పందనను తిరిగి పంపుతుంది.

  • async for message in websocket:: ఈ లూప్ కనెక్షన్ ద్వారా క్లయింట్ నుండి సందేశాలను వింటుంది WebSocket.

  • await websocket.send(f"Server received: {message}"): ఈ ఫంక్షన్ కనెక్షన్ ద్వారా క్లయింట్‌కు సర్వర్ నుండి ప్రతిస్పందనను తిరిగి పంపుతుంది WebSocket.

దశ 3: క్లయింట్ నుండి సందేశాలను పంపడం మరియు స్వీకరించడం

క్లయింట్ WebSocket సర్వర్ నుండి సందేశాలను ఎలా పంపుతుంది మరియు స్వీకరిస్తుంది అనేదానికి ఇక్కడ ఒక ఉదాహరణ ఉంది:

import asyncio  
import websockets  
  
async def send_and_receive():  
    async with websockets.connect("ws://localhost:8765") as websocket:  
        await websocket.send("Hello, WebSocket!")  
        response = await websocket.recv()  
        print("Received:", response)  
  
asyncio.get_event_loop().run_until_complete(send_and_receive())  

కోడ్ స్నిప్పెట్‌లో:

  • async with websockets.connect("ws://localhost:8765") as websocket:: ఈ విధంగా క్లయింట్ WebSocket సర్వర్‌కి కనెక్ట్ అవుతుంది. localhost క్లయింట్ చిరునామా మరియు పోర్ట్‌కి కనెక్షన్‌ని ఏర్పాటు చేస్తుంది 8765.

  • await websocket.send("Hello, WebSocket!"): క్లయింట్ సందేశాన్ని  సర్వర్‌కు పంపుతుంది. Hello, WebSocket!

  • response = await websocket.recv(): క్లయింట్ కనెక్షన్ ద్వారా సర్వర్ నుండి ప్రతిస్పందనను స్వీకరించడానికి వేచి ఉంది WebSocket.

ముగింపు

దశలను అనుసరించడం ద్వారా మరియు ఉదాహరణలోని ప్రతి భాగాన్ని అర్థం చేసుకోవడం ద్వారా, WebSocket లో ద్వారా సందేశాలను ఎలా పంపాలో మరియు స్వీకరించాలో మీరు విజయవంతంగా నేర్చుకున్నారు Python. ఇది నిజ-సమయ అప్లికేషన్‌లను సృష్టించడానికి మరియు సర్వర్ మరియు క్లయింట్‌ల మధ్య నిరంతర డేటా మార్పిడికి అవకాశాలను తెరుస్తుంది.