App integration
UIKit support chat SDK
Add Reception’s native iOS support chat SDK to a UIKit app. The SDK presents the same sheet in UIKit and SwiftUI apps: add the package to your app target, then configure at launch and open chat from your existing interface.
Requires iOS 17 or later and Xcode 26. Add the package with Swift Package Manager as described in Native iOS.
1. Configure at launch
Configure in your existing app delegate and keep its other startup work. Replace app_YOUR_APP_ID with your App ID from the dashboard.
import Reception
import UIKit
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions options: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
Reception.configure(appId: "app_YOUR_APP_ID")
Reception.shared.appearance.showsCloseButton = true
return true
}Keep SDK calls on the main actor. In an existing delegate, preserve the method’s current return value.
2. Open chat from your button
@objc private func openSupport() {
Reception.shared.openChat()
}The call presents the chat over the current screen. Users dismiss it with a swipe or the optional close button.
3. Observe unread messages (optional)
Add this small re-arming helper to your app:
import Observation
import Reception
@MainActor
func observeUnreadCount(_ handler: @escaping @MainActor @Sendable (Int) -> Void) {
withObservationTracking {
handler(Reception.shared.unreadCount)
} onChange: {
Task { @MainActor in
observeUnreadCount(handler)
}
}
}Start it once from your view controller and update your existing badge:
observeUnreadCount { [weak self] count in
self?.supportButton.setTitle(count > 0 ? "Support (\(count))" : "Support", for: .normal)
}For a host-owned sheet or navigation destination, present ReceptionChatView() yourself and own its dismissal. Do not also call openChat() for that action.