Websocket not giving any data


  • I have created a sample code, and I am trying to run it to get live market data of SBIN, but it is only returning heartbeats, and no data is coming in.

    # -*- coding: utf-8 -*-
    """
    Created on Wed Mar  8 14:21:59 2023
    
    @author: Administrator
    """
    
    from smartapi import SmartWebSocket
    import pyotp
    from smartapi import SmartConnect, SmartWebSocket
    
    
    api_key = <api_key >
    access_token = <access_token>
    client_code =<client_code >
    password = <password >
    totp = pyotp.TOTP(access_token).now()
    obj=SmartConnect(api_key=api_key)
    data = obj.generateSession(client_code, password, totp)
    
    feedToken=obj.getfeedToken()
    FEED_TOKEN=feedToken
    CLIENT_CODE=client_code
    token="nse_cm|3045"    
    task="mw"   
    
    ss = SmartWebSocket(FEED_TOKEN, CLIENT_CODE)
    
    def on_message(ws, message):
        print("Ticks: {}".format(message))
        
    def on_open(ws):
        print("on open")
        ss.subscribe(task,token)
        
    def on_error(ws, error):
        print(error)
        
    def on_close(ws):
        print("Close")
    
    # Assign the callbacks.
    ss._on_open = on_open
    ss._on_message = on_message
    ss._on_error = on_error
    ss._on_close = on_close
    
    ss.connect()
    
    
    
    
    # ss.ws.close()
    # obj.terminateSession(client_code)
    
    

    The data contains my name and login information, so there is no problem generating a session, but the websocket doesn't give any data.

    The only thing it returns is:

    {'task': 'hb', 'channel': '', 'token': '0835520469', 'user': '<my_client_id>', 'acctid': '<my_client_id>'}