Closed kevinhwang91 closed 4 years ago
Do you mean there's a notification not being sent, like with Gmail or other email providers? This might be related to #898, in which case there could be an upstream bug in the notifications plugin that newer apps are hitting.
Do you mean there's a notification not being sent, like with Gmail or other email providers?
Yes
This might be related to #898, in which case there could be an upstream bug in the notifications plugin that newer apps are hitting.
Sorry, I have no idea about IFTTT. I'm not sure whether they are related.
All notifications should be sent via the Notification plugin, but some are always excluded like system notification (eg. Play Store updates, Battery Saver, stuff like that).
It seems like this might have the same cause as the other issue, since all regular app notifications should be sent. I think the IFTTT app is newer and I expect MS updates the Outlook app pretty often. Maybe there are new notification features that are breaking in the Android app.
I'll ask the KDE Connect developers tomorrow to see if anyone knows or uses those apps too. What version of Android are you running?
Thanks a lot. My device OS is Android 10.
No one has gotten back to me about using those apps, but this seems like it's probably an upstream problem in the Android app so you might have to open a bug at bugs.kde.org.
Can you get logs from adb
for kdeconnect-android?
No one has gotten back to me about using those apps, but this seems like it's probably an upstream problem in the Android app so you might have to open a bug at bugs.kde.org.
Can you get logs from
adb
for kdeconnect-android?
You mean to use adb logcat --pid=$(adb shell pidof -s org.kde.kdeconnect_tp)
?
Yes, that would be helpful for developers to debug. It seems like the problem is likely happening in kdeconnect-android
so if you can catch the point where it happens, that would make it a lot easier to fix.
Here is my log after booting:
--------- beginning of main
08-03 07:43:38.299 5792 5792 E e.kdeconnect_t: Unknown bits set in runtime_flags: 0x20000
08-03 07:43:38.306 5792 5792 E e.kdeconnect_t: Not starting debugger since process cannot load the jdwp agent.
08-03 07:43:38.406 5792 5792 I Perf : Connecting to perf service.
08-03 07:43:38.411 5792 5792 I e.kdeconnect_t: [GL_OOM] ClampGrowthLimit 268435456
08-03 07:43:38.458 5792 5792 V Font : Change font:1
08-03 07:43:38.458 5792 5792 V Font : Default family:android.graphics.Typeface@591d847e
08-03 07:43:56.369 5792 5792 W ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@523fa74
08-03 07:43:56.432 5792 5792 V FlingOptimizerScroller: FlingOptimizerOverScroller Init
08-03 07:43:56.461 5792 5792 I MainActivity: Loading selected device from persistent storage
08-03 07:43:56.497 5792 5792 V ViewRootImpl: The specified message queue synchronization barrier token has not been posted or has already been removed
08-03 07:43:56.516 5792 7842 I AdrenoGLES: QUALCOMM build : 6209c5d, Ifdcc64d6e8
08-03 07:43:56.516 5792 7842 I AdrenoGLES: Build Date : 12/12/19
08-03 07:43:56.516 5792 7842 I AdrenoGLES: OpenGL ES Shader Compiler Version: EV031.27.05.03
08-03 07:43:56.516 5792 7842 I AdrenoGLES: Local Branch : mybranchea1c9b4a-9e05-f149-a3b2-1458d0b52ae8
08-03 07:43:56.516 5792 7842 I AdrenoGLES: Remote Branch : quic/gfx-adreno.lnx.1.0.r85-rel
08-03 07:43:56.516 5792 7842 I AdrenoGLES: Remote Branch : NONE
08-03 07:43:56.516 5792 7842 I AdrenoGLES: Reconstruct Branch : NOTHING
08-03 07:43:56.516 5792 7842 I AdrenoGLES: Build Config : C O 9.0.3 AArch64
08-03 07:43:56.516 5792 7878 D ViewRootImpl[MainActivity]: windowFocusChanged hasFocus=true inTouchMode=true
08-03 07:43:56.519 5792 7842 I AdrenoGLES: PFP: 0x005ff112, ME: 0x005ff066
08-03 07:43:56.538 5792 7842 W Gralloc3: mapper 3.x is not supported
08-03 07:43:56.548 5792 5792 I KDE/BackgroundService: Service not started yet, initializing...
08-03 07:43:56.586 5792 5792 W System.err: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
08-03 07:43:56.586 5792 5792 W System.err: SLF4J: Defaulting to no-operation (NOP) logger implementation
08-03 07:43:56.586 5792 5792 W System.err: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
08-03 07:43:56.609 5792 5792 I PluginFactory: Loaded 21 plugins
08-03 07:43:56.635 5792 5792 I KDE/LanLink: Using port 1716
08-03 07:43:56.637 5792 5792 I LanLinkProvider: broadcastUdpPacket: relax cowboy
08-03 07:43:56.661 5792 7902 I KDE/LanLinkProvider: Identity package received from a TCP connection from Kevin-PC
08-03 07:43:56.662 5792 5792 D OnePlusJankManager: Chor uploadMDM JANK_TYPE_ONCE mViewTitle = org.kde.kdeconnect_tp/org.kde.kdeconnect.UserInterface.MainActivity--- jank level = 1
08-03 07:43:56.662 5792 7902 I KDE/LanLinkProvider: Starting SSL handshake with Kevin-PC trusted:true
08-03 07:43:56.667 5792 5792 I KdeConnect: Connection state changed, trying to connect
08-03 07:43:56.670 5792 5792 I LanLinkProvider: broadcastUdpPacket: relax cowboy
08-03 07:43:56.760 5792 7910 I KDE/LanLinkProvider: Handshake as client successful with Kevin-PC secured with TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
08-03 07:43:56.760 5792 7910 I KDE/LanLinkProvider: Creating a new link for device 1b39c4e1-122f-486c-af86-a198e658b06e
08-03 07:43:56.760 5792 7910 I KDE/BackgroundService: addLink, known device: 1b39c4e1-122f-486c-af86-a198e658b06e
08-03 07:43:56.761 5792 7910 I KDE/Device: Got certificate
08-03 07:43:56.761 5792 7910 I KDE/Device: addLink LanLinkProvider -> Kevin-PC active links: 1
08-03 07:43:56.761 5792 7916 I KDE/addPlugin: Permissions OK SftpPlugin
08-03 07:43:56.762 5792 7916 I KDE/addPlugin: Optional Permissions OK SftpPlugin
08-03 07:43:56.762 5792 7910 I KDE/addPlugin: Optional Permissions OK SftpPlugin
08-03 07:43:56.767 5792 7916 I KDE/addPlugin: Permissions OK MprisReceiverPlugin
08-03 07:43:56.767 5792 7916 I KDE/addPlugin: Optional Permissions OK MprisReceiverPlugin
08-03 07:43:56.768 5792 7916 I KDE/addPlugin: Permissions OK BatteryPlugin
08-03 07:43:56.768 5792 7916 I KDE/addPlugin: Optional Permissions OK BatteryPlugin
08-03 07:43:56.768 5792 7910 I KDE/addPlugin: Optional Permissions OK MprisReceiverPlugin
08-03 07:43:56.768 5792 7916 I KDE/addPlugin: Permissions OK SharePlugin
08-03 07:43:56.768 5792 7916 I KDE/addPlugin: Optional Permissions OK SharePlugin
08-03 07:43:56.776 5792 7916 I KDE/addPlugin: Permissions OK NotificationsPlugin
08-03 07:43:56.776 5792 7916 I KDE/addPlugin: Optional Permissions OK NotificationsPlugin
08-03 07:43:56.776 5792 7910 I KDE/addPlugin: Optional Permissions OK BatteryPlugin
08-03 07:43:56.777 5792 7916 I KDE/addPlugin: Permissions OK TelephonyPlugin
08-03 07:43:56.777 5792 7916 I KDE/addPlugin: Optional Permissions OK TelephonyPlugin
08-03 07:43:56.778 5792 7916 I KDE/addPlugin: Permissions OK PhotoPlugin
08-03 07:43:56.778 5792 7916 I KDE/addPlugin: Optional Permissions OK PhotoPlugin
08-03 07:43:56.778 5792 7916 I KDE/addPlugin: Permissions OK FindRemoteDevicePlugin
08-03 07:43:56.778 5792 7916 I KDE/addPlugin: Optional Permissions OK FindRemoteDevicePlugin
08-03 07:43:56.778 5792 7916 I KDE/addPlugin: Permissions OK ClipboardPlugin
08-03 07:43:56.778 5792 7916 I KDE/addPlugin: Optional Permissions OK ClipboardPlugin
08-03 07:43:56.778 5792 7916 I KDE/addPlugin: Permissions OK PingPlugin
08-03 07:43:56.778 5792 7916 I KDE/addPlugin: Optional Permissions OK PingPlugin
08-03 07:43:56.778 5792 7910 I KDE/addPlugin: Optional Permissions OK SharePlugin
08-03 07:43:56.789 5792 7916 W MediaPlayer: Use of stream types is deprecated for operations other than volume control
08-03 07:43:56.789 5792 7916 W MediaPlayer: See the documentation of setAudioStreamType() for what to use instead with android.media.AudioAttributes to qualify your playback use case
08-03 07:43:56.808 5792 7916 I KDE/addPlugin: Permissions OK FindMyPhonePlugin
08-03 07:43:56.808 5792 7916 I KDE/addPlugin: Optional Permissions OK FindMyPhonePlugin
08-03 07:43:56.808 5792 7910 I KDE/addPlugin: Optional Permissions OK NotificationsPlugin
08-03 07:43:56.808 5792 7916 I KDE/addPlugin: Permissions OK SystemVolumePlugin
08-03 07:43:56.808 5792 7916 I KDE/addPlugin: Optional Permissions OK SystemVolumePlugin
08-03 07:43:56.809 5792 7916 I KDE/addPlugin: Permissions OK PresenterPlugin
08-03 07:43:56.809 5792 7916 I KDE/addPlugin: Optional Permissions OK PresenterPlugin
08-03 07:43:56.809 5792 7916 D RemoteKeyboardPlugin: Creating for device Kevin-PC
08-03 07:43:56.810 5792 7916 I KDE/addPlugin: Permissions OK RemoteKeyboardPlugin
08-03 07:43:56.810 5792 7916 I KDE/addPlugin: Optional Permissions OK RemoteKeyboardPlugin
08-03 07:43:56.810 5792 7910 I KDE/addPlugin: Optional Permissions OK TelephonyPlugin
08-03 07:43:56.810 5792 7910 I KDE/addPlugin: Optional Permissions OK PhotoPlugin
08-03 07:43:56.817 5792 7916 I KDE/addPlugin: Permissions OK MprisPlugin
08-03 07:43:56.818 5792 7916 I KDE/addPlugin: Optional Permissions OK MprisPlugin
08-03 07:43:56.818 5792 7910 I KDE/addPlugin: Optional Permissions OK FindRemoteDevicePlugin
08-03 07:43:56.818 5792 7910 I KDE/addPlugin: Optional Permissions OK ClipboardPlugin
08-03 07:43:56.818 5792 7916 I KDE/addPlugin: Permissions OK ContactsPlugin
08-03 07:43:56.818 5792 7916 I KDE/addPlugin: Optional Permissions OK ContactsPlugin
08-03 07:43:56.818 5792 7916 I KDE/addPlugin: Permissions OK RunCommandPlugin
08-03 07:43:56.818 5792 7916 I KDE/addPlugin: Optional Permissions OK RunCommandPlugin
08-03 07:43:56.819 5792 7916 I KDE/addPlugin: Permissions OK MousePadPlugin
08-03 07:43:56.819 5792 7916 I KDE/addPlugin: Optional Permissions OK MousePadPlugin
08-03 07:43:56.819 5792 7910 I KDE/addPlugin: Optional Permissions OK PingPlugin
08-03 07:43:56.819 5792 7910 I KDE/addPlugin: Optional Permissions OK FindMyPhonePlugin
08-03 07:43:56.819 5792 7910 I KDE/addPlugin: Optional Permissions OK SystemVolumePlugin
08-03 07:43:56.819 5792 7910 I KDE/addPlugin: Optional Permissions OK PresenterPlugin
08-03 07:43:56.819 5792 7910 I KDE/addPlugin: Optional Permissions OK RemoteKeyboardPlugin
08-03 07:43:56.819 5792 7910 I KDE/addPlugin: Optional Permissions OK MprisPlugin
08-03 07:43:56.819 5792 7910 I KDE/addPlugin: Optional Permissions OK ContactsPlugin
08-03 07:43:56.819 5792 7910 I KDE/addPlugin: Optional Permissions OK RunCommandPlugin
08-03 07:43:56.819 5792 7910 I KDE/addPlugin: Optional Permissions OK MousePadPlugin
08-03 07:43:56.830 5792 7916 W Device : Ignoring packet with type kdeconnect.runcommand.request because no plugin can handle it
08-03 07:43:56.830 5792 7916 W Device : Ignoring packet with type kdeconnect.sms.request_conversations because no plugin can handle it
08-03 07:44:02.666 5792 7878 D ViewRootImpl[MainActivity]: windowFocusChanged hasFocus=false inTouchMode=true
08-03 07:44:04.611 5792 7917 I KDE/LanLink: Using port 1739
08-03 07:44:04.716 5792 7917 I KDE/LanLink: Beginning to send payload
08-03 07:44:04.716 5792 7917 I KDE/LanLink: Finished sending payload (5470 bytes written)
08-03 07:45:07.911 5792 5792 I KdeConnect: KdeConnectBroadcastReceiver
08-03 07:45:08.364 5792 7917 I KDE/LanLink: Using port 1739
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: Exception
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: java.net.SocketTimeoutException: Poll timed out
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: at libcore.io.IoBridge.poll(IoBridge.java:682)
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: at java.net.PlainSocketImpl.socketAccept(PlainSocketImpl.java:196)
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:451)
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: at java.net.ServerSocket.implAccept(ServerSocket.java:547)
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: at java.net.ServerSocket.accept(ServerSocket.java:515)
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: at org.kde.kdeconnect.Backends.LanBackend.LanLink.sendPacket(LanLink.java:186)
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: at org.kde.kdeconnect.Device.sendPacketBlocking(Device.java:701)
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: at org.kde.kdeconnect.DevicePacketQueue$SendingThread.run(DevicePacketQueue.java:112)
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: at java.lang.Thread.run(Thread.java:919)
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: No device link (of 1 available) could send the package. Packet kdeconnect.notification to Kevin-PC lost!
When received an SMS, the log said KdeConnectBroadcastReceiver
. No log when the outlook received from android.
08-03 07:43:56.830 5792 7916 W Device : Ignoring packet with type kdeconnect.sms.request_conversations because no plugin can handle it
This means the SMS plugin is disabled in the Android app, but is unrelated to notifications.
08-03 07:45:18.379 5792 7917 E KDE/sendPacket: No device link (of 1 available) could send the package. Packet kdeconnect.notification to Kevin-PC lost!
This might be lost packet, but it seems more likely Android is ignoring the notification because it falls into one of these categories:
[kdeconnect-android: NotificationsPlugin.java#L183-L193]
Notification notification = statusBarNotification.getNotification();
if ((notification.flags & Notification.FLAG_FOREGROUND_SERVICE) != 0
|| (notification.flags & Notification.FLAG_ONGOING_EVENT) != 0
|| (notification.flags & Notification.FLAG_LOCAL_ONLY) != 0
|| (notification.flags & NotificationCompat.FLAG_GROUP_SUMMARY) != 0 //The notification that groups other notifications
)
{
//This is not a notification we want!
return;
}
Since there's no logging function here, you'd have to add it and recompile the Apk to know for sure. But if GSConnect is not logging anything for this notification, then there's not much we can fix here though so you'll have to open an upstream bu report.
|| (notification.flags & Notification.FLAG_ONGOING_EVENT) != 0
That one's especially interesting as an exclusion factor, since as I mentioned both of my test notifications could theoretically have fallen into that category. But the hourly IFTTT notifications I set up didn't come through, while the Samsung Reminders app alerts did.
Makes me think that may be too fuzzily-defined a category, and one that's played too fast-and-loose with by developers, to make a good criterion for notification filtering.
...if this notification is in reference to something that is ongoing, like a phone call. It should not be set if this notification is in reference to something that happened at a particular point in time, like a missed phone call.
Hmm, could be. I guess this one is specifically ignored because of the telephony plugin, but unless someone leaks the Outlook source it's hard to say if that's the flag here :wink:
@andyholmes wrote:
Since there's no logging function here, you'd have to add it and recompile the Apk to know for sure. But if GSConnect is not logging anything for this notification, then there's not much we can fix here though so you'll have to open an upstream bu report.
@kevinhwang91 Here (shared in Google Drive) is a build of 1.14.2 with the following change applied:
Index: src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java (revision a0636de6c7d65713a3feb9e778f146c6d88e3a32)
+++ src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java (date 1596577961000)
@@ -182,6 +182,10 @@
Notification notification = statusBarNotification.getNotification();
+ String key = getNotificationKeyCompat(statusBarNotification);
+ String packageName = statusBarNotification.getPackageName();
+ String appName = AppsHelper.appNameLookup(context, packageName);
+
if ((notification.flags & Notification.FLAG_FOREGROUND_SERVICE) != 0
|| (notification.flags & Notification.FLAG_ONGOING_EVENT) != 0
|| (notification.flags & Notification.FLAG_LOCAL_ONLY) != 0
@@ -189,6 +193,8 @@
)
{
//This is not a notification we want!
+ Log.w(TAG, "sendNotification: Ignored " + appName
+ + " notification due to flags: " + notification.flags);
return;
}
@@ -197,11 +203,6 @@
// we don't want notification from this app
}
- String key = getNotificationKeyCompat(statusBarNotification);
- String packageName = statusBarNotification.getPackageName();
- String appName = AppsHelper.appNameLookup(context, packageName);
-
-
if ("com.facebook.orca".equals(packageName) &&
(statusBarNotification.getId() == 10012) &&
"Messenger".equals(appName) &&
That should get you some visibility into that process, at least enough to confirm that it is the reason for the missing notifications.
The build is unsigned (because I'm not an Android developer), unofficial (because I'm not a KDE Connect developer), and unsafe to install on any device (because I'm Just Some Guy On The Internet™), however if you're willing to take your chances, all I can say is that I installed it on my phone and it seemed to work fine.
You'll have to download the APK, make sure your phone is set to allow installs from unknown sources (I think most are by default, still), give whatever app you open the APK from permission to install apps, and.. oh, right, and before all that:
I didn't change the branding, really, so the only way to identify the APK version is at the very bottom of its Settings > Apps entry, which will show the version string "FeRDNYC-debug".
Your call. As I said, the wise thing is not to chance it... though I can't imagine what could go wrong. It is a hassle, though.
Log.w(TAG, "sendNotification: Ignored " + appName
+ " notification due to flags: " + notification.flags);
...And now that I look at this again, I really hope Java does the sensible thing when asked to add a string and an enum a bitmask, and just embeds the integer value.
Oh well... if it doesn't, instead of the log message you'll probably get an error in the logs, which I suppose would provide basically the same confirmation. :roll_eyes:
@andyholmes wrote:
Since there's no logging function here, you'd have to add it and recompile the Apk to know for sure. But if GSConnect is not logging anything for this notification, then there's not much we can fix here though so you'll have to open an upstream bu report.
@kevinhwang91 Here (shared in Google Drive) is a build of 1.14.2 with the following change applied:
Index: src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== --- src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java (revision a0636de6c7d65713a3feb9e778f146c6d88e3a32) +++ src/org/kde/kdeconnect/Plugins/NotificationsPlugin/NotificationsPlugin.java (date 1596577961000) @@ -182,6 +182,10 @@ Notification notification = statusBarNotification.getNotification(); + String key = getNotificationKeyCompat(statusBarNotification); + String packageName = statusBarNotification.getPackageName(); + String appName = AppsHelper.appNameLookup(context, packageName); + if ((notification.flags & Notification.FLAG_FOREGROUND_SERVICE) != 0 || (notification.flags & Notification.FLAG_ONGOING_EVENT) != 0 || (notification.flags & Notification.FLAG_LOCAL_ONLY) != 0 @@ -189,6 +193,8 @@ ) { //This is not a notification we want! + Log.w(TAG, "sendNotification: Ignored " + appName + + " notification due to flags: " + notification.flags); return; } @@ -197,11 +203,6 @@ // we don't want notification from this app } - String key = getNotificationKeyCompat(statusBarNotification); - String packageName = statusBarNotification.getPackageName(); - String appName = AppsHelper.appNameLookup(context, packageName); - - if ("com.facebook.orca".equals(packageName) && (statusBarNotification.getId() == 10012) && "Messenger".equals(appName) &&
That should get you some visibility into that process, at least enough to confirm that it is the reason for the missing notifications.
The build is unsigned (because I'm not an Android developer), unofficial (because I'm not a KDE Connect developer), and unsafe to install on any device (because I'm Just Some Guy On The Internet™), however if you're willing to take your chances, all I can say is that I installed it on my phone and it seemed to work fine.
You'll have to download the APK, make sure your phone is set to allow installs from unknown sources (I think most are by default, still), give whatever app you open the APK from permission to install apps, and.. oh, right, and before all that:
- First uninstall the real KDE Connect app, or the APK installation will fail.
- After you install the APK, you'll have to re-pair to your computer.
- You'll also have to re-grant all of the permissions, and re-do all of your app settings.
- Just for fun, when you eventually uninstall this build and reinstall the official KDE Connect, you'll get to do all of that over AGAIN.
I didn't change the branding, really, so the only way to identify the APK version is at the very bottom of its Settings > Apps entry, which will show the version string "FeRDNYC-debug".
Your call. As I said, the wise thing is not to chance it... though I can't imagine what could go wrong. It is a hassle, though.
Thanks, I have tried the apk you uploaded.
Although Outlook email has arrived, no warning like sendNotification: Ignored
inside the log.
Thanks, I have tried the apk you uploaded. Although Outlook email has arrived, no warning like
sendNotification: Ignored
inside the log.
@kevinhwang91
Hmm, that's frustrating. ...I probably should've just added a log message every time the plugin's sendNotification()
method fires, just for sanity's sake. I'll put together an updated APK with that change, so that we can at least see when sendNotification()
is used, period. Then if we still don't see anything in the logs, we'll know things aren't even getting that far for some reason.
@kevinhwang91
OK, new APK uploaded, if you happen to still have my previous debug APK installed you can just install it over the previous build as an update, and you won't have to redo any preferences or anything.
When it's running you should now see these warnings for every notification:
KDE/NotificationsPlugin
sendNotification called for notification from
${appName}
${timestamp}
And then if the notification isn't sent due to flags, a second message immediately after:
KDE/NotificationsPlugin
sendNotification: Ignored ${appName}
notification due to flags: ${flagsInteger}
${timestamp}
Closing this one, since it's an upstream issue. Feel free to re-open this issue or a new one if work on our side is needed.
Best thing is to ensure there's an upstream bug report for this, otherwise it's unlikely to be fixed upstream.
Is your feature request related to a problem? Please describe. For now, when mobile received an email in outlook, it can't push the msg to PC.
Describe the solution you'd like Push the msg to PC.
Describe alternatives you've considered Not yet.
System Details (please complete the following information):
Additional context I don't know whether KDEConnect had implemented this feature.