﻿---
sidebar_position: 4
description: Read line  and other functions to work with TCP in the Open Integration Package, a free open-source integration library for 1C:Enterprise 8, OneScript and CLI
keywords: [1C, 1С, 1С:Enterprise, 1С:Enterprise 8.3, API, Integration, Services, Exchange, OneScript, CLI, TCP]
---

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# Read line 
 Reads data from the specified connection as a string



`Function ReadLine(Val Connection, Val Encoding = "UTF-8", Val Marker = "", Val Timeout = 5000) Export`

  | Parameter | CLI option | Type | Required | Description |
  |-|-|-|-|-|
  | Connection | - | Arbitrary | &#x2714; | Connection, see. CreateConnection |
  | Encoding | - | String | &#x2716; | Encoding of data conversion to string |
  | Marker | - | String, BinaryData | &#x2716; | End of message marker. Empty > without marker |
  | Timeout | - | Number | &#x2716; | Data waiting timeout (ms). 0 > no limit |

  
  Returns:  String - Received data as string

<br/>

:::tip
If the connection is closed, an error occurs, or EOF is detected, the read is terminated in either case

Parameters with Binary data type can also accept file paths on disk and URLs
:::

:::caution
**NOCLI:** this method is not available in CLI version
:::
<br/>



```bsl title="1C:Enterprise/OneScript code example"
    Address    = "45.79.112.203:4242";
    Connection = OPI_TCP.CreateConnection(Address);
    Data       = "Hello server!" + Chars.LF;

    OPI_TCP.SendLine(Connection, Data);

    // End of message marker to avoid waiting for the end of timeout
    Marker = Chars.LF;
    Result = OPI_TCP.ReadLine(Connection, , Marker);
    // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    OPI_TCP.CloseConnection(Connection);
```
 



```json title="Result"
"Hello server!\n"
```
