---
title: BSIRReceiver
slug: develop/es/bsirreceiver
docTags: 
createdAt: 2025-03-11T07:07:17.199Z
---

Esta clase recibe eventos IR. Para obtener más información, consulte la entrada *roIRReceiver* del Manual de referencia de objetos.

## Creación de objetos

Un objeto *BSIRReceiver* debe especificar la interfaz de hardware que recibirá eventos IR, así como las codificaciones que se buscarán:

`BSIRReceiver(DOMString interface, DOMString encoding)`

Las interfaces de hardware válidas incluyen las siguientes:

- "GPIO": Pin 1 del conector GPIO
- "IR-in": El conector de entrada/salida IR de 3,5 mm
- "Iguana": El transceptor IR [Iguanaworks](http://iguanaworks.net/). Esta fuente puede admitir simultáneamente las codificaciones NEC y RC5.
- “tvcontroller” : Este controlador IR virtual solo está disponible en productos integrados de BrightSign. Lee los mensajes IR desde UART y controla el objeto roIRReceiver como otros receptores IR. Un ejemplo de creación sería:

```text
BSIRReceiver(tvcontroller)
```

Las codificaciones válidas incluyen las siguientes (se pueden especificar múltiples codificaciones en la cadena usando un ";"):

- "NEC"
- "RC5" (solo compatible con el dispositivo Iguanaworks)

Los códigos NEC se expresan en 24 bits:

- Bits 0-7: Código de botón
- Bits 8-23: Código del fabricante

:::hint{type="info"}
Si el código del fabricante es cero, se considera que el código está destinado al control remoto Roku SoundBridge.
:::

## Métodos

- `Close()` void : Cierra la instancia, evitando que siga consumiendo recursos. Si no se llama a este método, la recolección de basura determina cuándo se destruirá la instancia.

## Eventos

Estos eventos están disponibles en el objeto *BSIRReceiver*. Cada evento puede recibir un evento IRReceiverEvent.

- `onremotedown`
- `onremoterepeat`
- `onremoteup` (solo compatible con el dispositivo Iguanaworks)

### IRReceiverEvent – Atributos

- `irType` DOMString readonly
- `código` unsigned long readonly

## Ejemplo

El siguiente ejemplo de JavaScript muestra mensajes en el registro cuando se reciben códigos remotos:

```javascript
function myFunction()
{
    var ir_receiver = new BSIRReceiver("IR-in","NEC");

    ir_receiver.onremotedown = function(e){
        console.log('############ onremotedown: ' + e.irType + " - " + e.code);
    }

    ir_receiver.onremoteup = function(e){
        console.log('############ onremoteup: ' + e.irType + " - " + e.code);
    }
}
```

