add service worker message handler