This utility component simplifies user pairing and management through the IAM API on Nabto Edge embedded devices. Distributed as a Swift Package; it builds on top of the Nabto Edge Client SDK wrapper.
Supports iOS 13+.
File → Add Package Dependencies… and enter:
https://github.com/nabto/edge-iamutil-swift
Add the NabtoEdgeIamUtil library product to your target.
dependencies: [
.package(url: "https://github.com/nabto/edge-iamutil-swift", from: "2.0.0")
],
targets: [
.target(
name: "YourTarget",
dependencies: [
.product(name: "NabtoEdgeIamUtil", package: "edge-iamutil-swift")
]
)
]See the documentation to learn how to use the IAM Util to simplify pairing and user management.
Also see the general intro to Nabto Edge IAM.
git clone git@github.com:nabto/edge-iamutil-swift.git
cd edge-iamutil-swift
swift buildOr open Package.swift directly in Xcode:
open Package.swiftThe IamUtilTests_HostedTestDevices tests run against Nabto-hosted test devices and need
nothing but network access:
swift test --skip IamUtilTests_LocalTestDevicesThis is what CI runs (see .github/workflows/ci.yml).
The IamUtilTests_LocalTestDevices tests need the local test devices in test-devices/ to
be running first - they are found through mDNS discovery on the local network:
cd test-devices
./run-all.sh &
cd ..
swift testThese tests are excluded from CI as mDNS discovery does not work on the GitHub Actions macOS runners.