Esempio n. 1
0
def loginZerodha(args):
  userConfig = getUserConfig()
  global kite
  kite = KiteConnect(api_key=userConfig['apiKey'])
  if 'request_token' in args:
    requestToken = args['request_token']
    print('requestToken = ' + requestToken)
    session = kite.generate_session(requestToken, api_secret=userConfig['apiSecret'])
    accessToken = session['access_token']
    print('accessToken = ' + accessToken)
    kite.set_access_token(accessToken)
    holdings = kite.holdings()
    print('holdings => ', holdings)
    return '<p>Login successful. accessToken = ' + accessToken + '</p>'
  else:
    loginUrl = kite.login_url()
    print('login url => ' + loginUrl)
    return redirect(loginUrl, code=302)
Esempio n. 2
0
def startTicker():
    userConfig = getUserConfig()
    accessToken = getAccessToken()
    if accessToken == None:
        logging.error(
            'startTicker: Cannot start ticker as accessToken is empty')
        return

    global ticker
    ticker = KiteTicker(userConfig['apiKey'], accessToken)
    ticker.on_connect = onConnect
    ticker.on_close = onDisconnect
    ticker.on_error = onError
    ticker.on_reconnect = onReconnect
    ticker.on_noreconnect = onMaxReconnectsAttempt
    ticker.on_ticks = onNewTicks
    ticker.on_order_update = onOrderUpdate

    logging.info('Ticker: Going to connect..')
    ticker.connect(threaded=True)
Esempio n. 3
0
def loginZerodha(args):
    userConfig = getUserConfig()
    systemConfig = getSystemConfig()
    global kite
    kite = KiteConnect(api_key=userConfig['apiKey'])
    if 'request_token' in args:
        requestToken = args['request_token']
        logging.info('requestToken = %s', requestToken)
        session = kite.generate_session(requestToken,
                                        api_secret=userConfig['apiSecret'])
        accessToken = session['access_token']
        logging.info('accessToken = %s', accessToken)
        kite.set_access_token(accessToken)
        logging.info('Login successful. accessToken = %s', accessToken)
        # redirect to home page with query param loggedIn=true
        homeUrl = systemConfig['homeUrl'] + '?loggedIn=true'
        logging.info('Redirecting to home page %s', homeUrl)

        return redirect(homeUrl, code=302)
    else:
        loginUrl = kite.login_url()
        logging.info('Redirecting to zerodha login url = %s', loginUrl)
        return redirect(loginUrl, code=302)
Esempio n. 4
0
    return json.dumps(respData)


@app.route('/positions', methods=['GET'])
def positions():
    kite = getKite()
    positions = kite.positions()
    print('getKite positions => ', positions)
    return json.dumps(positions)


@app.route('/holdings', methods=['GET'])
def holdings():
    kite = getKite()
    holdings = kite.holdings()
    print('getKite holdings => ', holdings)
    return json.dumps(holdings)


# Execution starts here
initLoggingConfg()

serverConfig = getServerConfig()
logging.info('serverConfig => %s', serverConfig)

userConfig = getUserConfig()
logging.info('userConfig => %s', userConfig)

port = serverConfig['port']

app.run('localhost', port)