(→See also) |
|||
(12 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{mirc title|/sockwrite Command}} |
− | The '''/sockwrite command''' allows you to send data to a TCP socket connection previously opened with [[/sockopen - | + | The '''/sockwrite command''' allows you to send data to a TCP socket connection previously opened with [[/sockopen commands - mIRC|/sockopen]] (See [[TCP Sockets - mIRC|TCP sockets]]). |
− | You can specify a wildcard for the name to send the data to all matching sockets. | + | You can specify a {{mirc|wildcard}} for the name to send the data to all matching sockets. |
When the data has been sent, the {{mIRC|on sockwrite}} event triggers. | When the data has been sent, the {{mIRC|on sockwrite}} event triggers. | ||
− | |||
− | |||
mIRC will queue your request up to 16384 bytes, you must check how many bytes is the send buffer with {{mirc|$sock}}().sq before trying to queue on a socket | mIRC will queue your request up to 16384 bytes, you must check how many bytes is the send buffer with {{mirc|$sock}}().sq before trying to queue on a socket | ||
− | '''Note''': If the queue is | + | '''Note''': If the queue is empty, (first /sockwrite ever for example), you can send more than that limit and it will be sent as chunk of the send queue limit or less. |
== Synopsis == | == Synopsis == | ||
− | /sockwrite - | + | /sockwrite -abnt <name> [numbytes] <text|%var|&binvar> |
== Switches == | == Switches == | ||
* '''-b''' - Indicates that you are specifying the numbytes value which is the number of bytes you want send, the full line is sent otherwise | * '''-b''' - Indicates that you are specifying the numbytes value which is the number of bytes you want send, the full line is sent otherwise | ||
− | * '''-n''' - Appens a {{mIRC|$crlf}} to the line being sent if it's not a &binvar | + | * '''-n''' - Appens a {{mIRC|$crlf}} to the line being sent if it's not a &binvar and does not already end with a $crlf |
* '''-t''' - Forces mIRC to send anything beginning with a & as plain text | * '''-t''' - Forces mIRC to send anything beginning with a & as plain text | ||
+ | * '''-a''' - Prevents characters in the range 0-255 from being UTF-8 encoded as long as the line only contains characters in the range 0-255 | ||
== Parameters == | == Parameters == | ||
Line 23: | Line 22: | ||
* '''[numbytes]''' - If -b has been specified, indicates the number of bytes you want to send. | * '''[numbytes]''' - If -b has been specified, indicates the number of bytes you want to send. | ||
* '''<text|%var|&binvar>''' - The message you want to send, can be a binary variable. | * '''<text|%var|&binvar>''' - The message you want to send, can be a binary variable. | ||
+ | |||
+ | '''Note''': if /sockwrite fails, {{mirc|$sockerr}} is set as well as {{mirc|$sock}}().wserr and {{mirc|$sock}}().wsmsg inside the {{mirc|on events/on sockwrite|on sockwrite}} event. | ||
== Example == | == Example == | ||
+ | |||
+ | See the page for the {{mIRC|on events/on sockwrite|on sockwrite}} event for more informations and examples about /sockwrite | ||
== Compatibility == | == Compatibility == | ||
Line 32: | Line 35: | ||
* [[List of commands - mIRC|List of commands]] | * [[List of commands - mIRC|List of commands]] | ||
* [[List of identifiers - mIRC|List of identifiers]] | * [[List of identifiers - mIRC|List of identifiers]] | ||
− | * | + | * {{mIRC|/sockopen}} |
− | * | + | * {{mIRC|/sockread}} |
− | * | + | * {{mIRC|/sockmark}} |
− | * | + | * {{mIRC|on sockwrite}} |
− | * | + | * {{mIRC|on sockread}} |
− | * | + | * {{mIRC|$sockerr}} |
* {{mIRC|$sock|$sock()}} | * {{mIRC|$sock|$sock()}} | ||
Latest revision as of 20:05, 3 May 2023
The /sockwrite command allows you to send data to a TCP socket connection previously opened with /sockopen (See TCP sockets). You can specify a wildcard for the name to send the data to all matching sockets.
When the data has been sent, the on sockwrite event triggers.
mIRC will queue your request up to 16384 bytes, you must check how many bytes is the send buffer with $sock().sq before trying to queue on a socket
Note: If the queue is empty, (first /sockwrite ever for example), you can send more than that limit and it will be sent as chunk of the send queue limit or less.
Synopsis[edit]
/sockwrite -abnt <name> [numbytes] <text|%var|&binvar>
Switches[edit]
- -b - Indicates that you are specifying the numbytes value which is the number of bytes you want send, the full line is sent otherwise
- -n - Appens a $crlf to the line being sent if it's not a &binvar and does not already end with a $crlf
- -t - Forces mIRC to send anything beginning with a & as plain text
- -a - Prevents characters in the range 0-255 from being UTF-8 encoded as long as the line only contains characters in the range 0-255
Parameters[edit]
- <name> - The socket name.
- [numbytes] - If -b has been specified, indicates the number of bytes you want to send.
- <text|%var|&binvar> - The message you want to send, can be a binary variable.
Note: if /sockwrite fails, $sockerr is set as well as $sock().wserr and $sock().wsmsg inside the on sockwrite event.
Example[edit]
See the page for the on sockwrite event for more informations and examples about /sockwrite
Compatibility[edit]
Added: mIRC v5.3
Added on: 13 Dec 1997
Note: Unless otherwise stated, this was the date of original functionality.
Further enhancements may have been made in later versions.
See also[edit]
- List of commands
- List of identifiers
- /sockopen
- /sockread
- /sockmark
- on sockwrite
- on sockread
- $sockerr
- $sock()