We have moved to a new Sailfish OS Forum. Please start new discussions there.

Revision history [back]

click to hide/show revision 1
initial version

posted 2019-09-30 01:36:43 +0200

How to get incoming sms number from DBUS Telepathy message?

I am getting incoming SMS via DBUS, but "subscriber-identity" appears to be IMSI not phone number (MSISDN).

Obviously both the phone and messages apps get the actual phone number, so how do I get it?

Inside the message we find

MessageListener::dbusMessageReceived(const QDBusMessage&) const Received message QDBusMessage(type=Signal, service=":1.23", path="/org/freedesktop/Telepathy/Connection/ring/tel/_0x1c20a0/text13", interface="org.freedesktop.Telepathy.Channel.Interface.Messages", member="MessageReceived", signature="aa{sv}", contents=([ Argument: aa{sv} { [Argument: a{sv} { "pending-message-id" = [Variant(uint): 1], "message-token" = [Variant(QString): "568b96b2-b67b-42d8-993b-6241f908545b"], "message-type" = [Variant(uint): 0], "message-received" = [Variant(qlonglong): 1569756104], "message-sent" = [Variant(qlonglong): 1569756103], "message-sender" = [Variant(uint): 13], "subscriber-identity" = [Variant(QString): "530240108309055"] } ], [Argument: a{sv} { "content" = [Variant(QString): "Where"], "content-type" = [Variant(QString): "text/plain"], "type" = [Variant(QString): "text/plain"] } ] } ]) )

How to get incoming sms number from DBUS Telepathy message?

I am getting incoming SMS via DBUS, but "subscriber-identity" appears to be IMSI not phone number (MSISDN).

Obviously both the phone and messages apps get the actual phone number, so how do I get it?

Inside the message we find

MessageListener::dbusMessageReceived(const QDBusMessage&) 
  const Received message QDBusMessage(type=Signal, service=":1.23", 
   path="/org/freedesktop/Telepathy/Connection/ring/tel/_0x1c20a0/text13", 
   interface="org.freedesktop.Telepathy.Channel.Interface.Messages", 
   member="MessageReceived", signature="aa{sv}", 
   contents=([
Argument: aa{sv} {
[Argument: a{sv} 
{
"pending-message-id" = [Variant(uint): 1], 
 "message-token" = [Variant(QString): "568b96b2-b67b-42d8-993b-6241f908545b"],
 "message-type" = [Variant(uint): 0],
 "message-received" = [Variant(qlonglong): 1569756104],
 "message-sent" = [Variant(qlonglong): 1569756103],
 "message-sender" = [Variant(uint): 13],
 "subscriber-identity" = [Variant(QString): "530240108309055"]
}
],
 [Argument: a{sv} 
{
"content" = [Variant(QString): "Where"],
 "content-type" = [Variant(QString): "text/plain"],
 "type" = [Variant(QString): "text/plain"]
}
]
}
]) )

)

How to get incoming sms number from DBUS Telepathy message?

I am getting incoming SMS via DBUS, but "subscriber-identity" appears to be IMSI not phone number (MSISDN).

Obviously both the phone and messages apps get the actual phone number, so how do I get it?

Inside the message we find

MessageListener::dbusMessageReceived(const QDBusMessage&) 
  const Received message QDBusMessage(type=Signal, service=":1.23", 
   path="/org/freedesktop/Telepathy/Connection/ring/tel/_0x1c20a0/text13", 
   interface="org.freedesktop.Telepathy.Channel.Interface.Messages", 
   member="MessageReceived", signature="aa{sv}", 
   contents=([
Argument: aa{sv} {
[Argument: a{sv} 
{
"pending-message-id" = [Variant(uint): 1], 
 "message-token" = [Variant(QString): "568b96b2-b67b-42d8-993b-6241f908545b"],
 "message-type" = [Variant(uint): 0],
 "message-received" = [Variant(qlonglong): 1569756104],
 "message-sent" = [Variant(qlonglong): 1569756103],
 "message-sender" = [Variant(uint): 13],
 "subscriber-identity" = [Variant(QString): "530240108309055"]
}
],
 [Argument: a{sv} 
{
"content" = [Variant(QString): "Where"],
 "content-type" = [Variant(QString): "text/plain"],
 "type" = [Variant(QString): "text/plain"]
}
]
}
]) )

How to get incoming sms number from DBUS Telepathy message?

I am getting incoming SMS via DBUS, but "subscriber-identity" appears to be IMSI not phone number (MSISDN).

Obviously both the phone and messages apps get the actual phone number, so how do I get it?

Inside the message we find

MessageListener::dbusMessageReceived(const QDBusMessage&) 
  const Received message QDBusMessage(type=Signal, service=":1.23", 
   path="/org/freedesktop/Telepathy/Connection/ring/tel/_0x1c20a0/text13", 
   interface="org.freedesktop.Telepathy.Channel.Interface.Messages", 
   member="MessageReceived", signature="aa{sv}", 
   contents=([
Argument: aa{sv} {
[Argument: a{sv} 
{
"pending-message-id" = [Variant(uint): 1], 
 "message-token" = [Variant(QString): "568b96b2-b67b-42d8-993b-6241f908545b"],
 "message-type" = [Variant(uint): 0],
 "message-received" = [Variant(qlonglong): 1569756104],
 "message-sent" = [Variant(qlonglong): 1569756103],
 "message-sender" = [Variant(uint): 13],
 "subscriber-identity" = [Variant(QString): "530240108309055"]
}
],
 [Argument: a{sv} 
{
"content" = [Variant(QString): "Where"],
 "content-type" = [Variant(QString): "text/plain"],
 "type" = [Variant(QString): "text/plain"]
}
]
}
]) )