# Interface ILightBeaconService

Namespace
  adas_core.Application.Services.Interfaces

Assembly
  adas-core.Application.dll

    public interface ILightBeaconService

Extension Methods
  NumberUtils.IsNumber(object)
  NumberUtils.ToDouble(object)
  ObjectUtils.ToStr(object?)

## Methods

### GenerateColorAlert(PatientObservation)

Generates a color-coded alert based on the provided patient observation.

    void GenerateColorAlert(PatientObservation obs)

#### Parameters

`obs` PatientObservation

  The patient observation used to determine the alert level and color.

### GetColor(ObjectId)

Asynchronously retrieves the LightBeaconColor associated with the specified point of care identifier.

    Task<LightBeaconColor> GetColor(ObjectId pocId)

#### Parameters

`pocId` ObjectId

  The identifier of the point of care whose light beacon color is being requested.

#### Returns

Task<LightBeaconColor>

  A task that represents the asynchronous operation, containing the LightBeaconColor for the specified point of care.

### GetColor(PointOfCare)

Asynchronously retrieves the light beacon color associated with the specified point of care.

    Task<LightBeaconColor> GetColor(PointOfCare poc)

#### Parameters

`poc` PointOfCare

  The point of care for which to look up the light beacon color.

#### Returns

Task<LightBeaconColor>

  A task that represents the asynchronous operation. The task result contains the LightBeaconColor for the specified point of care.

### GetPaginatedBeacons(PaginationFilter)

Asynchronously retrieves a paginated collection of light beacons based on the specified pagination filter.

    Task<PaginationResponse<LightBeacon>> GetPaginatedBeacons(PaginationFilter request)

#### Parameters

`request` PaginationFilter

  The pagination filter containing the criteria used to page the beacon results.

#### Returns

Task<PaginationResponse<LightBeacon>>

  A task that represents the asynchronous operation, containing a pagination response with the requested light beacons.

### GetSearchByName(string)

Asynchronously searches for light beacons by name using the specified search text.

    Task<List<LightBeacon>> GetSearchByName(string textToSearch)

#### Parameters

`textToSearch` string

  The text used to search for matching light beacons by name.

#### Returns

Task<List<LightBeacon>>

  A task that represents the asynchronous operation. The task result contains a list of LightBeacon objects matching the search criteria.

### InsertOne(LightBeacon)

Inserts a single light beacon into the data store.

    Task<LightBeacon?> InsertOne(LightBeacon beacon)

#### Parameters

`beacon` LightBeacon

  The light beacon entity to insert.

#### Returns

Task<LightBeacon>

  A task that resolves to the inserted LightBeacon, or `null` when no result is produced.

### PowerOffLed(ObjectId)

Asynchronously powers off the LED associated with the specified point of connection identifier.

    Task PowerOffLed(ObjectId pocId)

#### Parameters

`pocId` ObjectId

  The identifier of the point of connection whose LED will be turned off.

#### Returns

Task

### PowerOffLed(PointOfCare)

Asynchronously powers off the LED indicator associated with the specified point of care.

    Task PowerOffLed(PointOfCare poc)

#### Parameters

`poc` PointOfCare

  The point of care whose LED indicator should be turned off.

#### Returns

Task

### SendBeaconBroadcast(ObjectId, LightBeaconColor)

Sends a broadcast signal to the beacon associated with the specified point of care identifier using the given beacon color.

    Task SendBeaconBroadcast(ObjectId poc, LightBeaconColor color)

#### Parameters

`poc` ObjectId

  The identifier of the point of care (or beacon) that will receive the broadcast.

`color` LightBeaconColor

  The color of the light beacon used for the broadcast.

#### Returns

Task

### SendBeaconBroadcast(PointOfCare, LightBeaconColor)

Sends a light beacon broadcast for the specified point of care, setting the beacon to display the specified color.

    Task SendBeaconBroadcast(PointOfCare poc, LightBeaconColor color)

#### Parameters

`poc` PointOfCare

  The point of care device or location whose beacon will be updated.

`color` LightBeaconColor

  The color to display on the light beacon.

#### Returns

Task

### SendColor(ObjectId, LightBeaconColor)

Sends the specified color command to the light beacon associated with the given point of control identifier.

    Task SendColor(ObjectId pocId, LightBeaconColor color)

#### Parameters

`pocId` ObjectId

  The identifier of the point of control that targets the light beacon.

`color` LightBeaconColor

  The color to apply to the light beacon.

#### Returns

Task

### SendColor(PointOfCare, LightBeaconColor)

Sends a color command to the light beacon of the specified point of care device, updating its visual indicator to reflect the requested state.

    Task SendColor(PointOfCare pocId, LightBeaconColor color)

#### Parameters

`pocId` PointOfCare

  The identifier of the point of care device whose light beacon will be updated.

`color` LightBeaconColor

  The color to apply to the light beacon.

#### Returns

Task

  A task that represents the asynchronous color send operation.

### UpdateOne(LightBeacon)

Updates a single light beacon record in the data store. Returns null when the beacon to update cannot be found.

    Task<LightBeacon?> UpdateOne(LightBeacon beacon)

#### Parameters

`beacon` LightBeacon

  The light beacon containing the updated values to persist.

#### Returns

Task<LightBeacon>

  A task that represents the asynchronous operation, containing the updated LightBeacon, or null if no matching beacon was found.