iOS Steps for Integrating Felt Experience
Add Felt Library to Your Project
- Use CocoaPods or Carthage to add Felt Pod to your project.
- Add Felt Pod’s repository to your Podfile or Cartfile and run
pod installorcarthage update.
Initialize Felt Module
- Import Felt module in your application code.
- Call the init function of Felt Library, passing the JSON object as a parameter for initial context. This can be done in the
viewDidLoadmethod of the controller that will contain Felt Experience.
Create a New Tab for Remote Care
- Use
UITabBarControllerto manage your tabs. - Create a new UIViewController instance for Felt Library.
- Assign this controller to one of the UITabBarController’s view controllers.
Load Felt Experience When the Tab Is Selected
- Implement the
tabBarController(_:didSelect:)delegate method. - Check if the selected view controller is Felt Library’s controller, and if so, call the init function with the JSON object.
Native Permissions for Video Visits
Enable these permissions for video visit functionality: Microphone, Camera, Bluetooth, and Photo Library
- Open your Info.plist, right-click at the empty space, and select Add Row. Add rows for “Privacy - Camera Usage Description”, “Microphone”, “Bluetooth”, and “Photo Library”.
Testing and Validation
- Ensure that Felt Experience loads correctly within its tab.
- Verify that the initial context provided through the JSON object is correctly applied within Felt Library.
- Test navigation to and from Felt tab with authorized and unauthorized users, to ensure Felt Experience is managed correctly.
Troubleshooting and Support
- Consult Felt’s documentation for any specific integration issues.
- Check for any platform-specific considerations that might affect integration.
- If encountering issues, reach out to Felt’s support team with a detailed description of the problem, including error logs and screenshots.
Congratulations! By following these steps, you should be able to integrate the Felt experience into your native iOS application. Felt works seamlessly with your existing navigation system and provides your users a customized experience based on the initial context provided.