---
title: NIAlgorithmConvergenceStatus.Reason
framework: nearbyinteraction
role: symbol
role_heading: Structure
path: nearbyinteraction/nialgorithmconvergencestatus-2fnve/reason
---

# NIAlgorithmConvergenceStatus.Reason

The possible reasons for the Camera Assistance status.

## Declaration

```swift
struct Reason
```

## Overview

Overview When the app enables Camera Assistance by setting isCameraAssistanceEnabled to true, the framework provides the app with one or more reasons when the convergence status is NIAlgorithmConvergenceStatus.notConverged(_:). The reasons detail specific user actions the framework requires to improve the results of Camera Assistance. At runtime, the app needs to check the status in the convergence object provided by session(_:didUpdateAlgorithmConvergence:for:). If the status indicates that Camera Assistance requires user intervention, the app needs to coach the user, such as by presenting text that explains what to do for each circumstance that reasons can describe. note: The Objective-C version of this class is NIAlgorithmConvergenceStatusReason.

## Topics

### Comparing convergence status reasons

- [localizedDescription](nearbyinteraction/nialgorithmconvergencestatus-2fnve/reason/localizeddescription.md)

### Interpreting the convergence status reason

- [insufficientMovement](nearbyinteraction/nialgorithmconvergencestatus-2fnve/reason/insufficientmovement.md)
- [insufficientHorizontalSweep](nearbyinteraction/nialgorithmconvergencestatus-2fnve/reason/insufficienthorizontalsweep.md)
- [insufficientVerticalSweep](nearbyinteraction/nialgorithmconvergencestatus-2fnve/reason/insufficientverticalsweep.md)
- [insufficientLighting](nearbyinteraction/nialgorithmconvergencestatus-2fnve/reason/insufficientlighting.md)
- [insufficientSignalStrength](nearbyinteraction/nialgorithmconvergencestatus-2fnve/reason/insufficientsignalstrength.md)

## Relationships

### Conforms To

- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [RawRepresentable](swift/rawrepresentable.md)
