When all configured MTProto proxies are unavailable, incoming push notifications cause Telegram’s iOS Notification Service Extension to create hundreds of network requests, timeouts, and retries, producing excessive background activity and likely contributing to battery drain. With a working proxy, the same notification flow completes with only a few requests and no retries. I do not see repeated visible “You have a new message” alerts.
Controlled A/B results:
Unavailable proxies, 3 incoming push bursts during approximately 110 seconds: 726 unique URLSession tasks, 813 log entries reporting HTTP 404, 48 NSURLErrorDomain -1001 timeouts, and 87 pending retries.
Working proxy, 2 complete push cycles: 3 unique URLSession tasks, 3 fast HTTP 404 responses, 0 timeouts, and 0 pending retries.
Step 1: On a network where Telegram cannot connect directly, enable notifications for an unmuted personal chat.
Step 2: Configure and select a working MTProto proxy.
Step 3: Make this proxy and all other configured proxies unavailable, leaving Telegram unable to connect.
Step 4: Put Telegram in the background and lock the iPhone.
Step 5: From another account or device, send 2–3 plain-text messages to the unmuted chat, waiting several seconds between messages.
Step 6: Do not open Telegram and wait for the push notifications.
Step 7: Check the iOS system log. Each push causes NotificationServiceExtensionv1 to create hundreds of URLSession requests, HTTP 404 responses, timeouts, and pending retries.
Step 8: Select a working MTProto proxy and repeat the test. The extension then completes with only a few requests and no timeouts or retries.