Socket.ReadAll
--------------

Reads bytes from socket and returns them as text.

| Component | Version | macOS | Windows | Linux | Server | iOS SDK |
|---|---|---|---|---|---|---|
| [Socket](component_Socket.md) | [4.3](newinversion43.md) | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes |

MBS( "Socket.ReadAll"; SocketID { ; Encoding } ) 

**MBS**( **"Socket.ReadAll";** /\* Reads bytes from socket and returns them as text. \*/  
**$SocketID**; /\* The socket ID received by [Socket.Connect](SocketConnect.md) function.e.g. $sock \*/   
**$Encoding**) /\* Optional; The text encoding for result.   
Default is native. This function can also handle UTF-16 as well as UTF-16LE and UTF-16BE for little/big endian byte order.e.g. UTF8 \*/ 

### Parameters

| Parameter | Description | Example | Flags |
|---|---|---|---|
| SocketID | The socket ID received by [Socket.Connect](SocketConnect.md) function. | $sock |  |
| Encoding | The text encoding for result.    Default is native. This function can also handle UTF-16 as well as UTF-16LE and UTF-16BE for little/big endian byte order.   Possible encoding names: ANSI, ISO-8859-1, Latin1, Mac, Native, UTF-8, DOS, Hex, Base64 or Windows. More listed in the [FAQ](https://www.monkeybreadsoftware.com/filemaker/faq.shtml). | UTF8 | Optional |

### Result

Returns text or error.

### Description

Reads bytes from socket and returns them as text.  
This function will look how much is in read buffer and query all bytes inside.  
May not work for SSL sockets.  
  
The buffer size of the socket is managed by the OS and can be several megabytes big if needed. To look into buffer without removing text, please use [Socket.PeekAll](SocketPeekAll.md) function instead.  
### Examples

Read all bytes and decode them from Windows text encoding into FileMaker:

 $value = MBS ( "Socket.ReadAll"; $sock ; "windows" )  
### See also

- [Socket.CheckAll](SocketCheckAll.md)
- [Socket.Connect](SocketConnect.md)
- [Socket.Peek](SocketPeek.md)
- [Socket.PeekAll](SocketPeekAll.md)
- [Socket.PeekAllHex](SocketPeekAllHex.md)
- [Socket.Read](SocketRead.md)
- [Socket.ReadAllHex](SocketReadAllHex.md)
- [Socket.ReadHex](SocketReadHex.md)
- [Socket.ReadLine](SocketReadLine.md)
- [Socket.ReadMLLP](SocketReadMLLP.md)

### Blog Entries

- [Socket changes for MBS FileMaker Plugin](https://www.mbsplugins.de/archive/2020-08-31/Socket_changes_for_MBS_FileMak/monkeybreadsoftware_blog_filemaker)
- [MBS Filemaker Plugin, version 4.3pr11](https://www.mbsplugins.de/archive/2014-09-14/MBS_Filemaker_Plugin_version_4/monkeybreadsoftware_blog_filemaker)

This function is free to use.

Created 11st September 2014 , last changed 9th November 2021

  
[Socket.Read](SocketRead.md) - [Socket.ReadAllHex](SocketReadAllHex.md)

[HTML Version](SocketReadAll.shtml)