Swift
Swift
TCP Socket Send Byte and Receive Byte
Demonstrates the Chilkat Socket ReceiveByte and SendByte method.Chilkat Swift Downloads
func chilkatTest() {
var success: Bool = false
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
let sock = CkoSocket()!
// --------------------------------------------------------------------
// This example uses the public TCP echo service at https://tcpbin.com/
// --------------------------------------------------------------------
var useTls: Bool = false
var port: Int = 4242
var maxWaitMs: Int = 5000
success = sock.connect(hostname: "tcpbin.com", port: port, ssl: useTls, maxWaitMs: maxWaitMs)
if success == false {
print("\(sock.lastErrorText!)")
return
}
// Wait a max of 2 seconds for a response..
sock.maxReadIdleMs = 2000
// Send a byte.
sock.sendByte(value: 96)
// The tcpbin.com echo server only echoes after receiving an LF (linefeed char)
sock.sendByte(value: 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.
var treatAsUnsignedInt: Bool = true
success = sock.receiveByte(bUnsigned: treatAsUnsignedInt)
if success == false {
print("\(sock.lastErrorText!)")
return
}
// Let's look at the value of the byte received. It should be 96.
print("\(sock.receivedInt.intValue)")
// The echo server also echoed the LF back.
success = sock.receiveByte(bUnsigned: treatAsUnsignedInt)
// Assuming success..
// Should be decimal 10.
print("\(sock.receivedInt.intValue)")
}