Try this
PHP Code:
#include <amxmodx>
#include <sockets>
#define TASK_RECV 551122
new Float:g_fResponseTime[ 33 ];
public plugin_init()
{
register_plugin( "sockets" , "0.1" , "bugsy" );
register_concmd( "test" , "TestConnect" );
}
public TestConnect( id )
{
new iSocket , iError;
g_fResponseTime[ id ] = get_gametime();
iSocket = socket_open( "www.google.com" , 80 , SOCKET_TCP , iError );
if ( !iSocket || iError )
return PLUGIN_HANDLED;
new szPacket[] = "GET / HTTP/1.1^r^nHost: www.google.com^r^n^r^n";
socket_send( iSocket , szPacket , sizeof( szPacket ) );
new params[ 2 ];
params[ 0 ] = id;
params[ 1 ] = iSocket;
set_task( 0.25 , "ReadData" , TASK_RECV , params , sizeof( params ) , "b" );
return PLUGIN_HANDLED;
}
public ReadData( params[ 2 ] )
{
new id = params[ 0 ];
new iSocket = params[ 1 ];
static szData[ 512 ];
if ( socket_change( iSocket ) )
{
socket_recv( iSocket , szData , charsmax( szData ) );
g_fResponseTime[ id ] = get_gametime();
server_print( szData );
//check for your data, if found call remove_task( TASK_RECV );
}
if ( ( get_gametime() - g_fResponseTime[ id ] ) >= 5.0 )
{
//server hasn't responded in 5 seconds
remove_task( TASK_RECV );
}
}
__________________