The recommended way to use PWEngagement is via CocoaPods.
Podfile: pod 'PWEngagement'
Add the following key/values to your application's Info.plist file:
Required background modes:
App registers for location updates(This value allows the app to keep users informed of their location, even while it is running in the background.)
App downloads content in response to push notifications(This value allows the app to regularly download remote notifications.)
MaaSAppId : The application ID matching the server choice.
Key: NSBluetoothAlwaysUsageDescription. App needs access to bluetooth for hardware measurements and to receive location based messages from bluetooth beacons
Wifi Capability - The Mobile Engagement SDK has a dependency on the Phunware Core SDK. If you would like Core to be able to return information about the Wifi network the device is attached to via the "currentWifi" public method in the Core SDK's CoreDevice class, then add the "networking.wifi-info" key to your application by going to the capabilities section in the app's project file. Turn on the "Access Wifi Information" button. Then make sure the provisioning profile used to sign the application has the same capability.
PWEngagement API documentation is included in the Documents folder in the repository as both HTML and as a .docset. You can also find the latest documentation here: Introduction to Mobile Engagement SDK Reference (iOS)