---
title: roStreamByteArrayEvent
slug: develop/rostreambytearrayevent
docTags: 
createdAt: 2026-03-03T17:33:07.348Z
---

Stream receive objects that implement the `ifStreamReceive` interface (like [roTCPStream](docId\:Klp1luePYZlmAq0HBXbpi)   or  [roSerialPort](docId:25Ega25ABzfTXgITvvmmS)) include a `SetByteArrayEventPort(message_port as Object)` method. This method ensures that `roStreamByteArrayEvent` events are posted to the message port when bytes are received.&#x20;

For some object types when bytes are expected to be received in chunks (for example, `roTCPStream`), this can be much more efficient since data no longer needs to be delivered to BrightScript a byte at a time, but since serial ports are comparatively slow it's possible that each event will still contain only a single character. 

## ifUserData

**GetByteArray() As Object**

Returns the received bytes that have been set via `SetByteArrayEventPort()`. It will return `Invalid` if no data has been set.

