--- /dev/null
+
+ABOUT CONTENT
+-------------
+Stacks available at './stacks'.
+The launcher uses the configuration given by '.dictionary' which points to a specification list.
+Available different setups by mean files named as '.dictionary__<stack description>'.
+
+Template for xml messages (message.dtd) and dictionaries (dictionary.dtd) are informative, not
+actually required by process.
+
+STARTING THE PROCESS
+--------------------
+Start with 'run.sh'. You could manually edit such script adding parameters as '-trace debug' to
+get complete 'launcher.traces'. Execute 'ADL-launcher' without arguments to see a complete
+command-line help.
+
+DEPLOYED SCRIPTS
+----------------
+You could get help about installed resources by mean 'help.sh', which launch a help request to
+the started ADL-launcher process http interface. All the implemented http operations could be
+launched through a script to make easy use. The http client 'curl' is used by default due to
+its presence on common linux distributions.
+
echo
echo
-# Fast start
-quick () {
- echo "Do you wish to answer wizard commandline configuration ? (y/n) [n]:"
- read wizard
- [[ "$wizard" = "" ]] && wizard=n
- [[ "$wizard" = "n" ]] && exit
-}
-
-[ "$httpServer_dflt" != "" -a "$diameterServer_dflt" != "" -a "$diameterServerSessions_dflt" != "" -a \
+# If all have values:
+if [ "$httpServer_dflt" != "" -a "$diameterServer_dflt" != "" -a "$diameterServerSessions_dflt" != "" -a \
"$entity_dflt" != "" -a "$entityServerSessions_dflt" != "" -a \
- "$dictionary_dflt" != "" ] && quick
+ "$dictionary_dflt" != "" ]
+then
+ echo "Do you wish to answer wizard commandline configuration ? (y/n) [n]:"
+ read wizard
+ [[ "$wizard" = "" ]] && wizard=n
+ [[ "$wizard" = "n" ]] && exit
+fi
+
+# DEFAULTS
+[[ "$httpServer_dflt" = "" ]] && httpServer_dflt="localhost:9000"
+[[ "$diameterServer_dflt" = "" ]] && diameterServer_dflt="localhost:3868"
+[[ "$diameterServerSessions_dflt" = "" ]] && diameterServerSessions_dflt=1
+[[ "$entity_dflt" = "" ]] && entity_dflt="localhost:4000,localhost:4001"
+[[ "$entityServerSessions_dflt" = "" ]] && entityServerSessions_dflt=0
+[[ "$dictionary_dflt" = "" ]] && dictionary_dflt=dictionary.xml
+
# Wizard
-[[ "$httpServer_dflt" = "" ]] && httpServer_dflt="localhost:9000"
echo "HTTP Management interface address (using i.e. curl tool) as <ip|hostname>:<port> socket literal [$httpServer_dflt]:"
read httpServer
[[ "$httpServer" = "" ]] && httpServer=$httpServer_dflt
-echo "Diameter dictionary: you could use '/opt/bin/anna/example_diameter_stackManagement' tool in order to build an"
-echo " autonomous dictionary for any kind of application. See 'example/diameter/stackManagement/self_ruling_setups.sh'."
+echo "Diameter dictionary: you could use '/opt/bin/anna/example_diameter_stackManagement' tool in order to build"
+echo " autonomous dictionaries for any kind of application. The key is to concatenate xml contents (ietf, 3gpp,"
+echo " vendor-specific, etc.). See 'example/diameter/stackManagement/self_ruling_setups.sh' for this."
echo
-[[ "$dictionary_dflt" = "" ]] && dictionary_dflt=dictionary.xml
-echo "Diameter stack pathfiles [$dictionary_dflt]:"
+echo "This launcher can also join them providing a comma-separated list (dictionaries available on ./stack)."
+echo "By default, a QoS Application setup is suggested. Input the desired configuration instead, or press ENTER:"
+echo
+echo " [$dictionary_dflt]:"
read dictionary
[[ "$dictionary" = "" ]] && dictionary=$dictionary_dflt
-[[ "$diameterServer_dflt" = "" ]] && diameterServer_dflt="localhost:3868"
-echo "Diameter own server address as <ip|hostname>:<port> socket literal [$diameterServer_dflt]:"
-read diameterServer
-[[ "$diameterServer" = "" ]] && diameterServer=$diameterServer_dflt
-
-[[ "$diameterServerSessions_dflt" = "" ]] && diameterServerSessions_dflt=0
+# As server:
echo "Diameter own server available connections (0: diameter server disabled) [$diameterServerSessions_dflt]:"
read diameterServerSessions
[[ "$diameterServerSessions" = "" ]] && diameterServerSessions=$diameterServerSessions_dflt
+diameterServer=
+if test "$diameterServerSessions" != "0"
+then
+ echo "Diameter own server address as <ip|hostname>:<port> socket literal [$diameterServer_dflt]:"
+ read diameterServer
+fi
+[[ "$diameterServer" = "" ]] && diameterServer=$diameterServer_dflt
-[[ "$entity_dflt" = "" ]] && entity_dflt="localhost:4000,localhost:4001"
-echo "Target diameter entity (pipe-separated <ip|hostname>:<port> socket literal list) ["$entity_dflt"]:"
-read entity
-[[ "$entity" = "" ]] && entity="$entity_dflt"
-
-[[ "$entityServerSessions_dflt" = "" ]] && entityServerSessions_dflt=1
+# As client:
echo "Diameter entity server sessions (0: diameter entity disabled) [$entityServerSessions_dflt]:"
read entityServerSessions
[[ "$entityServerSessions" = "" ]] && entityServerSessions=$entityServerSessions_dflt
+entity=
+if test "$entityServerSessions" != "0"
+then
+ echo "Target diameter entity (pipe-separated <ip|hostname>:<port> socket literal list) ["$entity_dflt"]:"
+ read entity
+fi
+[[ "$entity" = "" ]] && entity="$entity_dflt"
+# Configure:
echo $httpServer > .httpServer
echo $dictionary > .dictionary
echo $diameterServer > .diameterServer