I use Perl with the Net :: Dbus module.

You must make the ssid parameter of type dbus ByteArray.

In the python working example, it looks like this:

s_wifi = dbus.Dictionary({'ssid': dbus.ByteArray("homewifi"), 'security': '802-11-wireless-security'}) 

How to do it in Perl?

 my %s_wifi = ( 'ssid' => ???('homewifi'), 'security' => '802-11-wireless-security' ); 

PS: I tried it

 my $ssid = 'homewifi'; my @ssid = split('' , $ssid); my $tssid = dbus_array(\@ssid); my %s_wifi = ( 'ssid' => $tssid, 'security' => '802-11-wireless-security' ); 

nothing changes - writes as before org.freedesktop.NetworkManager.Settings.MissingProperty: ssid

full code put here

  • Not quite clear what it was about. But dbus_array is not it? - PinkTux
  • updated the message - iam
  • You do not need to transfer the link to the array to dbus_array, the link to the array is at best a 64-bit number (offset), or something like "ARRAY (0xdf6cb8)". Pass the string itself: dbus_array ($ ssid). I have nothing to check, but there is a strong suspicion that I am right. - drvtiny

0