dl-fldigi/fldigi_doxygen/user_src_docs/xmlrpc-control.txt

262 wiersze
14 KiB
Plaintext

/**
\page xmlrpc_control_page Xmlrpc Control
\tableofcontents
XML-RPC data is transported via simple HTTP and client implementations
exist for most programming languages. A Perl client that can be
used as a control script is included in the source tar ball as
scripts/fldigi-shell. This control method is currently used by several
external programs including flrig, logger32 and Xlog.
The following command line arguments become available when XML-RPC support is
compiled into fldigi, as described in the \ref install_from_source_page
"build instructions":
\verbatim
--xmlrpc-server-address HOSTNAME
Set the XML-RPC server address. The default is 127.0.0.1.
--xmlrpc-server-port PORT
Set the XML-RPC server port. The default is 7362.
--xmlrpc-allow REGEX
Allow only the methods whose names match REGEX
--xmlrpc-deny REGEX
Allow only the methods whose names don't match REGEX
--xmlrpc-list
List all available methods
\endverbatim
The --xmlrpc-deny and --xmlrpc-allow switches can be used as a simple
access control mechanism. REGEX specifies a POSIX extended regular expression.
This invocation disables the methods that may cause fldigi to transmit:
\verbatim
--xmlrpc-deny 'main\.(tx|tune|run_macro)'
\endverbatim
By default all methods are allowed.
The --xmlrpc-list switch outputs the method list and exits the program. If
preceded by --xmlrpc-deny or --xmlrpc-allow, it shows the list of methods as
filtered by those switches.
The methods are listed below. The three columns are method name, signature
(return_type:argument_types), and description. Refer to the XML-RPC
specification for the meaning of the signature characters
\latexonly \pagebreak \endlatexonly
\section sub_symbol_interpretation XML Command Symbol Interpretation
<br>
<center>
Symbol | Interpretation
:------:|:---:
6 | bytes
A | array
b | boolean
d | double
i | integer
n | nil
s | string
S | struct
<br>
</center>
\section sub_xml_commands Table of XML Commands
<br>
<center>
Method Name | Sig (ret:arg) | Description
:---------- |:---:|:-----------
fldigi.config_dir | s:n | Returns the name of the configuration directory
fldigi.list | A:n | Returns the list of methods
fldigi.name | s:n | Returns the program name
fldigi.name_version | s:n | Returns the program name and version
fldigi.terminate | n:i | Terminates fldigi. ``i'' is bitmask specifying data to save: 0=options; 1=log; 2=macros
fldigi.version | s:n | Returns the program version as a string
fldigi.version_struct | S:n | Returns the program version as a struct
io.enable_arq | n:n | Switch to ARQ I/O
io.enable_kiss | n:n | Switch to KISS I/O
io.in_use | s:n | Returns the IO port in use (ARQ/KISS).
log.clear | n:n | Clears the contents of the log fields
log.get_az | s:n | Returns the AZ field contents
log.get_band | s:n | Returns the current band name
log.get_call | s:n | Returns the Call field contents
log.get_country | s:n | Returns the Country field contents
log.get_exchange | s:n | Returns the contest exchange field contents
log.get_frequency | s:n | Returns the Frequency field contents
log.get_locator | s:n | Returns the Locator field contents
log.get_name | s:n | Returns the Name field contents
log.get_notes | s:n | Returns the Notes field contents
log.get_province | s:n | Returns the Province field contents
log.get_qth | s:n | Returns the QTH field contents
log.get_rst_in | s:n | Returns the RST(r) field contents
log.get_rst_out | s:n | Returns the RST(s) field contents
log.get_serial_number | s:n | Returns the serial number field contents
log.get_serial_number_sent | s:n | Returns the serial number (sent) field contents
log.get_state | s:n | Returns the State field contents
log.get_time_off | s:n | Returns the Time-Off field contents
log.get_time_on | s:n | Returns the Time-On field contents
log.set_call | n:s | Sets the Call field contents
log.set_exchange | n:s | Sets the contest exchange field contents
log.set_locator | n:s | Sets the Locator field contents
log.set_name | n:s | Sets the Name field contents
log.set_qth | n:s | Sets the QTH field contents
log.set_rst_in | n:s | Sets the RST(r) field contents
log.set_rst_out | n:s | Sets the RST(s) field contents
log.set_serial_number | n:s | Sets the serial number field contents
main.abort | n:n | Aborts a transmit or tune
main.get_afc | b:n | Returns the AFC state
main.get_char_rates | s:n | Returns table of char rates.
main.get_char_timing | n:6 | Input: value of character. Returns transmit duration <br>for specified character (samples:sample rate).
main.get_frequency | d:n | Returns the RF carrier frequency
main.get_lock | b:n | Returns the Transmit Lock state
main.get_max_macro_id | i:n | Returns the maximum macro ID number
main.get_reverse | b:n | Returns the Reverse Sideband state
main.get_rsid | b:n | Returns the RSID state
main.get_txid | b:n | Returns the TxRSID state
main.get_squelch | b:n | Returns the squelch state
main.get_squelch_level | d:n | Returns the squelch level
main.get_status1 | s:n | Returns the contents of the first status field (typically s/n)
main.get_status2 | s:n | Returns the contents of the second status field
main.get_trx_state | s:n | Returns T/R state
main.get_trx_status | s:n | Returns transmit/tune/receive status
main.get_tx_timing | n:6 | Returns transmit duration for test string (samples:sample rate:secs).
main.get_wf_sideband | s:n | Returns the current waterfall sideband
main.inc_frequency | d:d | Increments the RF carrier frequency. Returns the new value
main.inc_squelch_level | d:d | Increments the squelch level. Returns the new level
main.run_macro | n:i | Runs a macro
main.rx | n:n | Receives
main.rx_only | n:n | Disables Tx.
main.rx_tx | n:n | Sets normal Rx/Tx switching.
main.set_afc | b:b | Sets the AFC state. Returns the old state
main.set_frequency | d:d | Sets the RF carrier frequency. Returns the old value
main.set_lock | b:b | Sets the Transmit Lock state. Returns the old state
main.set_reverse | b:b | Sets the Reverse Sideband state. Returns the old state
main.set_rsid | b:b | Sets the RSID state. Returns the old state
mmain.set_txid | b:b | Sets the TxRSID state. Returns the old state
main.set_squelch | b:b | Sets the squelch state. Returns the old state
main.set_squelch_level | d:d | Sets the squelch level. Returns the old level
main.set_wf_sideband | n:s | Sets the waterfall sideband to USB or LSB
main.toggle_afc | b:n | Toggles the AFC state. Returns the new state
main.toggle_lock | b:n | Toggles the Transmit Lock state. Returns the new state
main.toggle_reverse | b:n | Toggles the Reverse Sideband state. Returns the new state
main.toggle_rsid | b:n | Toggles the RSID state. Returns the new state
main.toggle_txid | b:n | Toggles the TxRSID state. Returns the new state
main.toggle_squelch | b:n | Toggles the squelch state. Returns the new state
main.tune | n:n | Tunes
main.tx | n:n | Transmits
modem.get_afc_search_range | i:n | Returns the modem AFC search range
modem.get_bandwidth | i:n | Returns the modem bandwidth
modem.get_carrier | i:n | Returns the modem carrier frequency
modem.get_id | i:n | Returns the ID of the current modem
modem.get_max_id | i:n | Returns the maximum modem ID number
modem.get_name | s:n | Returns the name of the current modem
modem.get_names | A:n | Returns all modem names
modem.get_quality | d:n | Returns the modem signal quality in the range [0:100]
modem.inc_afc_search_range | n:i | Increments the modem AFC search range. Returns the new value
modem.inc_bandwidth | n:i | Increments the modem bandwidth. Returns the new value
modem.inc_carrier | i:i | Increments the modem carrier frequency. Returns the new carrier
modem.olivia.get_bandwidth | i:n | Returns the Olivia bandwidth
modem.olivia.get_tones | i:n | Returns the Olivia tones
modem.olivia.set_bandwidth | n:i | Sets the Olivia bandwidth
modem.olivia.set_tones | n:i | Sets the Olivia tones
modem.search_down | n:n | Searches downward in frequency
modem.search_up | n:n | Searches upward in frequency
modem.set_afc_search_range | n:i | Sets the modem AFC search range. Returns the old value
modem.set_bandwidth | n:i | Sets the modem bandwidth. Returns the old value
modem.set_by_id | i:i | Sets the current modem. Returns old ID
modem.set_by_name | s:s | Sets the current modem. Returns old name
modem.set_carrier | i:i | Sets modem carrier. Returns old carrier
navtex.get_message | s:i | Returns next Navtex/SitorB message with a max delay in <br>seconds.. Empty string if timeout.
navtex.send_message | s:s | Send a Navtex/SitorB message. Returns an empty string <br>if OK otherwise an error message.
rig.get_bandwidth | s:n | Returns the name of the current transceiver bandwidth
rig.get_bandwidths | A:n | Returns the list of available rig bandwidths
rig.get_mode | s:n | Returns the name of the current transceiver mode
rig.get_modes | A:n | Returns the list of available rig modes
rig.get_name | s:n | Returns the rig name previously set via rig.set_name
rig.get_notch | s:n | Reports a notch filter frequency based on WF action
rig.release_control | n:n | Switches rig control to previous setting
rig.set_bandwidth | n:s | Selects a bandwidth previously added by rig.set_bandwidths
rig.set_bandwidths | n:A | Sets the list of available rig bandwidths
rig.set_frequency | d:d | Sets the RF carrier frequency. Returns the old value
rig.set_mode | n:s | Selects a mode previously added by rig.set_modes
rig.set_modes | n:A | Sets the list of available rig modes
rig.set_name | n:s | Sets the rig name for xmlrpc rig
rig.set_pwrmeter | n:i | Sets the power meter returns null.
rig.set_smeter | n:i | Sets the smeter returns null.
rig.take_control | n:n | Switches rig control to XML-RPC
rx.get_data | 6:n | Returns all RX data received since last query.
rxtx.get_data | 6:n | Returns all RXTX combined data since last query.
spot.get_auto | b:n | Returns the autospotter state
spot.pskrep.get_count | i:n | Returns the number of callsigns spotted in the current session
spot.set_auto | n:b | Sets the autospotter state. Returns the old state
spot.toggle_auto | n:b | Toggles the autospotter state. Returns the new state
text.add_tx | n:s | Adds a string to the TX text widget
text.add_tx_bytes | n:6 | Adds a byte string to the TX text widget
text.clear_rx | n:n | Clears the RX text widget
text.clear_tx | n:n | Clears the TX text widget
text.get_rx | 6:i | Returns a range of characters (start, length) from the RX text widget
text.get_rx_length | i:n | Returns the number of characters in the RX widget
tx.get_data | 6:n | Returns all TX data transmitted since last query.
wefax.end_reception | s:n | End Wefax image reception
wefax.get_received_file | s:i | Waits for next received fax file, returns its name with<br>a delay. Empty string if timeout.
wefax.send_file | s:i | Send file. returns an empty string if OK otherwise an error message.
wefax.set_adif_log | s:b | Set/reset logging to received/transmit images to ADIF log file
wefax.set_max_lines | s:i | Set maximum lines for fax image reception
wefax.set_tx_abort_flag | s:n | Cancels Wefax image transmission
wefax.skip_apt | s:n | Skip APT during Wefax reception
wefax.skip_phasing | s:n | Skip phasing during Wefax reception
wefax.state_string | s:n | Returns Wefax engine state (tx and rx) for information.
</center>
Deprecated methods:
<center>
Method Name | Sig | Resolution
:---------- |:---:|:-----------
log.get_sideband | s:n | use main.get_wf_sideband
main.get_rig_bandwidth | s:n | use rig.get_bandwidth
main.get_rig_bandwidths | n:A | use rig.get_bandwidths
main.get_rig_mode | s:n | use rig.get_mode
main.get_rig_modes | A:n | use rig.get_modes
main.get_sideband | s:n | use main.get_wf_sideband and/or rig.get_mode
main.rsid | n:n | use main.{get,set,toggle}_rsid
main.set_rig_bandwidth | n:s | use rig.set_bandwidth
main.set_rig_bandwidths | n:A | use rig.set_bandwidths
main.set_rig_frequency | d:d | use rig.set_frequency
main.set_rig_mode | n:s | use rig.set_mode
main.set_rig_modes | n:A | use rig.set_modes
main.set_rig_name | n:s | use rig.set_name
main.set_sideband | n:s | use main.set_wf_sideband and/or rig.set_mode
</center>
<br>
\section sub_minimized_window Minimized WF Window
<br>
If your external control program duplicates some of the fldigi controls
such as the Rx and Tx pane you can run fldigi in a fully minimized
mode. Fldigi then only provides the controls necessary for signal
acquisition and waterfall management. Minimization is
accomplished by setting the command line switch (\-\-wo). The user
interface then has this appearance:
\image html UI-minimized.png "Simplified WF Window Display"
\image latex UI-minimized.png "Simplified WF Window Display" width=5.0in
The documentation for the external control program will provide additional
information if this user interface is desired.
<br>
\ref xmlrpc_control_page "Return to Top of Page"
<br>
\ref main_page "Return to Main Page"
*/