问题标签 [networkmanager]

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.

0 投票
2 回答
2084 浏览

linux - 检测当前连接是否使用 NetworkManager 计量

如何检测当前连接是否在具有 NetworkManager 的系统上被标记为计量?

这是来自 shell 脚本,但我可以通过 Python 轻松调用任何 C 函数。

0 投票
0 回答
248 浏览

linux - 在 AP 模式下扫描网络(网络管理器)

使用网络管理器,是否可以在 wifi 设备处于 AP 模式时扫描网络?我知道可以执行“iw dev wlan0 scan ap-force”并解析输出,但是有没有 D-Bus API 解决方案?

就上下文而言,我正在构建一个嵌入式设备(想想 Amazon Echo),它以 AP 模式与移动应用程序通信,以扫描并选择要连接的 SSID。因此,我需要该设备成为热点并同时进行扫描。

0 投票
2 回答
1953 浏览

java - 如何在没有互联网连接的情况下获取网络提供的日期和时间?

我想在我的 android 应用程序中使用网络提供的日期和时间,即使设备设置中禁用了网络日期和时间并且没有互联网连接。有没有可能或任何解决方案?


我提到了这个问题,但我没有得到完美的解决方案。

0 投票
2 回答
3421 浏览

debian - Ansible nmcli 模块 - 需求问题

我正在尝试在 Debian 9 目标上使用 Ansible nmcli 模块。我收到以下错误:

该模块需要 NetworkManager glib API

Ansible 文档说我需要NetworkManager-glib。在 Centos 和 RHEL 上,这个包很容易找到。但是在Debian上,我找不到。我已经安装了所有网络管理器数据包但没有成功......甚至是 libnm-glib4 包。

0 投票
2 回答
1112 浏览

snmp - linkDown SNMP 陷阱没有所需的 varbinds

有 2 种 linkDown 报警

linkDown (CISCO-GENERAL-TRAPS) 1.3.6.1.2.1.11.0.2 linkDown (IF-MIB) 1.3.6.1.6.3.1.1.5.3

来自 CISCO-GENERAL-TRAPS mib 的 linkDown 包含以下 varbinds 1.ifIndex 2.ifDescr 3.ifType 4.locIfReason

If-MIB mib 的 linkDown 包含以下 varbinds 1.ifIndex 2.ifAdminStatus 3.ifOperStatus

但是我从 ME1200 设备收到的 linkDown 具有以下 varbinds 1.IfIndex 2.IfDesc 3.IfType 4.lifTable ,由于 SNMP 陷阱不包含 locIfReason 和 IfAdminStatus 中的任何一个,我无法处理此 linkDown 陷阱。LifTable varbind 包含与管理员状态相关的信息,但我的问题是为什么 locIfReason 和 IfAdminStatus varbind 都不可用?. 如何从设备获取 IfAdminStatus varbind?

0 投票
0 回答
117 浏览

linux - 如何使用 QNetworkManagerEnginePlugin?

我想从 Qt 创建和删除接口。另外我想使用登录名和密码通过 SSID 连接到 Wi-Fi。以及在 Linux 上管理 Internet 连接所需的许多其他东西。

为此,我更喜欢坚持network-managerand libnm-dev。我发现,Qt在这里有插件qtbase/src/plugins/bearer/networkmanager/。似乎它实现了所需的功能。

我也可以在我的CMakeLists.txt中设置它:

在其源目录中,它仅包含两个头文件和两个相应的*.cpp文件(加上一些来自平台相关的文件../linux_common/*)。他们公开了我想使用的类QNetworkManager*QNetworkManagerEngine但是如何将它们包含到我的cmake项目中呢?

0 投票
1 回答
153 浏览

c++ - dbus-send与QDBusAbstractInterface的对应关系

dbus-sendutility的参数和构造函数的参数和call*方法的对应关系是QDBusAbstractInterface什么?

互联网上有很多关于如何使用实用程序通过DBus规则NetworkManager的示例(例如[1] ) ,但我无法推断如何将它们转换为Qt C++代码。dbus-send

0 投票
0 回答
664 浏览

qt - Qt QML 和 QDBus 互操作性

Qt 中有一个属性系统。一方面可以使用子类D-Bus公开属性,另一方面可以使用 Qt QML 公开属性。对于 D-Bus 服务接口的属性和信号,可以由元对象编译器自动完成。对于 QML 的信号、槽和属性,它也可以由 MOC 自动完成。QDBusAbstractInterfaceQObject

但是问题出现了:QML 需要以小写字母开头的属性和方法(信号或插槽)名称,而 Network Manager DBus API 导出对象的所有成员标识符都以大写字母开头(有时使用小写字母,比如org.freedesktop.NetworkManager.state()方法)。但我想QDBusAbstractInterface直接在 QML 代码中使用这样的派生对象。

有没有办法自动将方法和属性的名称转换为一种形式QtQml和另一种形式QDBus

如何分别为 NetworkManager 对象的所有属性发出信号的示例。

补充:根据问题,KDE NetworkManager Qt 并没有太大用处,因为在QML 中没有要使用QObject-s 导出的属性。

0 投票
2 回答
54 浏览

bash - 无法将输出放入变量

目前,将命令的输出放入变量时我遇到了极大的困难。我只是不知道我做错了什么。

编辑:当我运行这个文件时,我从 echo 中什么也得不到,所以我假设 on 变量的输出有问题。

0 投票
1 回答
330 浏览

qt - 在 QObject 派生类的构造函数中使用 deleteLater

示例代码在这里。

我在导出到QML的 C++ 对象中发现了一些看起来像指针类型属性的惯用语。由于外部事件的发生,这些属性的指针可以随时停止存在。我QObject::deleteLater为此目的使用插槽。<property>Changed信号(QML 需要)可以连接到QObject::destroyed信号。我注意到在发出这个信号的那一刻QPointer已经很清楚了。所以属性值将在正确的时刻在 QML 端有效。

查看QPointer标题我注意到它基于QWeakPointer/QSharedPointer并且似乎使用的行为(即“QPointer在调用连接到destroyed信号的第一个插槽之前变得清晰”)在某种程度上是硬设置的,尽管文档中没有指定。

在我的例子中,属性是指向QDBusAbstractInterface派生类 [ 1 ] 的指针,它对应于NetworkManager D-Bus服务接口。NetworkManager D-Bus服务可能会意外取消注册,并且上述所有类都变得不可用,并且QDBusAbstractInterface::isValid()每个类都变为false.

在创建它们之后的派生类的生命周期中,QDBusAbstractInterface我可以通过QDBusServiceWatcher观察者来管理这种情况。

但是在创建QDBusAbstractInterface派生类期间,我不能依赖服务可用性。即使我通过QDBusConnection::systemBus().interface()->isServiceRegistered(QStringLiteral(NM_DBUS_SERVICE))它立即检查服务的可用性,也可能在下一个运算符之前变得不可用(就 C++ 而言)。因此,构造的类在构造其基础之后可能立即不可用(即QDBusAbstractInterface::isValid()is )。falseQDBusAbstractInterface

我目前所做的是将deleteLater()[ 2 ] 调用到构造函数中,具体取决于isValid(). 在我看来,一旦到达事件循环,这最终会导致对象在构建后立即销毁。

是否允许在派生类的构造函数中调用deleteLater()槽?QObject