From: Martin Xu <martin...@linux.intel.com> We have worked on Tizen P2P to support Mirrocast for a period of time, and do feel that ConnMan is the right place to implement WiFi Direct(P2P) support, so we want to start work on enabling WiFi Direct function in ConnMan.
We'd like to give out the RFC patch about the Dbus WiFi Direct API definition. After the API is decided we will work out the patches. Any comments are welcome. The API define references the BlueZ Adapter and Device API, WiFi Direct device like BlueZ Adapter represents the local WiFi Direct device. WiFi Direct peer like BlueZ Device represents the remote WiFi Direct peer. Dbus object Manager will be used. WiFi Direct device object /net/connman/p2p0(WiFi Direct device interface) WiFi Direct peer Objects scaned by the /net/connman/p2p0 is /net/connman/p2p0/peer_xx_xx_xx_xx_xx_xx --- doc/wifi-direct-api.txt | 150 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 150 insertions(+) create mode 100644 doc/wifi-direct-api.txt diff --git a/doc/wifi-direct-api.txt b/doc/wifi-direct-api.txt new file mode 100644 index 0000000..2105af4 --- /dev/null +++ b/doc/wifi-direct-api.txt @@ -0,0 +1,150 @@ +WiFiDirectDevice hierarchy +==================== + +Service net.connman +Interface net.connman.WiFiDirectDevice +Object path [variable prefix]/{p2p0, p2p1,...} + +Methods void Scan() + + Scan WiFi Direct groups and devices. + + void Disconnect() + + Disconnect group client from the WiFi Direct group. + Valid only when WiFi Direct device is group client. + + void DeactivateGroup() + + Disconnect all the group clients and terminate + the group session. + Valid only when WiFi Direct device is group owner. + + void CreateTempGroup() + + Create temporary group, and activate the group by + starting the group session. The WiFi Direct device + works as the group owner. + + void CreateGroup(string name) + + Create persistant group, and activate the group by + starting the group session. The WiFi Direct device + works as the group owner. + + void LoadGroup(string name) + Load the persistand group created before, and activeate + the group by starting the group session. + + void RemoveGroup(string name) + + Remove a persistant group. And the group can't be loaded + any more. + + array{string} GetGroupList() + Get the persistant group list. + + +Properties boolean Powered [readwrite] + + The power state of WiFi Direct device. + + string Name [readwrite] + + WiFi Direct device name + + uint16 Type [readwrite] + + WiFi Direct device type + + string WPSmode[readwrite] + + WPS configure mode (for example "pbc, pin" etc.) + + uint8 Intent[readwrite] + + Group owner intent value, valid value is [0-15] + + boolean Connected [readonly] + + Indicates whether the WiFi Direct device is connected. + + string GroupName[readonly] + + Group name the WiFi Direct device belongs to. + + string GroupState [readonly] + + Persistant + Temporary + Client + Deactive + + array{object} GroupMembers [readonly] + + Group memeber list + + string Passphrase[readonly] + + Passphrase to join the WiFi Direct group. + Only valid for group owner. + + string GroupInterface[readonly] + + the network interface of group. + for example "p2p-wlan0-1" + + string IPaddress [readonly] + + the IP address of group interface. + +WiFiDirectPeer hierarchy +================= + +Service net.connman +Interface net.connman.WiFiDirectPeer +Object path [variable prefix]/{p2p0,p2p1,...}/peer_xx_xx_xx_xx_xx_xx + +Methods void Connect(boolean persistant) + + If WiFi Direct device is in a group and WiFi Direct peer is + not in any group. WiFi Direct device will invite the + WiFi Direct peer to join the group. + + If WiFi Direct device is not in any group and WiFi Direct + peer is a group owner, WiFi Direct device will join the group + owned by WiFi Direct peer. + + WiFi Direct device and peer will negotiate to create + a group and connect, if both of them are not in any + group. + + void Disconnect() + + Disconnect the WiFi Direct peer from the group. + Only valid when the WiFi Direct Device is the group owner. + +Properties string Name [readonly] + + Name of the WiFi Direct peer. + + uint16 Type [readonly] + + The WiFi Direct peer type. + + string MAC [readonly] + + the MAC address of the WiFi Direct peer. + + string WPSmode [readonly] + + WPS configure mode (for example "pbc, pin" etc.) + + boolean Available [readonly] + + Indicates whether the WiFi Direct peer can join additional + groups. + + boolean IsGroupOwner [readonly] + + Indicates whether the WiFi Direct peer is group owner. -- 1.7.10.4 _______________________________________________ connman mailing list connman@connman.net https://lists.connman.net/mailman/listinfo/connman