SrvSVXLink/Configuration/fr_FR/events.d/Tcl.tcl.example

123 lines
2.3 KiB
Plaintext
Raw Normal View History

2022-08-24 08:18:01 +02:00
###############################################################################
#
# Tcl module event handlers
#
###############################################################################
#
# This is the namespace in which all functions and variables below will exist.
# The name must match the configuration variable "NAME" in the
# [ModuleTcl] section in the configuration file. The name may be changed
# but it must be changed in both places.
#
namespace eval Tcl {
#
# Check if this module is loaded in the current logic core
#
if {![info exists CFG_ID]} {
return
}
#
# Extract the module name from the current namespace
#
set module_name [namespace tail [namespace current]]
#
# An "overloaded" playMsg that eliminates the need to write the module name
# as the first argument.
#
# msg - The message to play
#
proc playMsg {msg} {
variable module_name
::playMsg $module_name $msg
}
#
# A convenience function for printing out information prefixed by the
# module name.
#
# msg - The message to print
#
proc printInfo {msg} {
variable module_name
puts "$module_name: $msg"
}
#
# Executed when this module is being activated
#
proc activating_module {} {
Module::activating_module $module_name
}
#
# Executed when this module is being deactivated.
#
proc deactivating_module {} {
Module::deactivating_module $module_name
}
#
# Executed when the inactivity timeout for this module has expired.
#
proc timeout {} {
Module::timeout $module_name
}
#
# Executed when playing of the help message for this module has been requested.
#
proc play_help {} {
Module::play_help $module_name
}
#
# Executed when the state of this module should be reported on the radio
# channel. The rules for when this function is called are:
#
# When a module is active:
# * At manual identification the status_report function for the active module is
# called.
# * At periodic identification no status_report function is called.
#
# When no module is active:
# * At both manual and periodic (long variant) identification the status_report
# function is called for all modules.
#
proc status_report {} {
printInfo "status_report called..."
}
#
# Called when an illegal command has been entered
#
# cmd - The received command
#
proc unknown_command {cmd} {
playNumber $cmd
playMsg "unknown_command"
}
# end of namespace
}
#
# This file has not been truncated
#