---
title: roIRRemote
slug: develop/es/roirremote
docTags: 
createdAt: 2025-03-11T07:07:18.732Z
---

Este objeto admite la recepción y transmisión de códigos arbitrarios de control remoto infrarrojo mediante el protocolo NEC. También puede usar este objeto para enviar comandos PHC (Pronto Hex Code). La mejor manera de determinar los valores de envío requeridos es capturar los códigos recibidos por *roIRRemote* cuando se presionan los botones del control remoto del dispositivo y luego enviar los mismos códigos. 

:::hint{type="danger"}
El objeto *roIRRemote* no puede usarse para recibir entrada a través del puerto IR de 3.5 mm en las series 4Kx42 y XDx32; use el objeto *roIRReceiver* en su lugar.
:::

Los códigos NEC se expresan en 24 bits:

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

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

## ifMessagePort

### SetPort(port As roMessagePort)

Publica mensajes de tipo *roIRRemotePress* en el puerto de mensajes adjunto.

## ifIRRemote

### Send(protocol as String, code as Dynamic) As Boolean

Envía el código especificado mediante el transmisor IR. El sistema actualmente admite dos protocolos de transmisión IR: "NEC" y "PHC" (Pronto Hex Code). Este método devuelve `Verdadero` si el código se transmitió correctamente, pero no hay forma de determinar desde BrightScript si el dispositivo controlado realmente lo recibió.

## Formato Pronto Hex 

Las capturas sin procesar de comandos Pronto Hex probablemente no funcionarán con el transmisor IR integrado, aunque deberían funcionar con transceptores IR de [Iguanaworks](http://iguanaworks.net/). Esto es el resultado de los períodos *apagado* finales, que son demasiado largos para codificarse correctamente. Cambiar todos los períodos *apagado* a ceros ("0000") solucionará este problema.

El siguiente ejemplo envía un comando "ON" a un televisor Panasonic usando una sola cadena de Pronto Hex Code. También puede proporcionar Pronto Hex Code como un *roArray* de valores hexadecimales, lo que genera menos trabajo para el motor de scripts.

```text
ir = CreateObject("roIRRemote")  

pronto_hex_Panasonic_on_str = " 0000 0071 0000 0032 0080 003F 0010 0010 0010 0030 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0030 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0030 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0010 0030 0010 0030 0010 0030 0010 0030 0010 0030 0010 0010 0010 0010 0010 0010 0010 0030 0010 0030 0010 0030 0010 0030 0010 0030 0010 0010 0010 0030 0010 0000"

ir.Send("PHC", pronto_hex_lg_on_str)
```

