Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 节点dbus本机-使用connMan连接到WiFi服务时传递密码短语_Javascript_Node.js_Wifi_Dbus_Connman - Fatal编程技术网

Javascript 节点dbus本机-使用connMan连接到WiFi服务时传递密码短语

Javascript 节点dbus本机-使用connMan连接到WiFi服务时传递密码短语,javascript,node.js,wifi,dbus,connman,Javascript,Node.js,Wifi,Dbus,Connman,您好,在过去的几天里,我一直遇到这个问题,当时我正在尝试使用dbus连接到受保护的WiFi网络。到目前为止,我开发的代码是: 注册代理 输出 扫描无线网络 输出 连接到WiFi服务 输出 输出fropm connMan日志 connmand[1899]:src/agent.c:agent\u receive\u message agent 0x55640fe8 请求0x55644378 connmand[1899]:src/service.c:request\u input\u cb Reque

您好,在过去的几天里,我一直遇到这个问题,当时我正在尝试使用dbus连接到受保护的WiFi网络。到目前为止,我开发的代码是:

注册代理

输出

扫描无线网络

输出

连接到WiFi服务

输出

输出fropm connMan日志

connmand[1899]:src/agent.c:agent\u receive\u message agent 0x55640fe8 请求0x55644378

connmand[1899]:src/service.c:request\u input\u cb RequestInput return, 0x55649ad0

connmand[1899]:src/service.c:request\u input\u cberror:org.freedesktop.DBus.Error.UnknownService

connmand[1899]:src/service.c:\u connman\u service\u return\u error service 0x55649ad0错误22用户数据为零

connmand[1899]:src/service.c:\u connman\u service\u set\u hidden\u数据 服务0x55649ad0挂起为零

connmand[1899]:src/service.c:service\u save service 0x55649ad0 new 1

connmand[1899]:src/connection.c:update\u order

connmand[1899]:src/service.c:\u connman\u service\u get\u order service 0x55640a08名称有线订单1拆分0

connmand[1899]:src/connection.c:find\u default\u gateway default 0x5563b250订单1

connmand[1899]:src/connection.c:\u connman\u connection\u update\u gateway 默认值0x5563b250

connmand[1899]:src/service.c:connman\u service\u unref\u debug 0x55649ad0 参考文献1由src/service.c:6945:agent\u context\u unref提供

因此,基本上,如果有人能告诉我如何传回包含WiFi网络密码短语的用户数据,我将不胜感激

如有任何帮助,将不胜感激?康曼版本1.20


谢谢

我无法让dbus本机工作

我的解决方案是在/lib/connman/中创建一个wifi.config文件,其中包含每个服务的密码短语:

wifi.config示例

然后简单地使用dbus native连接到WiFi服务:

连接


看起来您需要先注册代理:还要仔细检查路径是否拼写正确-connmand[1899]:src/service.c:request\u input\u cberror:org.freedesktop.DBus.Error.UnknownService可疑检查它使用的是DBus而不是DBus native,但无论如何这应该是一个好的开始哦,您已经在注册代理了。好的,问题是:代理是您处理connman请求的服务。您需要在您的连接名+代理路径上创建dbus服务,这是/在您的情况下,您好,Andrey,谢谢您提供的有用意见您能详细介绍一下解决方案吗?也许可以提供一个代码示例,以便我完全理解?
var dbus = require('dbus-native');
var bus = dbus.systemBus();
bus.invoke({
        destination: 'net.connman',
        path: '/',
        'interface': 'net.connman.Manager',
        member: 'RegisterAgent',
        type: dbus.messageType.methodCall,
        signature: 'o',
        body: [
                '/test/agent'
        ]
}, function(error, response) {
        if (error) {
                console.error('Error', error);
                //process.exit(1);
        } else {
                console.info('Success', response);
               // process.exit(0);
        }
});
> Success
var dbus = require('dbus-native');
var bus = dbus.systemBus();
bus.invoke({
        destination: 'net.connman',
        path: '/net/connman/technology/wifi',
        'interface': 'net.connman.Technology',
        member: 'Scan',
        type: dbus.messageType.methodCall,
}, function(error, response) {
        if (error) {
                console.error('Error', error);
                //process.exit(1);
        } else {
                console.info('Success', response);
                //process.exit(0);
        }
});
> Success
var dbus = require('dbus-native');
var bus = dbus.systemBus();
bus.invoke({
        destination: 'net.connman',
        path: '/net/connman/service/wifi_00e04c81923e_4469676957494649_managed_psk',
        'interface': 'net.connman.Service',
        member: 'Connect',
        type: dbus.messageType.methodCall,
}, function(error, response) {
        if (error) {
                console.error('Error', error);
                //process.exit(1);
        } else {
                console.info('Success', response);
                //process.exit(0);
        }
});
> Error ['Invalid Arguments']
[service_wifi_00e04c819295_4469679972434649_managed_psk] 
Type = wifi
Security = wpa2 
Name = [service_] 
Type = wifi 
Security = wpa2 
Name = WiFiAP
Passphrase = 12345
var dbus = require('dbus-native');
var bus = dbus.systemBus();
bus.invoke({
        destination: 'net.connman',
        path: '/net/connman/service/wifi_48022aca514f_4469676957494649_managed_psk',
        'interface': 'net.connman.Service',
        member: 'Connect',
        type: dbus.messageType.methodCall,
}, function(error, response) {
        if (error) {
                console.error('Error', error);
                //process.exit(1);
        } else {
                console.info('Success', response);
                //process.exit(0);
        }
});