From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: From: "Stahl, Michael" Date: Tue, 3 Aug 2021 11:00:37 +0000 Message-ID: References: , , , , , , In-Reply-To: Content-Language: de-DE MIME-Version: 1.0 Subject: Re: [RAUC] Antwort: Re: Antwort: Re: Antwort: Re: Antwort: D-Bus control Qt List-Id: RAUC Project - Discussion List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============0482491713==" Errors-To: rauc-bounces@pengutronix.de Sender: "RAUC" To: "RAUC@pengutronix.de" Cc: RAUC --===============0482491713== Content-Language: de-DE Content-Type: multipart/alternative; boundary="_000_AM9PR09MB4756413551DD52754E0169D8DBF09AM9PR09MB4756eurp_" --_000_AM9PR09MB4756413551DD52754E0169D8DBF09AM9PR09MB4756eurp_ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable I found the issue You have to connect to the systemBus not to the sessionBus! if (QDBusConnection::systemBus().connect("de.pengutronix.rauc", = //Service "/", //Path "org.freedesktop.DBus.Properties", //Inter= face "PropertiesChanged", this, SLOT(propertyChanged(const QString& , const QMap& , const QStringList& ))= )) { qDebug() << "PropertiesChanged signal connected successfully to slo= t"; } else { qDebug() << "PropertiesChanged signal connection was not successful= "; } Now I my function propertyChanged is called every time the property changes= . If you use export QDBUS_DEBUG=3D1 you get a lot of debug output. It is very useful. The next step is to extract the informations of the QMap. ________________________________ Von: Stahl, Michael Gesendet: Dienstag, 3. August 2021 10:27 An: Eugen.Wiens@JUMO.net Cc: RAUC@pengutronix.de ; RAUC Betreff: AW: Antwort: Re: [RAUC] Antwort: Re: Antwort: Re: Antwort: D-Bus c= ontrol Qt Hi Euen, I know but I am stucking. I am polling the propery "Operation". Just when i= t changes from "idle" to "installing" I subscribe the PropertiesChanged sig= nal but without success. I tried several connect strings but all without su= ccess. if (QDBusConnection::sessionBus().connect("de.pengutronix.rauc", "/", "org.freedesktop.DBus.Properties", "PropertiesChanged", this, SLOT(propertyChanged(const QString& , const QMap& , const QStringList& ))= )) { qDebug() << "PropertiesChanged signal connected successfully to slot"; } else { qDebug() << "PropertiesChanged signal connection was not successful"; } Please can you tell me how to subcribe the PropertiesChanged signal? ________________________________ Von: Eugen.Wiens@JUMO.net Gesendet: Dienstag, 3. August 2021 08:27 An: Stahl, Michael Cc: RAUC@pengutronix.de ; RAUC Betreff: Antwort: Re: [RAUC] Antwort: Re: Antwort: Re: Antwort: D-Bus contr= ol Qt Hi Michael, you can connect to a property change on dbus level. That is the way we do i= t. "RAUC" schrieb am 03.08.2021 08:21:32: > Von: "Stahl, Michael" > An: "Eugen.Wiens@JUMO.net" > Kopie: "RAUC" , "RAUC@pengutronix.de" > > Datum: 03.08.2021 08:21 > Betreff: Re: [RAUC] Antwort: Re: Antwort: Re: Antwort: D-Bus control Q= t > Gesendet von: "RAUC" > > Hi Eugen, > > thanks again. I implemented the signal and now I get the signal that > the update is finished. > But thats the only signal that rauc is provided, isn't it? To get > the progress I have to poll the property, or are there general > signals on the dbus that I can connect to? > > Do you read the property "Progress" like > QDBusInterface iface( "de.pengutronix.rauc", > "/", > "de.pengutronix.rauc.Installer", > QDBusConnection::systemBus() ); > QVariant property =3D iface.property("Progress"); > MyProgress parameterProgress; > property.value() >> parameterProgress; > > or did you use another possibility? > If I use the above I get a message five times and the marshaled data ( > m_Progress, m_Message, ..) are always empty. > QDBusArgument: read from a write-only object > > Von: Eugen.Wiens@JUMO.net > Gesendet: Montag, 2. August 2021 16:53 > An: Stahl, Michael > Cc: RAUC@pengutronix.de ; RAUC bounces@pengutronix.de> > Betreff: Antwort: Re: [RAUC] Antwort: Re: Antwort: D-Bus control Qt > > Hi Michael, > > "RAUC" schrieb am 02.08.2021 16:29:18: > > > Von: "Stahl, Michael" > > An: "Eugen.Wiens@JUMO.net" > > Kopie: RAUC , "RAUC@pengutronix.de" > > > > Datum: 02.08.2021 16:29 > > Betreff: Re: [RAUC] Antwort: Re: Antwort: D-Bus control Qt > > Gesendet von: "RAUC" > > > > Okay, thanks a lot. > > > > A last question. Is it correct that I have to poll the "Progress" > > property or is there any signal system where I can subcribe to get a > > notification at every change of progress status? > > We are using a dbus signal. You can connect to it with Qt. > > Best regards, > Eugen > Diese E-Mail kann vertrauliche und/oder rechtlich gesch?tzte > Informationen beinhalten und ist ausschlie?lich f?r die im Verteiler > genannten Personen bestimmt. Das unerlaubte Kopieren sowie die > unbefugte Weitergabe dieser Mail sind nicht gestattet. Bitte > benachrichtigen Sie uns gegebenenfalls telefonisch oder mit Antwort- > Mail, falls Sie nicht der richtige Adressat dieser E-Mail sind. > Bitte l?schen Sie diese Nachricht und alle Anh?nge dazu unverz? > glich. Falls nicht ausdr?cklich vermerkt, ist diese E-Mail keine > rechtlich bindende Vereinbarung. > > Kommanditgesellschaft: JUMO GmbH & Co. KG, Sitz: 36039 Fulda, > Amtsgericht Fulda HRA 302, Pers?nlich haftende Gesellschafterin: M. > K. JUCHHEIM GmbH, Sitz: 36039 Fulda, Amtsgericht Fulda HRB 17, > Gesch?ftsf?hrer: Dipl.-Ing. Bernhard Juchheim, Dipl.-Kfm. Michael > Juchheim, Dipl.-Ing. Dimitrios Charisiadis > Ust.-Id.-Nr.: DE 112411234_______________________________________________ > RAUC mailing list Diese E-Mail kann vertrauliche und/oder rechtlich gesch?tzte Informationen = beinhalten und ist ausschlie?lich f?r die im Verteiler genannten Personen b= estimmt. Das unerlaubte Kopieren sowie die unbefugte Weitergabe dieser Mail= sind nicht gestattet. Bitte benachrichtigen Sie uns gegebenenfalls telefon= isch oder mit Antwort-Mail, falls Sie nicht der richtige Adressat dieser E-= Mail sind. Bitte l?schen Sie diese Nachricht und alle Anh?nge dazu unverz?g= lich. Falls nicht ausdr?cklich vermerkt, ist diese E-Mail keine rechtlich b= indende Vereinbarung. Kommanditgesellschaft: JUMO GmbH & Co. KG, Sitz: 36039 Fulda, Amtsgericht F= ulda HRA 302, Pers?nlich haftende Gesellschafterin: M. K. JUCHHEIM GmbH, Si= tz: 36039 Fulda, Amtsgericht Fulda HRB 17, Gesch?ftsf?hrer: Dipl.-Ing. Bern= hard Juchheim, Dipl.-Kfm. Michael Juchheim, Dipl.-Ing. Dimitrios Charisiadi= s Ust.-Id.-Nr.: DE 112411234 --_000_AM9PR09MB4756413551DD52754E0169D8DBF09AM9PR09MB4756eurp_ Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
I found the issue 

You have to connect to the systemB= us not to the sessionBus!

= if (QDBusConnect= ion::systemBus().connect("de.pengutronix.rauc"= ,                      &nbs= p;                  //Service
              &=
nbsp;                  "/",         =
                      //Path<=
/pre>
              &=
nbsp;                  =
"org.freedesktop.DBus.=
Properties", //In=
terface
              &=
nbsp;                  =
"PropertiesChanged&quo=
t;,
              &=
nbsp;                  =
this,
              &=
nbsp;                  =
SLOT(propertyChang=
ed(const QString& ,
              &=
nbsp;                    =
                   const QMap<QString, Q=
Variant>&=
 ,
              &=
nbsp;                    =
                   const QStringList& )))) {

        qDebug() << "PropertiesChanged  connected successfully to=
 slot";
        } else {
        qDebug() << "PropertiesChanged  connection was not <=
/span>successful";
        }

Now I my function propertyChanged = is called every time the property changes.

If you use 
export QDBUS_DEBUG=3D1
you get a lot of debug output. It is very useful.

The next step is to extract the informations of the QMap.



Von: Stahl, Michael <mst= ahl@moba.de>
Gesendet: Dienstag, 3. August 2021 10:27
An: Eugen.Wiens@JUMO.net <Eugen.Wiens@JUMO.net>
Cc: RAUC@pengutronix.de <RAUC@pengutronix.de>; RAUC <rauc-b= ounces@pengutronix.de>
Betreff: AW: Antwort: Re: [RAUC] Antwort: Re: Antwort: Re: Antwort: = D-Bus control Qt
 
Hi Euen,

I know but I am stucking. I am pollin= g the propery "Operation". Just when it changes from "idle&q= uot; to "installing" I subscribe the PropertiesChanged signal but without success. I tried several connect strings but all without succe= ss. 


if (QDBusConnection::sessionBus().connect("de.pengutronix.rauc",
               &nb=
sp;                 "/",
               &nb=
sp;                 "org.freedesktop.DBus.Properties",
               &nb=
sp;                 "PropertiesChanged",
               &nb=
sp;                 this,
               &nb=
sp;                 SLOT(propertyChanged(const QString& ,
               &nb=
sp;                     &=
nbsp;                const QMap<QString, QVariant>&=
amp; ,
              =
;                     &nb=
sp;                  const =
;QStringList& )))) 
{
  =
  qDebug() <&l=
t; "PropertiesChanged signal connected <=
span style=3D"color:rgb(0,128,0)">successfully to<=
span style=3D"color:rgb(192,192,192)"> slot";
} else {
    qDebug() << =
"PropertiesChanged signal connec=
tion was not successful";
}

Please can you tell me how to subcribe the PropertiesChanged signal?


Von: Eugen.Wiens@JUMO.net= <Eugen.Wiens@JUMO.net>
Gesendet: Dienstag, 3. August 2021 08:27
An: Stahl, Michael <mstahl@moba.de>
Cc: RAUC@pengutronix.de <RAUC@pengutronix.de>; RAUC <rauc-b= ounces@pengutronix.de>
Betreff: Antwort: Re: [RAUC] Antwort: Re: Antwort: Re: Antwort: D-Bu= s control Qt
 
Hi Michael,

you can connect to a property change o= n dbus level. That is the way we do it.


"RAUC" <rauc-bounces@pengutronix.de> s= chrieb am 03.08.2021 08:21:32:

> Von: "Stahl, Michael" <mstahl@moba.de>

> An: "Eugen.Wiens@JUMO.net" <Eugen.Wi= ens@JUMO.net>
> Kopie: "RAUC" <rauc-bounces@pengutro= nix.de>, "RAUC@pengutronix.de"
> <RAUC@pengutronix.de>

> Datum: 03.08.2021 08:21
> Betreff: Re: [RAUC] Antwort: Re:  Antwort: R= e:  Antwort:  D-Bus control Qt
> Gesendet von: "RAUC" <rauc-bounces@p= engutronix.de>
>
> Hi Eugen,

>
> thanks again. I implemented the signal and now I get the signal that > the update is finished.

> But thats the only signal that rauc is provided, = isn't it? To get
> the progress I have to poll the property, or are there general
> signals on the dbus that I can connect to?

>
> Do you read the property "Progress" like

> QDBusInterface iface( "de.pengutronix.rauc&q= uot;,
>               =    "/",
>               =    "de.pengutronix.rauc.Installer",
>               =    QDBusConnection::systemBus() );
> QVariant property =3D iface.property("Progre= ss");
> MyProgress parameterProgress;
> property.value<QDBusArgument>() >> pa= rameterProgress;
>
> or did you use another possibility?

> If I use the above I get a message five times and= the marshaled data (
> m_Progress, m_Message, ..) are always empty.

> QDBusArgument: read from a write-only object

>
> Von: Eugen.Wiens@JUMO.net <Eugen.Wiens@JUMO.net>
> Gesendet: Montag, 2. August 2021 16:53
> An: Stahl, Michael <mstahl@moba.de>
> Cc: RAUC@pengutronix.de <RAUC@pengutronix.de>; RAUC <rauc- > bounces@pengutronix.de>
> Betreff: Antwort: Re: [RAUC] Antwort: Re: Antwort: D-Bus control Qt

>  
> Hi Michael,
>
> "RAUC" <rauc-bounces@pengutronix.de> schrieb am 02.08.= 2021 16:29:18:
>
> > Von: "Stahl, Michael" <mstahl@moba.de>
> > An: "Eugen.Wiens@JUMO.net" <Eugen.Wiens@JUMO.net>=
> > Kopie: RAUC <rauc-bounces@pengutronix.de>, "RAUC@pengu= tronix.de"
> > <RAUC@pengutronix.de>
> > Datum: 02.08.2021 16:29
> > Betreff: Re: [RAUC] Antwort: Re:  Antwort:  D-Bus contr= ol Qt
> > Gesendet von: "RAUC" <rauc-bounces@pengutronix.de>= ;
> >
> > Okay, thanks a lot.
> >
> > A last question. Is it correct that I have to poll the "Prog= ress"
> > property or is there any signal system where I can subcribe to ge= t a
> > notification at every change of progress status?
>
> We are using a dbus signal. You can connect to it with Qt.
>
> Best regards,
> Eugen

> Diese E-Mail kann vertrauliche und/oder rechtlich= gesch?tzte
> Informationen beinhalten und ist ausschlie?lich f?r die im Verteiler > genannten Personen bestimmt. Das unerlaubte Kopieren sowie die
> unbefugte Weitergabe dieser Mail sind nicht gestattet. Bitte
> benachrichtigen Sie uns gegebenenfalls telefonisch oder mit Antwort- > Mail, falls Sie nicht der richtige Adressat dieser E-Mail sind.
> Bitte l?schen Sie diese Nachricht und alle Anh?nge dazu unverz?
> glich. Falls nicht ausdr?cklich vermerkt, ist diese E-Mail keine
> rechtlich bindende Vereinbarung.
>
> Kommanditgesellschaft: JUMO GmbH & Co. KG, Sitz: 36039 Fulda,
> Amtsgericht Fulda HRA 302, Pers?nlich haftende Gesellschafterin: M. > K. JUCHHEIM GmbH, Sitz: 36039 Fulda, Amtsgericht Fulda HRB 17,
> Gesch?ftsf?hrer: Dipl.-Ing. Bernhard Juchheim, Dipl.-Kfm. Michael
> Juchheim, Dipl.-Ing. Dimitrios Charisiadis
> Ust.-Id.-Nr.: DE 112411234____________________________________________= ___
> RAUC mailing list

Diese E-Mail kann vertrauliche und/oder rechtlich gesch?tzte In= formationen beinhalten und ist ausschlie?lich f?r die im Verteiler genannte= n Personen bestimmt. Das unerlaubte Kopieren sowie die unbefugte Weitergabe dieser Mail sind nicht gestattet. Bitte ben= achrichtigen Sie uns gegebenenfalls telefonisch oder mit Antwort-Mail, fall= s Sie nicht der richtige Adressat dieser E-Mail sind. Bitte l?schen Sie die= se Nachricht und alle Anh?nge dazu unverz?glich. Falls nicht ausdr?cklich vermerkt, ist diese E-Mail keine re= chtlich bindende Vereinbarung.

Kommanditgesellschaft: JUMO GmbH & Co. KG, Sitz: 36039 Fulda, Amtsgeric= ht Fulda HRA 302, Pers?nlich haftende Gesellschafterin: M. K. JUCHHEIM GmbH= , Sitz: 36039 Fulda, Amtsgericht Fulda HRB 17, Gesch?ftsf?hrer: Dipl.-Ing. = Bernhard Juchheim, Dipl.-Kfm. Michael Juchheim, Dipl.-Ing. Dimitrios Charisiadis
Ust.-Id.-Nr.: DE 112411234

--_000_AM9PR09MB4756413551DD52754E0169D8DBF09AM9PR09MB4756eurp_-- --===============0482491713== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ RAUC mailing list --===============0482491713==--