Does Qt support Wi-Fi Direct / P2P connections on mobile platforms? - qt

I would like to write a cross-platform mobile app based on Qt which is able to discover other devices reachable via Wi-Fi running the same app. If such devices are found they should be able to communicate with each other in an ad-hoc mannor without requiring any user (inter-)actions.
So my question is:
Does Qt support Wi-Fi Direct communication out of the box in general (i.e. is there any API for these kind of p2p connections), and if so, is this feature also available on mobile platforms supported by Qt? If there is no out of the box solution, can it be implemented with the existing Qt Wi-Fi networking API?

Related

How to manage bluetooth beacons through web?

What I want to do is have a complete control on beacon remotely through web/mobile app (RestApi). I already gone through following sites,
1)https://nectarkast.com/index.html
2)https://kontakt.io/products-and-solutions/beacon-software/
How do these site working? Are they using some custom beacons that has Wifi or network connecting functionality, any help would be really appreciable.
You need (a) a beacon with internet access or (b) a base station near those beacons with internet access and the ability to connect to them via Bluetooth to configure them.
It is also possible to build beacons using Lora, SigFox, or other IoT radio technologies that effectively gives a very low power internet connection that uses little battery.

Sample code for Xamarin Cross Platform bluetooth connection

I have traied meny examples to connect Zebra IMZ320 Blutooth using Iphone on Xamarin Cross-Platform
I followed CoreBluetooth Namespace
enter link description here
and also using Plugin.BLE
but I couldnt connect my device eny one has success experience in connect Bluetooth printer using Xamarin cross platform ios
CoreBluetooth.framework is for Bluetooth Low-Energy:
Communicate with Bluetooth 4.0 low-energy devices.
The Core Bluetooth framework provides the classes needed for your apps
to communicate with devices that are equipped with Bluetooth low
energy wireless technology.
According to the specifications of the Zebra IMZ320, the communication mode are:
Secure Bluetooth 2.0, 802.11a/b/g/n (optional) or USB (client)
connectivity; Wi-FiĀ®-certified connectivity
That is not Bluetooth Low-Energy (which has been introduced in Bluetooth 4.0). You won't be able to find the printer with a Bluetooth Low-Energy scan, because the behavior, logic and implementation (protocols, norms, GATT, Peripheral/Service/Characteristic) are totally different.
Also, the description page of the Zebra IMZ320 gives a link (FAQ - Creating & Registering An IOS App) to how develop apps for it.
You need to use ExternalAccessory.framework for it.
If your app communicates with a Zebra product via Bluetooth using the
External Accessory Framework, and you plan to distribute the app via
the App Store or Volume Purchase Program Store, then you must register
the app with Zebra.
This page is general (and not specific to that printer). But according to the specs, it's not Bluetooth Low-Energy compliant (while others products might be, that's why there is a paragraph talking about CoreBluetooth in it).
That's normal behavior (using ExternalAccessory vs CoreBluetooth framework), because each one of them has a specific meaning and use.
Conclusion:
Use ExternalAccessory.framework, it is also available on Xamarin.

Mobile to controller secure bluetooth ble communication

We seek your help in implementing bluetooth on our smart home controller. Our current scenarios is described below:
We want secure communication between our embedded linux controller(our smart home hub) and user's mobile phones running android/iOS.Our system is in home automation.
The hub in turn communicates with home devices that support a different protocol - we need to make communication between hub and mobile devices using bluetooth.
Currently there is not direct communication between our hub and mobile phone except through the internet.
We will use Bluetooth 4.x, not 5 for hardware support on the controller.
We are using nodejs on our controller and standard bluethooth OS libraries on android/iOS. We are open to suggestions.
Our main concern is to establish secure communication between phone and the hub. With this regard we are looking for implementation guidance on pairing and communicating securely. We have been able to establish unsecure communication - exposing characteristics and services on the hub. Our understanding of the bluetooth protocol is limited and we have only used libraries available for users.
Please provide specific pointers as to what we should do and what is possible.

API to access GSM signal on computer

Hope this is the right place to ask - assuming so as it is related to programming.
I am looking for some hardware (say a dongle) that would open up an API for my computer to a SIM card. Does that exist anywhere?
The idea would be that I can then use my existing SIM card on its existing network/contract and with a bit of code, send/receive calls and texts. I figured that if a phone can be programmed to do it why can't a computer? I just need the hardware.
Any suggestions if this kind of thing is possible? Even by maybe integrating a phone?
You can use AT commands with any modem or phone, whose driver exposes a modem port when you connect it to a computer. Plug in the phone or modem, and go to Windows Device Manager, and look under "Modems" and see what you've got. From "properties" of the Modem, you can see which COM port it is on.
AT commands are an older method of communicating with a modem. There is a standard set of commands for GSM/GPRS/3G/4G devices available from 3GPP.org, here. Manufacturers add their own proprietary commands for more obscure functions. Many but not all of these are in the public domain.
Some newer plug-in modems may appear as a network adapter (you can see this in Windows), due to their drivers. In this case, you can use the following interfaces:
on Vista: NDIS, proprietary interfaces
on Windows 7 and 8.x Desktop apps: Windows Mobile Broadband API
on Windows 8.x, in the Metro/app area: Windows.Networking and MobileBroadband APIs.
on Windows 10, UWP, there are UWP APIs here. But they do not give as much functionality as the Desktop APIs.
On Windows 8.1 and Windows 10, if the appropriate drives are present it is possible to use the new MBIM interface via the desktop Mobile Broadband DeviceServices API. Mobile Broadband Interface Model spec available here.
On Linux, use AT commands via the serial port.
I'm a bit puzzled by your requirement to make (voice?) calls via a phone connected to a computer. Do you mean Skype? In this case, of course, you wouldn't need any interface for making calls, you would just open an IP connection over a data session - which can be done via any of the above interfaces.
(added this comment as an answer, as there was more information)
I use this GSM device: http://www.mikroe.com/click/gsm2/ connected to a basic UART like: https://www.sparkfun.com/products/718?gclid=CIj1xOzbur4CFUVbfgodCpQASQ
Then use AT COMMANDS.
I also use a piece of software called QNavigator to inspect the modem/gsm: http://www.soselectronic.com/?str=1329

listening to network interfaces on windows phone 8

I am trying to develop a customized vpn app on windows phone 8. Apparently there isn't native support yet, so i m looking for workarounds. I can only see some support for sockets. Is there a way to achieve vpn functionality using lower level network programming on wp8?

Resources