問題タブ [gdbus]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gdbus - 構造体の gdbus 型の命名
gdbus codegen では、以下のように xml で構造体/オブジェクトが完全な型として定義されます。
ただし、同じ構造体が複数の場所で使用されている場合、特にシグネチャが後で変更された場合に、型定義を繰り返すのは少し面倒です。
では、複数の場所で同じものを維持する必要のない構造体のエイリアスまたは何かを定義する方法はありますか? 残念ながら、この場合、Qtバインディングを使用することはできません。
よろしく、
linux - DBus の特定のオブジェクト パス内のインターフェイスを表示するにはどうすればよいですか
端末コマンドを使用する必要があります。gdbus も使用できます。オブジェクトパス内のすべてのインターフェイスを表示する必要があるオブジェクトパスのバス名があります
dbus - エラー設定 BLE 温度計の間隔プロパティ
BLE 温度計の間隔プロパティを設定しようとしていますが、いくつかの問題が発生しています。
NetworkManager の WimaxEnabled プロパティなどの設定プロパティをテストしました。
これらの機能が実際に広告どおりに機能することを確認できます。Interval のプロパティを設定しようとすると、奇妙なことが起こります。問題なくインターバルをクリアできる
ただし、間隔を他の値として設定しようとすると、エラーが発生します。私はすべての可能な uint16 値を試しましたが、同じ結果が得られました。
Interval プロパティは読み取り/書き込みとして設定されます
これを行うための C プログラムも作成しましたが、まったく同じ結果が得られ、0 が機能し、他のすべての値が失敗します。これを前に見た人はいますか?何か提案はありますか?
編集:
必ず起こることですが、投稿後すぐに問題に気付きます。Minimum プロパティと Maximum プロパティは Interval の範囲だと思います。どちらも 0 に設定されているため、明らかに Interval プロパティを 0 以外に設定することはできません。
api - gdbus を介して「プロパティ」を取得する方法
gdbus 呼び出しを使用してシステムから情報を取得する方法に関するドキュメントがどこにあるか教えてもらえますか?
ここで API をフォローしています: https://www.freedesktop.org/software/ModemManager/api/latest/gdbus-org.freedesktop.ModemManager1.Modem.html#gdbus-method-org-freedesktop-ModemManager1-Modem.Command
たとえば、読みたい:
Model
Revision
State
PowerState
等
gdbus を介してモデムから「プロパティ」を取得するための呼び出しを作成する方法を考えていました。
ありがとう
c - g_varient_new () から結果を取得しています ...
この g_varient_new() で遊ぶ方法を学んでいますが、本当に混乱しています。https://developer.gnome.org/glib/unstable/glib-GVariant.html#g-variant-newを読みましたが、簡単に理解できません。
私はコードをもっている:
コンパイルは問題なく実行できますが、実行すると seg_fault が発生します。テスト印刷
印刷セグメンテーション違反
この呼び出しに期待する結果は次のとおりです。
バリアント データ構造とその中のデータを呼び出しから取得するにはどうすればよいですか? これを達成するために g_variat_new() 呼び出しをどのように形成すればよいですか?
ありがとう
c - wpa_supplicant p2p DBus インターフェイスへのシグナルハンドラーの登録
gdbus
C のライブラリを使用して、p2p 用の wpa_supplicant の dbus インターフェイスから「InvitationReceived」シグナルを受信するように登録しようとすると、問題が発生します。
P2P dbus インターフェイスへのプロキシ接続を作成してメソッドを呼び出すことはできますが、シグナル ハンドラをプロキシに接続しようとすると、シグナルが無効であることを示す次のエラーが表示されます (コードからの関連する出力サンプル):
(プロセス:6764): GLib-GObject-WARNING **: /tmp/buildd/glib2.0-2.42.1/./gobject/gsignal.c:2461: シグナル 'InvitationReceived' は、タイプのインスタンス '0x909ae0' に対して無効です「GDBusProxy」
「InvitationReceived」はwpa_supplicant dbus apiで定義されているシグナルの名前であるため、これは奇妙です。
コードサンプル:
シグナル名に追加する必要がある特別なパスはありますか? または、シグナル ハンドラを登録するために、メソッドの呼び出しに使用するプロキシとは別のプロキシを使用する必要がありますか?
dbus - メソッドが存在するにもかかわらず、オブジェクトパスに D-Bus メソッドが見つかりません
次のように、この com.example.appname.desktop ファイルを使用してアプリを実装します。
イントロスペクション XML は次のようになります。
しかし、メソッドを起動しようとすると、エラーが発生します:
「注釈名 = ..」XML タグ (イントロスペクション XML を参照) が、このメソッドが見つからない理由ですか? ブラウザー経由でブラウジングするitmm://192.168.1.1/query?version=1.0
と、コマンド ライン パラメーターを使用してアプリケーションが起動されますが、D-Bus サービス経由では起動されず、それが私の要件です。これをFirefoxまたはGoogle Chromeブラウザでデバッグする方法はありますか?