$Sock_Send

From m204wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Send string

Note: Many $functions have been deprecated in favor of Object Oriented methods. The OO equivalent for $Sock_Send is the Send method.

$Sock_Send sends a string over a Janus Sockets connection.

It is also a callable function.

Syntax

[%rc =] $Sock_Send(sockNum, string, [opts])

Syntax terms

%rc A numeric value that is a numeric error code (described further below), or if the operation could not be performed as requested, a 0 value. For more details, see "$Sock_RecvPrs return values".
sockNum The socket number.
string The string to send.
opts This optional argument is an option string, which can contain any of the following:
BINARY Indicates that regardless of the socket's BINARY or CHAR parameter, data is not translated when sent. The argument can be the result of a previous translation using $Sock_Tran_Out.
CHAR Indicates that regardless of the socket's BINARY or CHAR parameter, data is translated when sent. The translation is specified by the output table defined in the socket's XTAB parameter.
FIN Indicates that after the string argument is sent, no more data will be sent on the socket. This transmits the FIN indication to the remote partner. Note that when FIN is sent, print capturing is automatically turned OFF for the socket.
PUSH Ensures that the data being sent on the socket is immediately sent to the receiver. Normally, data to be sent is buffered and may not be sent immediately.

Using PUSH is not necessary if:

  • You are specifying FIN, since a push operation is implied by FIN.
  • You are alternating sends and receives on a socket, since receive-processing functions ($Sock_Recv and $Sock_RecvPrs) always do a push before receiving.

$Sock_Send return codes

  • 0, if the function completes successfully.
  • -1, if the socket is not open and ONRESET CONTINUE is in effect for the socket.

If you need to send line-end delimited information, use $Sock_SendLn.