Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sms not sending #1149

Closed
MGMehdi opened this issue Jul 31, 2021 · 16 comments
Closed

Sms not sending #1149

MGMehdi opened this issue Jul 31, 2021 · 16 comments
Labels
needs info An issue that needs more information

Comments

@MGMehdi
Copy link

MGMehdi commented Jul 31, 2021

Describe the bug

When sending a SMS it stay grayed even if my phone is unlocked (MI 9 Lite - Google Message).
However I can receive SMS

Steps To Reproduce:

  1. Open Messaging
  2. Send a SMS

Expected behavior

SMS is send

Screenshots

image

System Details (please complete the following information):

  • Gnome 40
  • Arch

GSConnect environment (if applicable):

  • Paired Device(s): MI 9 Lite
@Doomsdayrs
Copy link

I am having this issue as well

Ubuntu 21.04
Oneplus 6

@yvesbertin
Copy link

As well Ubbuntu 21.10 Samsung S5 I can read SMS, ring my phone, but won't send..

@jperon
Copy link

jperon commented Oct 18, 2021

Same here.

Ubuntu 20.04, Crosscall Core-M4

@andyholmes
Copy link
Collaborator

Please provide a log if you would like help with this issue, as described in the Generate Support Log page of the Wiki.

@andyholmes andyholmes added the needs info An issue that needs more information label Dec 2, 2021
@MGMehdi
Copy link
Author

MGMehdi commented Dec 3, 2021

I removed the extension a long time ago and I don't plan to use it again

@MGMehdi MGMehdi closed this as completed Dec 3, 2021
@shibotto
Copy link

Same with GNOME 3.36 and GSConnect 43. I don't use systemd so I don't know what's supposed to appear in the editor, but with the Generate Support Log dialog open this appears in .cache/gdm/session.log (phone number redacted):

GSConnect-Message: 15:03:32.170: [/service/device.js:sendPacket:446]: ASUS_T00Q: {
  "id": 1643378612166,
  "type": "kdeconnect.sms.request",
  "body": {
    "sendSms": true,
    "phoneNumber": "*** *** ****",
    "messageBody": "test"
  }
}

(gsconnect-preferences:15142): Gjs-WARNING **: 15:03:34.319: JS ERROR: GLib.SpawnError: Esecuzione del processo figlio «journalctl» non riuscita (File o directory non esistente)
generateSupportLog@/encrypted/gentoo/shiba/.local/share/gnome-shell/extensions/[email protected]/preferences/service.js:53:14
async*_generateSupportLog/<@/encrypted/gentoo/shiba/.local/share/gnome-shell/extensions/[email protected]/preferences/service.js:427:35
@/encrypted/gentoo/shiba/.local/share/gnome-shell/extensions/[email protected]/gsconnect-preferences:112:21

@andyholmes
Copy link
Collaborator

Seems like everything is being sent correctly according to your log. You may have to check logcat on your device to see if there are any errors on the Android device.

@shibotto
Copy link

shibotto commented Feb 2, 2022

(It took me a while to understand how to do this 😅)

The following seem to be the relevant part of the logs on Android:

[02-02 12:06:30.861 7896:10495 E/Sending message]
Exception
java.lang.SecurityException: Permission Denial: writing com.android.providers.telephony.SmsProvider uri content://sms/ from pid=7896, uid=10036 requires android.permission.WRITE_SMS, or grantUriPermission()
	at android.os.Parcel.readException(Parcel.java:1540)
	at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:185)
	at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:137)
	at android.content.ContentProviderProxy.insert(ContentProviderNative.java:475)
	at android.content.ContentResolver.insert(ContentResolver.java:1207)
	at com.klinker.android.send_message.Transaction.sendSmsMessage(Transaction.java:244)
	at com.klinker.android.send_message.Transaction.sendNewMessage(Transaction.java:158)
	at com.klinker.android.send_message.Transaction.sendNewMessage(Transaction.java:172)
	at org.kde.kdeconnect.Plugins.SMSPlugin.SmsMmsUtils.sendMessage(SmsMmsUtils.java:188)
	at org.kde.kdeconnect.Plugins.SMSPlugin.SMSPlugin.onPacketReceived(SMSPlugin.java:413)
	at org.kde.kdeconnect.Device.onPacketReceived(Device.java:570)
	at org.kde.kdeconnect.Backends.BaseLink.packageReceived(BaseLink.java:70)
	at org.kde.kdeconnect.Backends.LanBackend.LanLink.receivedNetworkPacket(LanLink.java:249)
	at org.kde.kdeconnect.Backends.LanBackend.LanLink.lambda$reset$0(LanLink.java:97)
	at org.kde.kdeconnect.Backends.LanBackend.LanLink.$r8$lambda$u8LWlVA_uGoxlkxdXMbWulE13kY(LanLink.java)
	at org.kde.kdeconnect.Backends.LanBackend.LanLink$$ExternalSyntheticLambda0.run(Unknown Source)
	at java.lang.Thread.run(Thread.java:818)

So I guess it's not a GSConnect problem.

@andyholmes
Copy link
Collaborator

Thanks for checking back with that!

Do you have the SMS permission enabled in the Android app? If I recall, it's a smaller text item near the bottom of the device panel. If not, you should report this on https://bugs.kde.org since this is probably the cause of a lot of users' problems.

@ddowie
Copy link

ddowie commented Jan 6, 2023

Hello,
the same issue here.

Ubuntu 22.04.1 LTS | Samsunga galaxy s21 Ultra

Gnome 42.5
KDE connect 1.20.2
Gsconnect 50

In gsConnect I can see all the messages including contact names but when trying to send new one it stays greyed-out and is never sent. On device(android) all permissions are allowed and "logcat" show no errors.

Below is gsconnect support log. Any Ideas what could go wrong here?

GSConnect: 50 (user)
GJS: 17202
Session: x11
OS: Ubuntu 22.04.1 LTS

jan 06 08:04:17 gjs[30554]: Object .GSConnectMessagingWindow (0x55e9846c4860), has been already disposed — impossible to get any property from it. This might be caused by the object having been destroyed from C code using something such as destroy(), dispose(), or remove() vfuncs.
jan 06 08:04:17 org.gnome.Shell.Extensions.GSConnect[30554]: == Stack trace for context 0x55e98458e180 ==
jan 06 08:04:17 org.gnome.Shell.Extensions.GSConnect[30554]: #0 55e9845bfb58 i /home/myuser/.local/share/gnome-shell/extensions/[email protected]/service/ui/messaging.js:1062 (371df5a370b0 @ 10)
jan 06 08:04:17 org.gnome.Shell.Extensions.GSConnect[30554]: #1 55e9845bfa90 i self-hosted:1178 (2fb7fffb0a10 @ 398)
jan 06 08:04:17 org.gnome.Shell.Extensions.GSConnect[30554]: #2 55e9845bf9e0 i /home/myuser/.local/share/gnome-shell/extensions/[email protected]/service/daemon.js:727 (2fb7fffcc8d0 @ 927)
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:24 gnome-shell[2432]: g_signal_handler_disconnect: assertion 'handler_id > 0' failed
jan 06 08:04:29 dbus-daemon[1029]: [system] Activating via systemd: service name='org.freedesktop.hostname1' unit='dbus-org.freedesktop.hostname1.service' requested by ':1.608' (uid=1000 pid=57943 comm="gjs /home/myuser/.local/share/gnome-shell/extensions/" label="unconfined")
jan 06 08:04:29 systemd[1]: Starting Hostname Service...
jan 06 08:04:29 dbus-daemon[1029]: [system] Successfully activated service 'org.freedesktop.hostname1'
jan 06 08:04:29 systemd[1]: Started Hostname Service.
jan 06 08:04:34 org.gnome.Shell.Extensions.GSConnect[30554]: [/service/device.js:sendPacket:449]: SM-G998B: {
"id": 1672988674006,
"type": "kdeconnect.systemvolume",
"body": {
"sinkList": [
{
"name": "alsa_output.pci-0000_09_00.1.hdmi-stereo-extra1",
"description": "HDMI / DisplayPort 2 (GA104 High Definition Audio Controller Digital Stereo (HDMI 2))",
"muted": false,
"volume": 65536,
"maxVolume": 65536
},
{
"name": "alsa_output.pci-0000_0b_00.4.analog-stereo",
"description": "Line Out (Starship/Matisse HD Audio Controller Analog Stereo)",
"muted": false,
"volume": 38012,
"maxVolume": 65536
}
]
}
}
jan 06 08:04:35 org.gnome.Shell.Extensions.GSConnect[30554]: [/service/device.js:sendPacket:449]: SM-G998B: {
"id": 1672988675986,
"type": "kdeconnect.systemvolume",
"body": {
"sinkList": [
{
"name": "alsa_output.pci-0000_09_00.1.hdmi-stereo-extra1",
"description": "HDMI / DisplayPort 2 (GA104 High Definition Audio Controller Digital Stereo (HDMI 2))",
"muted": false,
"volume": 65536,
"maxVolume": 65536
},
{
"name": "alsa_output.pci-0000_0b_00.4.analog-stereo",
"description": "Line Out (Starship/Matisse HD Audio Controller Analog Stereo)",
"muted": false,
"volume": 38012,
"maxVolume": 65536
}
]
}
}

@andyholmes
Copy link
Collaborator

There is nothing in your log indicating you sent an SMS message. Are you sure you had the log generation dialog open when you sent the message?

@ddowie
Copy link

ddowie commented Jan 6, 2023

My bad I did not capture log from the time sending SMS - thank you for pointing it out.

Right now log is being flooded with thousands of my old messages I guess they are syncing from device to desktop. (service/device.js:_readLoop). I searched it and found "test message" and it looks like it is trying to be sent. I have no idea what can I try next. Does this mean problem is on the KDEConnect / Android side? I triple checked permissions. And updated messaging apps.

jan 06 08:43:40 org.gnome.Shell.Extensions.GSConnect[30554]: [/service/device.js:sendPacket:449]: SM-G998B: {
"id": 1672991020072,
"type": "kdeconnect.sms.request",
"body": {
"sendSms": true,
"phoneNumber": "+3xxxxxxxxx",
"messageBody": "test5"
}
}

@andyholmes
Copy link
Collaborator

Yes, that seems like it's happening on the Android-side. If you have ADB setup, you can logcat from your desktop with:

adb logcat --pid=$(adb shell pidof -s org.kde.kdeconnect_tp)

That might make it easier to line up the desktop and Android behaviours.

@ddowie
Copy link

ddowie commented Jan 8, 2023

Hello,
thank you. I managed to get logs from "logcat". The reason for failing looks like to be: No permission to access APN settings
Because KdeConnect already has all the permissions on my android phone afaik, I will start googling for error "No permission to access APN settings KDECONNECT"

Thank you Andy for your help and if you maybe know how to change this permissions in android I would appreciate.
Have a great day!

The complete error log on device is here:

01-08 16:42:35.620 27764 7001 W Sending message: Unable to determine correct outgoing address for sub ID -1. Using
01-08 16:42:35.636 27764 7001 E TelephonyHelper: Error encountered while trying to read APNs
01-08 16:42:35.636 27764 7001 E TelephonyHelper: java.lang.SecurityException: No permission to access APN settings
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at android.os.Parcel.createExceptionOrNull(Parcel.java:3023)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at android.os.Parcel.createException(Parcel.java:3007)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at android.os.Parcel.readException(Parcel.java:2990)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:190)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:142)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at android.content.ContentProviderProxy.query(ContentProviderNative.java:481)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at android.content.ContentResolver.query(ContentResolver.java:1226)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at android.content.ContentResolver.query(ContentResolver.java:1158)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at android.content.ContentResolver.query(ContentResolver.java:1114)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at org.kde.kdeconnect.Helpers.TelephonyHelper.getPreferredApn(TelephonyHelper.java:266)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at org.kde.kdeconnect.Plugins.SMSPlugin.SmsMmsUtils.sendMessage(SmsMmsUtils.java:135)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at org.kde.kdeconnect.Plugins.SMSPlugin.SMSPlugin.onPacketReceived(SMSPlugin.java:414)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at org.kde.kdeconnect.Device.onPacketReceived(Device.java:570)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at org.kde.kdeconnect.Backends.BaseLink.packageReceived(BaseLink.java:70)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at org.kde.kdeconnect.Backends.LanBackend.LanLink.receivedNetworkPacket(LanLink.java:250)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at org.kde.kdeconnect.Backends.LanBackend.LanLink.lambda$reset$0(LanLink.java:98)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at org.kde.kdeconnect.Backends.LanBackend.LanLink.$r8$lambda$u8LWlVA_uGoxlkxdXMbWulE13kY(Unknown Source:0)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at org.kde.kdeconnect.Backends.LanBackend.LanLink$$ExternalSyntheticLambda0.run(Unknown Source:4)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
01-08 16:42:35.636 27764 7001 E TelephonyHelper: at java.lang.Thread.run(Thread.java:1012)
01-08 16:42:35.637 27764 7001 V Sending message: Sending new SMS
01-08 16:42:35.768 27764 7001 E Sending message: Exception
01-08 16:42:35.768 27764 7001 E Sending message: java.lang.IllegalArgumentException: org.kde.kdeconnect_tp: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
01-08 16:42:35.768 27764 7001 E Sending message: Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.

01-08 16:42:35.768 27764 7001 E Sending message: at android.app.PendingIntent.checkFlags(PendingIntent.java:408)
01-08 16:42:35.768 27764 7001 E Sending message: at android.app.PendingIntent.getBroadcastAsUser(PendingIntent.java:688)
01-08 16:42:35.768 27764 7001 E Sending message: at android.app.PendingIntent.getBroadcast(PendingIntent.java:675)
01-08 16:42:35.768 27764 7001 E Sending message: at com.klinker.android.send_message.Transaction.sendSmsMessage(Transaction.java:267)
01-08 16:42:35.768 27764 7001 E Sending message: at com.klinker.android.send_message.Transaction.sendNewMessage(Transaction.java:158)
01-08 16:42:35.768 27764 7001 E Sending message: at com.klinker.android.send_message.Transaction.sendNewMessage(Transaction.java:172)
01-08 16:42:35.768 27764 7001 E Sending message: at org.kde.kdeconnect.Plugins.SMSPlugin.SmsMmsUtils.sendMessage(SmsMmsUtils.java:188)
01-08 16:42:35.768 27764 7001 E Sending message: at org.kde.kdeconnect.Plugins.SMSPlugin.SMSPlugin.onPacketReceived(SMSPlugin.java:414)
01-08 16:42:35.768 27764 7001 E Sending message: at org.kde.kdeconnect.Device.onPacketReceived(Device.java:570)
01-08 16:42:35.768 27764 7001 E Sending message: at org.kde.kdeconnect.Backends.BaseLink.packageReceived(BaseLink.java:70)
01-08 16:42:35.768 27764 7001 E Sending message: at org.kde.kdeconnect.Backends.LanBackend.LanLink.receivedNetworkPacket(LanLink.java:250)
01-08 16:42:35.768 27764 7001 E Sending message: at org.kde.kdeconnect.Backends.LanBackend.LanLink.lambda$reset$0(LanLink.java:98)
01-08 16:42:35.768 27764 7001 E Sending message: at org.kde.kdeconnect.Backends.LanBackend.LanLink.$r8$lambda$u8LWlVA_uGoxlkxdXMbWulE13kY(Unknown Source:0)
01-08 16:42:35.768 27764 7001 E Sending message: at org.kde.kdeconnect.Backends.LanBackend.LanLink$$ExternalSyntheticLambda0.run(Unknown Source:4)
01-08 16:42:35.768 27764 7001 E Sending message: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
01-08 16:42:35.768 27764 7001 E Sending message: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
01-08 16:42:35.768 27764 7001 E Sending message: at java.lang.Thread.run(Thread.java:1012)

@andyholmes
Copy link
Collaborator

Are you sure you have given KDE Connect permission to access SMS and Telephony? If so, you should probably open an issue at https://bugs.kde.org, otherwise you may want to recheck the permissions in the app info.

@ddowie
Copy link

ddowie commented Jan 9, 2023

I am 100% sure all permissions are allowed. I posted bug on bugs.kde.org
Thank you for pointing me to the right direction.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs info An issue that needs more information
Projects
None yet
Development

No branches or pull requests

7 participants