TcpServerGetClientAddress
void OnTcpServerEvent(int64_t server_handle, int64_t conn_id, int32_t event_type,
int64_t data, int32_t data_len, int64_t user_data) {
if (event_type == 0) {
const char* addr = TcpServerGetClientAddress(instance, server_handle, conn_id);
if (addr != NULL) {
printf("新连接来自:%s [conn_id=%lld]\n", addr, conn_id);
FreeStringPtr(instance, addr);
}
}
}
void ListAllClients(int64_t server) {
const char* connIds = TcpServerGetAllConnectionIds(instance, server);
if (connIds != NULL) {
printf("当前连接的客户端:\n");
char* ids = strdup(connIds);
char* token = strtok(ids, ",");
while (token != NULL) {
int64_t conn_id = atoll(token);
const char* addr = TcpServerGetClientAddress(instance, server, conn_id);
if (addr != NULL) {
printf(" [%lld] %s\n", conn_id, addr);
FreeStringPtr(instance, addr);
}
token = strtok(NULL, ",");
}
free(ids);
FreeStringPtr(instance, connIds);
}
}