Pigeon Voice Server Socket Server Settings - DatasmithSA/Pigeon-Voice-Training GitHub Wiki

Settings related to the socket server handling LUT and ODR requests from voice devices.

  • Socket Server Listen On Any Network Interface: Indicates that the socket server must listen on any network interface i.e. not limited to a single IP address on one interface.
  • Socket Server Hosting IP Address: The IP address at which to host the socket server.
  • Socket Server Lut Port Number: The port number on which to list and respond to LUT requests.
  • Socket Server Odr Port Number: The port number on which to list and respond to ODR requests.
  • SocketServerEndOfRecordTerminator: Character sequence appended to the end of each LUT/ODR record to indicate the end of the record.
  • Socket Server End Of Record Set Terminator: Character sequence appended to the end of the each LUT/ODR record set (table) to indicate the end of the record set.
  • Socket Server Send Odr Confirmation Byte: Whether or not to respond with a confirmation to an ODR message from a client.
  • Socket Server Odr Confirmation Byte Character: The confirmation character (byte) to respond with to an ODR from a client.
  • Socket Server Handle Exceptions On Client Connection Accepted: Whether or not the server will handle exceptions (logging and email notifications) after TCP/IP client connections have been accepted. If set to true, exception handling is optional in your custom agents.
  • Socket Server Return Response On Lut Agent Exceptions: Whether or not to return a result to the client when exceptions are thrown by LUT socket agents.
  • Socket Client Date Time Split: Whether or not the socket clients send the date and time in separate fields as opposed to sending the date and time combined.
  • Socket Client Date Time Format: The date time format used in the messages being sent by the client in LUT and ODR messages.

Connection Management Settings: the following settings allow for fine tuning the connection between the voice devices and Pigeon Voice Socket Server.

  • SocketServerEnableNoDelay: When No Delay is disabled, the socket server will not respond to a client by sending a packet over the network until it has collected a significant amount of outgoing data. Enabling No Delay will respond to clients immediately.
  • SocketServerEnableLinger: Whether or not the server should wait a certain amount of time before closing the connection to the client. This gives the client time to handle response to prevent server closing the connection prematurely. Socket clients should close the connection before the server does.
  • SocketServerLingerSeconds: he amount of time in seconds to wait before the server closes a connection with a client. This gives the client time to handle response to prevent server closing the connection prematurely.
  • SocketServerReceiveBufferSize: The size of the receive buffer, in bytes. The default value is 8192 bytes. Sets the number of bytes that you are expecting to store in the receive buffer for receiving data from the client. This property actually manipulates the network buffer space allocated for receiving incoming data.
  • SocketServerSendBufferSize: The size of the send buffer, in bytes. The default value is 8192 bytes. Sets the number of bytes that you are expecting to store in the send buffer for sending data to the client. This property actually manipulates the network buffer space allocated for receiving outgoing data.
  • SocketServerEnableReceiveTimeout: Whether or not to enable the receive timeout. Disabling this setting will cause the socket server to wait indefinitely or until the default Windows timeout occurs when waiting to receive data from a client i.e. once connection has already been established.
  • SocketServerReceiveTimeout: The amount of time in milliseconds that the socket server will block until it is able to receive data from a client once a connection has been established. If the timeout expires an IO Exception is thrown. A value of 0 indicates no timeout i.e. waits indefinitely.
  • SocketServerEnableSendTimeout: Whether or not to enable the send timeout. Disabling this setting will cause the socket server to block indefinitely or until the default Windows timeout occurs when trying to send data to a client i.e. once connection has already been established.
  • SocketServerSendTimeout: The amount of time in milliseconds that the socket server will block until it is able to send data to a client once a connection has been established. If the timeout expires a SocketException is thrown. A value of 0 indicates no timeout i.e. waits indefinitely.
  • SocketServerEnableStreamWriterAutoFlush: Whether or not to enable auto flushing on the stream writer when sending responses back to the client.
  • SocketServerFlushStreamWriterAfterSend: Whether or not to flush the stream writer each time after sending a response back to the client.