added serice handling and message listening