Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update docs/api/session.md Co-authored-by: Charles Kerr <charles@charleskerr.com> update docs add docs
- Loading branch information
Showing
36 changed files
with
2,037 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
# HIDDevice Object | ||
|
||
* `deviceId` String - Unique identifier for the device. | ||
* `name` String - Name of the device. | ||
* `vendorId` Integer - The USB vendor ID. | ||
* `productId` Integer - The USB product ID. | ||
* `serialNumber` String (optional) - The USB device serial number. | ||
* `guid` String (optional) - Unique identifier for the HID interface. A device may have multiple HID interfaces. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<meta charset="UTF-8"> | ||
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'"> | ||
<title>Web Bluetooth API</title> | ||
</head> | ||
<body> | ||
<h1>Web Bluetooth API</h1> | ||
|
||
<button id="clickme">Test Bluetooth</button> | ||
|
||
<p>Currently selected bluetooth device: <strong id="device-name""></strong></p> | ||
|
||
<script src="./renderer.js"></script> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
const {app, BrowserWindow} = require('electron') | ||
const path = require('path') | ||
|
||
function createWindow () { | ||
const mainWindow = new BrowserWindow({ | ||
width: 800, | ||
height: 600 | ||
}) | ||
|
||
mainWindow.webContents.on('select-bluetooth-device', (event, deviceList, callback) => { | ||
event.preventDefault() | ||
if (deviceList && deviceList.length > 0) { | ||
callback(deviceList[0].deviceId) | ||
} | ||
}) | ||
|
||
mainWindow.loadFile('index.html') | ||
} | ||
|
||
app.whenReady().then(() => { | ||
createWindow() | ||
|
||
app.on('activate', function () { | ||
if (BrowserWindow.getAllWindows().length === 0) createWindow() | ||
}) | ||
}) | ||
|
||
app.on('window-all-closed', function () { | ||
if (process.platform !== 'darwin') app.quit() | ||
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
async function testIt() { | ||
const device = await navigator.bluetooth.requestDevice({ | ||
acceptAllDevices: true | ||
}) | ||
document.getElementById('device-name').innerHTML = device.name || `ID: ${device.id}` | ||
} | ||
|
||
document.getElementById('clickme').addEventListener('click',testIt) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<meta charset="UTF-8"> | ||
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'"> | ||
<title>WebHID API</title> | ||
</head> | ||
<body> | ||
<h1>WebHID API</h1> | ||
|
||
<button id="clickme">Test WebHID</button> | ||
|
||
<h3>HID devices automatically granted access via <i>setDevicePermissionHandler</i></h3> | ||
<div id="granted-devices"></div> | ||
|
||
<h3>HID devices automatically granted access via <i>select-hid-device</i></h3> | ||
<div id="granted-devices2"></div> | ||
|
||
<script src="./renderer.js"></script> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
const {app, BrowserWindow} = require('electron') | ||
const path = require('path') | ||
|
||
function createWindow () { | ||
const mainWindow = new BrowserWindow({ | ||
width: 800, | ||
height: 600 | ||
}) | ||
|
||
mainWindow.webContents.session.on('select-hid-device', (event, details, callback) => { | ||
event.preventDefault() | ||
if (details.deviceList && details.deviceList.length > 0) { | ||
callback(details.deviceList[0].deviceId) | ||
} | ||
}) | ||
|
||
mainWindow.webContents.session.on('hid-device-added', (event, device) => { | ||
console.log('hid-device-added FIRED WITH', device) | ||
}) | ||
|
||
mainWindow.webContents.session.on('hid-device-removed', (event, device) => { | ||
console.log('hid-device-removed FIRED WITH', device) | ||
}) | ||
|
||
mainWindow.webContents.session.setPermissionCheckHandler((webContents, permission, requestingOrigin, details) => { | ||
if (permission === 'hid' && details.securityOrigin === 'file:///') { | ||
return true | ||
} | ||
}) | ||
|
||
mainWindow.webContents.session.setDevicePermissionHandler((details) => { | ||
if (details.deviceType === 'hid' && details.origin === 'file://') { | ||
return true | ||
} | ||
}) | ||
|
||
mainWindow.loadFile('index.html') | ||
} | ||
|
||
app.whenReady().then(() => { | ||
createWindow() | ||
|
||
app.on('activate', function () { | ||
if (BrowserWindow.getAllWindows().length === 0) createWindow() | ||
}) | ||
}) | ||
|
||
app.on('window-all-closed', function () { | ||
if (process.platform !== 'darwin') app.quit() | ||
}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
async function testIt() { | ||
const grantedDevices = await navigator.hid.getDevices() | ||
let grantedDeviceList = '' | ||
grantedDevices.forEach(device => { | ||
grantedDeviceList += `<hr>${device.productName}</hr>` | ||
}) | ||
document.getElementById('granted-devices').innerHTML = grantedDeviceList | ||
const grantedDevices2 = await navigator.hid.requestDevice({ | ||
filters: [] | ||
}) | ||
|
||
grantedDeviceList = '' | ||
grantedDevices2.forEach(device => { | ||
grantedDeviceList += `<hr>${device.productName}</hr>` | ||
}) | ||
document.getElementById('granted-devices2').innerHTML = grantedDeviceList | ||
} | ||
|
||
document.getElementById('clickme').addEventListener('click',testIt) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<meta charset="UTF-8"> | ||
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'"> | ||
<title>Web Serial API</title> | ||
<body> | ||
<h1>Web Serial API</h1> | ||
|
||
<button id="clickme">Test Web Serial API</button> | ||
|
||
<p>Matching Arduino Uno device: <strong id="device-name""></strong></p> | ||
|
||
<script src="./renderer.js"></script> | ||
</body> | ||
</html> |
Oops, something went wrong.