From WikiChip
Difference between revisions of "mirc/on events/on sockopen"
< mirc‎ | on events

m (See Also)
m (Connection State)
Line 11: Line 11:
 
== Connection State ==
 
== Connection State ==
  
Because the sockopen event triggers for failed connections as well, it's important to check the value of {{mIRC|$sockerr}} before continuing with any commands. Here is a list of the possible values returned by $sockerr in the on SOCKOPEN event:
+
Because the sockopen event triggers for failed connections as well as successful connections, it's important to check the value of {{mIRC|$sockerr}} before continuing with any commands. Here is a list of the possible values returned by $sockerr in the on SOCKOPEN event:
  
 
* '''0''' - Success.
 
* '''0''' - Success.

Revision as of 02:09, 16 October 2014

The ON SOCKOPEN event triggers when a TCP socket connection initiated with /sockopen is either sucessful or failed.

Synopsis

ON <level>:SOCKOPEN:<matchtext>:<commands>

Parameters

<matchtext>The name of the socket you want event to trigger on.

<commands>The commands to be performed when the event listener's criteria is met.

Connection State

Because the sockopen event triggers for failed connections as well as successful connections, it's important to check the value of $sockerr before continuing with any commands. Here is a list of the possible values returned by $sockerr in the on SOCKOPEN event:

  • 0 - Success.
  • 3 - Failure establishing socket connection: $sock($sockname).wsmsg will contain a more specific error message.
  • 4 - Error resolving given hostname.

Examples

on *:sockopen:example:{
 
  ;if an error occurred ($sockerr is not 0)
  if ($sockerr) {
    if ($sockerr == 3) {
      echo -s An error occurred while trying to connect: $sock($sockname).wsmsg
    }
    elseif ($sockerr == 4) {
      echo -s Error resolving hostname
    }
  }
 
  ;no error occurred ($sockerr was 0)
  else {
    ;perform commands after establishing a connection.
    ;usually this involves making a request for a webpage as shown below:
    sockwrite -n $sockname GET / HTTP/1.1
    sockwrite -n $sockname Host: www.example.com
    sockwrite -n $sockname Connection: close
    sockwrite -n $sockname $crlf
  }
}

Compatibility

Added: mIRC v3.5
Added on: 07 Aug 1995
Note: Unless otherwise stated, this was the date of original functionality.
Further enhancements may have been made in later versions.


See Also