4.1.8.3.1 Net Socket Service Functions
The basic net socket service sequence chart is provided below:

Socket open sequence is provided below

The socket binding sequence chart is provided below:

Socket closing sequence chart is provided below

Socket callback functions :
/* Application NET socket Callback Handler function */
void SYS_WINCS_NET_SockCallbackHandler(uint32_t socket, SYS_WINCS_NET_SOCK_EVENT_t event, uint8_t *p_str)
{
switch(event)
{
/* Net socket connected event code*/
case SYS_WINCS_NET_SOCK_EVENT_CONNECTED:
{
SYS_CONSOLE_PRINT("[APP] : Connected to Server!\r\n" );
break;
}
/* Net socket disconnected event code*/
case SYS_WINCS_NET_SOCK_EVENT_DISCONNECTED:
{
SYS_CONSOLE_PRINT("[APP] : DisConnected!\r\n");
SYS_WINCS_NET_SockSrvCtrl(SYS_WINCS_NET_SOCK_CLOSE, &socket);
break;
}
/* Net socket error event code*/
case SYS_WINCS_NET_SOCK_EVENT_ERROR:
{
SYS_CONSOLE_PRINT("ERROR : Socket\r\n");
break;
}
/* Net socket read event code*/
case SYS_WINCS_NET_SOCK_EVENT_READ:
{
uint8_t rx_data[64];
int16_t rcvd_len = 64;
memset(rx_data,0,64);
if((rcvd_len = SYS_WINCS_NET_TcpSockRead(socket, SYS_WINCS_NET_SOCK_RCV_BUF_SIZE, rx_data)) > 0)
{
rcvd_len = strlen((char *)rx_data);
rx_data[rcvd_len] = '\n';
SYS_CONSOLE_PRINT("Received ->%s\r\n", rx_data);
SYS_WINCS_NET_TcpSockWrite(socket, rcvd_len, rx_data);
}
break;
}
case SYS_WINCS_NET_SOCK_EVENT_CLOSED:
{
SYS_CONSOLE_PRINT("[APP] : Socket CLOSED -> socketID: %d\r\n",socket);
break;
}
case SYS_WINCS_NET_SOCK_EVENT_TLS_DONE:
{
SYS_CONSOLE_PRINT("[APP] : TLS ->Connected to Server!\r\n" );
break;
}
default:
break;
}
}