add long-polling fallback