Does Bitcoin RPC API have a realtime websocket? I am trying to create some app based on RPC API call from bitcoin core.

I want to make my btc core daemon send a notification whenever a new transaction is observed. Does BTC core RPC API have a websocket interface to make a call when new transaction happens ?
Since you only care about transactions involving your wallet, you can specify the walletnotify option in your bitcoin.conf or your bitcoind start command.

Since walletnotify allows you to execute an arbitrary command with the new tx info, it's fairly easy to make it call a webhook on your application, or invoke your application via the command line, or pass the information on in any number of other ways.