問題タブ [dbus]
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.
python - D-Bus と HAL の単体テスト?
ローカル D-Bus と何らかのやり取りを行う (HAL オブジェクトにアクセスする) メソッドをどのようにテストしますか?
テストの結果は、テストが実行されるシステムによって異なるため、メソッドに信頼できる入力を提供する方法がわかりません。
ちなみに、私はPythonで作業しています。
java - javaでのfreedesktop.org通知
DBUSを使用したfreedesktop.org通知システムがあります。見た目は簡単ですが、Javaでの使い方がわかりません。
誰かが簡単なメッセージを表示するためにいくつかのサンプルコードを指し示すことができますか?
ありがとうございました!:)
c++ - QDBusAbstractAdaptor と QDBusAbstractInterface の比較
Qt D-Bus バインディングを使用して一部のコードを D-Bus に公開する場合、いつ Qt インターフェイスを介して Qt アダプターを使用する必要がありますか? 同じ機能を提供しているように見えるため、それらがどのように異なるかを正確に理解するのに苦労しています。
python - DBus インターフェイスのプロパティ
利用可能な DBus インターフェイス プロパティのリストを取得するにはどうすればよいですか?
特定のタイプの USB デバイス接続を追跡するスクリプトを作成しています。追跡する接続をすべての USB 接続と区別する方法は、DBus が USB 接続で送信している信号のインターフェイスのプロパティを確認することです。関連するものを選択するために、そのようなすべてのプロパティのリストを取得したいと思います。
私のコードは次のとおりです。
python - /dev ノード パスに基づいて HAL オブジェクトを見つける
HAL とのインターフェイスに使用していますが、階層python-dbus
内のパスに基づいてデバイスの UDI を見つける必要があります。/dev
したがって、 のようなパスが与えられた/dev/sdb
場合、 のような値を取得したいと思います/org/freedesktop/Hal/devices/usb_device_10
。
c++ - 8バイト配列から可変ビットサイズのデータコンテナに情報をどのように渡しますか?
メッセージのさまざまなチャンクがさまざまなタイプ(int、boolなど)のデータにマップされ、ビットサイズが異なる(int値はメッセージの12ビットなど)8バイトのメッセージがあります。データムが関係するビットのみを渡したいのですが、もっと良い方法があるかどうかはわかりません。私の現在の考えは、ベクトルバックエンドを使用してビット配列型を作成し、指定された型に含まれる値を取得するためのテンプレート化されたアクセサーを用意することです。これを入力しているときに、考えられるすべてのタイプの大きな結合を各データに渡すことができると思い始めています。
編集:
メッセージにはさまざまな種類のデータが含まれています。たとえば、1つのメッセージには8ビットのintと5つの1ビットのboolが含まれ、別のメッセージには16ビットのTimestamped(自分のクラス)と8ビットのintが含まれます。
python - Pythonスレッドの質問-親に制御を返す
基本的に、DeviceAdded DBusイベント(誰かがUSBドライブを接続したときなど)をリッスンするPythonプログラムがあり、イベントが発生したときに、新しく接続されたデバイスでメタデータを収集するスレッドを作成したいと思います。ただし、これを非同期で実行したいと思います。つまり、これらのイベントをリッスンし続けることができる親に制御を戻しながら、1つのスレッドがデバイスでメタデータを収集し続けることを許可します。現時点では、コレクションが終了するまでスレッドがブロックされます。これが私のコードのサンプルです:
どんな考えでも大歓迎です:)スペースを節約するためにインポートリストを除外しました
python - pidginでdbusを使用する方法を理解しようとしています
私の問題は、それらをインターフェースする方法がわからないことです。dbus が pidgin と連携するために、特定の方法で pidgin をインストールする必要がありますか? そうでない場合、dbusがそれを利用するためにpidgin guiを実行する必要がありますか?
python - SimpleXMLRPC と DBusGMainLoop が同時に動作する場合の問題点
Python では、SflPhone(dbus サービス) と外部アプリの間の呼び出しイベントを維持するサービスを作成しようとしています。
コメントアウトすると、thread.start_new_thread(start_server(s,))
すべてうまくいきます。この2つを連携させる方法がわかりません。助けることができますか?感謝。
c++ - DBusサービスがQtで利用可能になるのを待っています
QDbusAbstractInterface上に(qdbusxml2cppを介して)構築されたQt DBusプロキシを使用して、開始時に使用できないようにインターフェイスするサービス/オブジェクトを処理するための最良の方法は何ですか?注:私は単にそれを知ることに興味はありません(BlahService.isValid()を使用してそれを見つけることができます)。それが有効かどうかを知り、いつ有効になるかを知りたいので、状態を変更して(そしてその状態変更を信号でブロードキャストして)、その状態変更で他のことを行うことができます。逆に、同様の理由で無効になった時期を知りたいのですが。
サービスの状態を追跡せずに:
おそらく、DBus接続オブジェクトでNameOwnerChangedを監視する必要があります(QTのdbusコードがこれを行わない限り)。次に、その信号変更状態を取得したら、必要に応じて、オブジェクトから信号を接続または切断します。
私が見つけたすべての例は、問題を無視するか、サーバーオブジェクトが存在しない場合は単に終了し、それがなくなることを処理しません。Car / Controller Qtの例では、少なくともサーバーが停止したかどうかに気づき、使用中にisValid()がfalseになると「Disconnected」と出力しますが、isValid()をポーリングしています。
追加した:
QtDbusAbtractInterfaceは、サーバーの所有権の変更(NameOwnerChanged)を登録し、変更が発生するとisValid()を更新することに注意してください。したがって、そのserverOwnerChangedシグナルに直接接続して、所有権の変更を確認し、それを再試行の指標として使用できると思います。ただし、シグナルを受け取る前または後に更新される可能性があるため、isValidを信頼することはできません。
または、(醜い)タイマーを設定してisValid()をポーリングすることもできます。