Как подключиться к брокеру Websocket в django

Я создаю алготрейдинговую платформу, у меня есть доступ к брокерским apis и websockets, но я не знаю, как подключиться к брокерскому websocket и потреблять данные в режиме реального времени в django

У меня настроены каналы:

#consumers.py
class ChatConsumer(WebsocketConsumer):
    def connect(self):
        self.accept()
        self.external_socket = websocket.WebSocketApp(
            "wss://api.shoonya.com/NorenWSTP/",
            on_message=self.on_message,
            on_error=self.on_error,
            on_close=self.on_close,
        )

        self.send(text_data=json.dumps({
            'type':'connection_established',
            'message':'You are now connected!',
        }))

        self.external_socket.run_forever()



#routing.py
from django.urls import re_path

from . import consumers

websocket_urlpatterns = [
    re_path(r'ws/socket-server/', consumers.ChatConsumer.as_asgi())
]

#asgi.py
import os

from django.core.asgi import get_asgi_application
from channels.routing import ProtocolTypeRouter, URLRouter
from channels.auth import AuthMiddlewareStack
import authengine.routing 

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'atkmain.settings')

application = ProtocolTypeRouter({
    'http': get_asgi_application(),
    'websocket': AuthMiddlewareStack(
        URLRouter(
            authengine.routing.websocket_urlpatterns
        )
    )
})

Вернуться на верх