AutoIt
AutoIt
TCP Socket Send Byte and Receive Byte
Demonstrates the Chilkat Socket ReceiveByte and SendByte method.Chilkat AutoIt Downloads
Local $bSuccess = False
; This example requires the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
$oSock = ObjCreate("Chilkat.Socket")
; --------------------------------------------------------------------
; This example uses the public TCP echo service at https://tcpbin.com/
; --------------------------------------------------------------------
Local $bUseTls = False
Local $iPort = 4242
Local $iMaxWaitMs = 5000
$bSuccess = $oSock.Connect("tcpbin.com",$iPort,$bUseTls,$iMaxWaitMs)
If ($bSuccess = False) Then
ConsoleWrite($oSock.LastErrorText & @CRLF)
Exit
EndIf
; Wait a max of 2 seconds for a response..
$oSock.MaxReadIdleMs = 2000
; Send a byte.
$oSock.SendByte(96)
; The tcpbin.com echo server only echoes after receiving an LF (linefeed char)
$oSock.SendByte(10)
; The echo server will echo back whatever is sent to it.
; We should be able to read the same byte back..
; After successfully reading, the byte value is available in the ReceivedInt property.
Local $bTreatAsUnsignedInt = True
$bSuccess = $oSock.ReceiveByte($bTreatAsUnsignedInt)
If ($bSuccess = False) Then
ConsoleWrite($oSock.LastErrorText & @CRLF)
Exit
EndIf
; Let's look at the value of the byte received. It should be 96.
ConsoleWrite($oSock.ReceivedInt & @CRLF)
; The echo server also echoed the LF back.
$bSuccess = $oSock.ReceiveByte($bTreatAsUnsignedInt)
; Assuming success..
; Should be decimal 10.
ConsoleWrite($oSock.ReceivedInt & @CRLF)