如何通过 dbus-send 发送方法调用?

     2023-04-14     173

关键词:

【中文标题】如何通过 dbus-send 发送方法调用?【英文标题】:How to send method call by dbus-send? 【发布时间】:2021-11-18 18:42:28 【问题描述】:

我正在分析 Chromium 操作系统。 我已经使用 dbus-monitor 捕获了一个 dbus 方法调用,并希望通过 dbus-send 重新显示它。 下面是我要重新出现的。

my-chromiumos ! # dbus-monitor --system "path=/org/chromium/SessionManager"
    method call time=1632639141.486152 sender=:1.325 -> destination=org.chromium.SessionManager serial=402 path=/org/chromium/SessionManager; interface=org.chromium.SessionManagerInterface; member=RestartJob
       file descriptor
             inode: 489350
             type: socket
             address family: unix
             name @
             peer @
       array [
          string "/opt/google/chrome/chrome"
          string "--gpu-sandbox-failures-fatal=no"
          string "--enable-logging"
          string "--use-cras"
          string "--use-gl=egl"
          string "--user-data-dir=/home/chronos"
          string "--vmodule=*night_light*=1,*/ash/wm/tablet_mode/*=1,wizard_controller=1,*/webui/chromeos/login/*=1,*/browser/chromeos/login/screens/*=1,enrollment_screen_handler=1,*/browser/chromeos/login/enrollment/*=1,*/ui/ozone/*=1,*/ui/display/manager/chromeos/*=1"
          string "--enable-wayland-server"
          string "--aura-legacy-power-button"
          string "--login-profile=user"
          string "--system-developer-mode"
          string "--bwsi"
          string "--homepage=chrome://newtab/"
          string "--incognito"
          string "--log-level=1"
          string "--login-user=$guest"
       ]
       uint32 0

【问题讨论】:

sry 我的操作系统中没有 busctl 或其他工具。 【参考方案1】:

请查看dbus-send 文档了解更多详情。

dbus-send --dest=org.chromium.SessionManager \
          --print-reply \
          --type=method_call \
          /org/chromium/SessionManager \
          org.chromium.SessionManagerInterface.RestartJob

看起来上面的方法调用没有带任何参数,但你应该用可用的 API 文档确认。

另外,我找到了这个Chrome OS D-Bus Best Practices 指南,也请看一下。

【讨论】:

如何通过ajax调用将多个对象发送到Web方法

】如何通过ajax调用将多个对象发送到Web方法【英文标题】:Howtosendmultipleobjectstowebmethodthroughajaxcall【发布时间】:2018-07-3116:19:50【问题描述】:我想在ajax中发送2个对象,在这两个对象中,一个对象包含记录列表任何人都可以帮... 查看详情

如何使用 dbus-send 调用 org.bluez.Adapter1.StartDiscovery?

】如何使用dbus-send调用org.bluez.Adapter1.StartDiscovery?【英文标题】:Howtousedbus-sendtocallorg.bluez.Adapter1.StartDiscovery?【发布时间】:2017-09-1821:52:50【问题描述】:我正在尝试使用dbus-send命令行工具与Bluez5.44进行交互。我似乎无法让它正... 查看详情

使用 dbus-send 设置/获取属性

】使用dbus-send设置/获取属性【英文标题】:set/getpropertyusingdbus-send【发布时间】:2018-07-1620:47:43【问题描述】:我制作了下面的示例xml,需要一些帮助来形成dbus-send命令来设置/获取属性“状态”。我知道如何调用方法,但无法... 查看详情

dbus-send与QDBusAbstractInterface的对应关系

】dbus-send与QDBusAbstractInterface的对应关系【英文标题】:Correspondencebetweendbus-sendandQDBusAbstractInterface【发布时间】:2017-12-1510:29:44【问题描述】:dbus-send的参数和QDBusAbstractInterface的构造函数和call*方法的参数是什么对应关系?互联... 查看详情

如何从命令行发出 dbus 信号

...布时间】:2011-04-1017:51:43【问题描述】:有没有办法使用dbus-send或其他方法从命令行发出dbus信号?【问题讨论】:结帐dbus-sendcommnand【参考方案1】:您可以使用实用程序dbus-send从命令行发送D-Bus请求。dbus-send--system--type=signal/c 查看详情

react中如何通过axios get方法发送参数?

】react中如何通过axiosget方法发送参数?【英文标题】:Howtosendparametersthroughaxiosgetmethodinreact?【发布时间】:2020-08-2422:38:24【问题描述】:我有一个axiosGET方法,我需要通过get请求传递参数。我正在像这样在客户端(React.js)中调... 查看详情

由于 QDBusRawType,dbus-send 失败

】由于QDBusRawType,dbus-send失败【英文标题】:dbus-sendfailsduetoQDBusRawType【发布时间】:2021-09-2901:21:07【问题描述】:服务的自省为我感兴趣的方法返回以下内容methodboolorg.my.connectionInterface.sendParam(QDBusRawType::(isparam))但是,当我尝试... 查看详情

使用 dbus-send 调用 GetAll

】使用dbus-send调用GetAll【英文标题】:Usingdbus-sendtocallGetAll【发布时间】:2014-09-0205:59:20【问题描述】:我试试运气:dbus-send--system--print-reply\\--dest=org.freedesktop.UDisks\\/org/freedesktop/UIDisks/devices/md0\\org.freedesktop.DBus.Propert 查看详情

dbus-send(代码片段)

行工具dbus-send ,是freedesktoop提供的dbus包配套的命令客户端工具,可用于发送dbus消息。GDbus GLib实现的dbus工具。较与 dbus-send,拥有更完整的功能。dbus有两种消息总线(messagebus):systembus 和 sessionbus,通过使用... 查看详情

使用 dbus-send 关闭 Linux

】使用dbus-send关闭Linux【英文标题】:LinuxShutdownwithdbus-send【发布时间】:2011-04-1110:21:32【问题描述】:我正在编写一个Java应用程序来远程关闭我的Linux机器。桌面应用程序等待发送给它的命令。我曾尝试使用“shutdown-h”,但这... 查看详情

如何通过ajax将xml文件数据发送到Webmethod?

】如何通过ajax将xml文件数据发送到Webmethod?【英文标题】:HowtosendxmlfiledataoverajaxtoWebmethod?【发布时间】:2020-10-1210:32:11【问题描述】:我在通过ajax调用向我的Web方法(C#Webforms)发送XML时遇到问题:我已经使用JSON测试了ajax调用... 查看详情

Web API HttpDelete - 如何调用删除 API 方法并在 [FromBody] 中发送模型

】WebAPIHttpDelete-如何调用删除API方法并在[FromBody]中发送模型【英文标题】:WebAPIHttpDelete-howtocalldeleteAPImethodandsendamodelin[FromBody]【发布时间】:2020-08-2705:20:08【问题描述】:我正在尝试通过在url中发送参数来调用HttpDeleteRESTfulWebAPI... 查看详情

dbus-send to QDBus 程序示例

】dbus-sendtoQDBus程序示例【英文标题】:dbus-sendtoQDBusprogramexample【发布时间】:2015-12-2518:24:03【问题描述】:我尝试通过dbus-send向这个小示例程序发送消息。但是没有收到:dbus-send--session--type=method_call/dbustester.test.slot_foo返回码为0... 查看详情

如何通过 ajax 调用将 html 表单数据发送到 node.js 服务器?

】如何通过ajax调用将html表单数据发送到node.js服务器?【英文标题】:howcanisendhtmlformdatatonode.jsserverbymakingajaxcall?【发布时间】:2016-01-0221:50:09【问题描述】:我想使用Ajax将表单数据发送到node.js服务器,我正在采用以下方法来发... 查看详情

从 shell dbus-send 在 C 中调用 dbus

】从shelldbus-send在C中调用dbus【英文标题】:dbuscallinCfromshelldbus-send【发布时间】:2016-07-1002:40:39【问题描述】:我有一个dbus-send调用:dbus-send--system--print-reply--dest=org.freedesktop.ModemManager1"/org/freedesktop/ModemManager1/Modem/0"org.f 查看详情

无法获得对 dbus-send 的任何回复

】无法获得对dbus-send的任何回复【英文标题】:Can\'tgetanyrepliestodbus-send【发布时间】:2013-08-2415:19:08【问题描述】:我正在尝试创建一些脚本来在嵌入式Archlinux平台上发现和配对蓝牙设备,但似乎无法获得对dbus-send命令的任何回... 查看详情

使用 dbus-send 的 DBus 自省对象树

】使用dbus-send的DBus自省对象树【英文标题】:DBusintrospectionobjecttreeusingdbus-send【发布时间】:2015-02-2821:07:25【问题描述】:是否可以使用dbus-send收集DBus连接名称的完整对象树?目前,我能够执行对所需目的地的多次调用,指定... 查看详情

如何从网页Javascript调用C#方法? [关闭]

】如何从网页Javascript调用C#方法?[关闭]【英文标题】:HowtocallC#methodfromwebpageJavascript?[closed]【发布时间】:2017-01-1723:30:10【问题描述】:我的问题是我需要从网页发送TCP消息。出于安全原因,这是不可能的,因此我在已经作为... 查看详情