
2003-05-11  Hynek Hanke  <hanke@volny.cz>

	* src/server/server.c (process_message_spelling): Don't queue \r and \n strings when
	not found in sound icons.

    * src/sounds: New directory.

    * src/sounds/Makefile.am: Install sounds.

	* Makefile.am: New directory sounds.

    * src/configure.in: Set datadir to the appropriate path.

	* src/server/sndicon.c: Read sound icons from DATA_DIR

2003-05-11  Hynek Hanke  <hanke@volny.cz>

	* src/c/api/libspeechd.c: Completely reworked.
	All callers changed.

	* src/c/api/libspeechd.h: Completely reworked.
	All callers changed.

2003-05-07  Hynek Hanke  <hanke@volny.cz>

	* src/tests/spelling.test: New test.
	
	* src/server/dc_decl.h: Exit if the specified output module doesn't exist.
	
	* src/tests/punctuation.test: New test.

	* src/server/parse.c: Added "LIST PUNCTUATION_TABLES"
	
	* src/server/server.c (process_message_punctuation): Bug corrected.

2003-05-07  Hynek Hanke  <hanke@volny.cz>
	
	* config/speechd.conf (SndModule): New option: sound module to load.
	Fixed sound->rate in commentaries.

	* src/modules/Makefile.am (cstsnd): New output module for sound.

	* src/modules/cstsnd.c: New output module.
	
	* src/server/sndicon.c (sndicon_queue): Handle icons represented by sounds.

	* src/server/server.c (process_message_punctuation): Handle icons represented by sounds.
	(process_message_punctuation): Don't throw away signs not found in "important" table.

	* src/server/speaking.c (speak): Call sound_module for sounds.

	* src/audio/spd_audio.c (spd_audio_read_wave): New function.

	* src/server/speaking.c (speak): Use sound output module when necessary.

	* src/server/speechd.h (sound_module): New variable.

	* src/server/server.c (process_message_spell): Handle icons represented by sounds.
	(queue_messages): New function. Queue a list of messages.

	* src/server/sndicon.h (snd_icon_spelling_get): New parameter int *sound
	
	* src/server/dc_decl.h (cb_SndModule): Define sound module.

	* src/server/sndicon.c (snd_icon_spelling_get): Handle icons representing sound (wav).

	* intl/fdset.h (EMessageType): New type MSGTYPE_SOUND.

	* src/server/dc_decl.h (cb_AddTable): Accept entries in "".

	* src/modules/flite.c (_flite_synth): Bug with messages not terminated by a dot fixed.

2003-05-06  Milan Zamazal  <pdm@brailcom.org>

	* src/modules/apollo.c (module_init): Set punctuation off.

2003-05-06  Hynek Hanke  <hanke@localhost.localdomain>

	* src/server/history.c (history_get_message): New function.

	* src/server/parse.c (parse_history): HISTORY CURSOR NEXT/PREV changed to FORWARD/BACKWARD.
	(parse_history): HISTORY GET MESSAGE: New SSIP command.

	* src/server/msg.h (OK_CLIENT_ID_SENT): New SSIP message.

	* src/server/history.c (history_get_client_id): New function.

	* src/server/parse.c (parse_history): Added HISTORY GET CLIENT_ID.

	* config/speechd.conf (DefaultClientName): Added "user" entry.

	* src/modules/Makefile.am (AM_CFLAGS): Link libsdaudio dynamically.

	* src/modules/flite.c (_flite_sigblockusr): New function. Block SIGUSR1 signal.
	(_flite_synth): Block SIGUSR1 while sending data to soundcard.
	(_flite_synth): Divide message according to sentences, not lines.

	* src/server/speaking.c (speaking_pause_all): Queue according to the paused clients,
	not the calling one.


2003-05-05  Milan Zamazal  <pdm@brailcom.org>

	* src/modules/festival.cc (modinfo_festival): `filename' removed.

2003-05-01  Hynek Hanke  <hanke@localhost.localdomain>

	* src/modules/flite.c (module_flite): filename entry deleted.

	* src/modules/apollo.c (apollo_is_speaking): Return 2 for ``don't know''
	(module_apollo): filename entry deleted.

	* src/server/speaking.c: is_sb_speaking() can also return 2 for ``don't know'' 

2003-04-29  Milan Zamazal  <pdm@brailcom.org>

	* src/modules/apollo.c (apollo_pause): Call apollo_stop.

	* INSTALL: libfestival-dev and libestools-dev added.
	* configure.in: Call AC_PROG_CXX.
	* src/modules/est_string_config.h: New file.
	* src/modules/Makefile.am: Build the Festival module.
	(AM_CXXFLAGS): New variable.
	* src/modules/festival.cc: Renamed from festival.c.
	(festival_pause): New function.

2003-04-28  Milan Zamazal  <pdm@brailcom.org>

	* src/Makefile.am (SUBDIRS): Process `audio' before `modules'.

2003-04-28  Hynek Hanke  <hanke@localhost.localdomain>

	* src/server/speaking.h: New headers for speaking_pause_all(), speaking_resume_all().

	* src/server/speaking.c (speaking_pause_all): New function.
	(speaking_resume_all): New function.
	(speaking_pause): Reworked.
	(speaking_resume): Reworked.

	* src/server/speechd.h: Removed stop/cancel/pause/resume functions.
	
	* src/server/parse.c (pause): Reworked.
	(resume): Reworked.
	
	
	* src/modules/apollo.c (apollo_pause): New function. Needs some work:)

	* src/modules/flite.c (_flite_speak): Use the spd_audio.c library.
	(_flite_synth): New function. Splitted from _flite_speak.
	(flite_pause): New function. Stop speaking the message and return the rest.

	* src/audio/spd_audio.h: New header file for spd_audio.c.

	* src/audio/spd_audio.c: New file: Audio output for Speech Deamon.

	* configure.in: Build src/audio.	

	* Makefile.am: Build src/audio.

	* src/Makefile.am: Build src/audio.

2003-04-25  Milan Zamazal  <pdm@brailcom.org>

	* INSTALL: Dependency on librecode added.
	* src/modules/Makefile.am (libsdapollo_la_LDFLAGS): -lrecode
	added.
	* src/modules/apollo.c: Include recode.h and stdbool.h.
	(recode_outer, recode_request): New variables.
	(module_init): Initialize them.
	(set_language): Set recoding.
	(apollo_write): Recode data.
	(set_speed): Renamed to set_rate.
	(apollo_write): Change above considered.
	(UPDATE_STRING_PARAMETER): Typo in the new_value NULL test fixed.

2003-04-24  Hynek Hanke  <hanke@volny.cz>

	* config/speechd.conf: english -> en
	
	* src/server/dc_decl.h: speed -> rate
	
	* src/server/speechd.h (fds_allocated): New variable.

	* src/server/sndicon.c (sndicon_key): Reworked, new key format introduced.

	* src/server/parse.c (parse_help): New function, SSIP HELP command.

	* src/server/msg.h (OK_HELP_SENT): New SSIP message.

	* src/server/set.c (set_client_name_self): Control if SET CLIENT argument has the
	proper format.

	* src/server/speechd.h (awaiting_data): Now ordinary dynamic array instead of GArray.
	(o_bytes): Now ordinary dynamic array instead of GArray.
	
	* src/server/parse.c (parse_set): Call the new settings functions.
	(parse_set): Added {id, self, all} to every SSIP settings command.

	* src/server/set.c: New function names set_*_uid, set_*_self, set_*_all.

	* src/server/parse.c (parse): Function moved from server.c.

	* src/server/parse.h: Prototypes for parse.c.

	* config/en/keys.conf: New keys format.

	* intl/fdset.h: speed->rate.

2003-04-24  Milan Zamazal  <pdm@brailcom.org>

	* src/modules/apollo.c: Include math.h.
	(set_speed, set_pitch): Allocate `command' as an empty array.  Use
	`snprintf', not `sprintf'.
	(apollo_write): Negate the return value.
	(send_apollo_command): Send carriage return additionally.
	(apollo_write): Convert line feeds to carriage returns.  Add a
	closing carriage return.

2003-04-23  Milan Zamazal  <pdm@brailcom.org>

	* src/modules/apollo.c: New file.
	* src/modules/Makefile.am (libsdapollo_la_SOURCES)
	(libsdapollo_la_LDFLAGS): New variables.
	(lib_LTLIBRARIES): libsdapollo.la added.

2003-04-18	Hynek Hanke	<hanke@volny.cz>

	* src/server/set.c (set_character_table): New function.
	(set_key_table): New function.
	(set_sound_table): New function.
	
	* src/server/parse.c (parse_set): New settings SSIP commands.
	
	* src/server/server.c (parse): New LIST SSIP command.

	* src/server/sndicon.c (sndicon_list_sound_tables): New function.
	(sndicon_list_char_tables): New function.
	(sndicon_list_key_tables): New function.
	(sndicon_list_punctuation_tables): New function.
	(sndicon_list_spelling_tables): New function.
	(sndicon_list_tables): New function.

	* src/server/dc_decl.h: New configuration options.

	* intl/fdset.h (TFDSetElement): Added tables for characters, keys, sound icons.

	* src/server/speechd.h (TSpeechDTables): New structure. 

	* src/server/speechd.c (speechd_init): Initialize lists of (speechd_init): Initialize lists of tables.tables.

	* config/speechd.conf: New options.

	* tables in config/en/: Added groups, the definition: tag.

	* src/server/msg.h: New SSIP return messages.

2003-04-17  Hynek Hanke  <hanke@volny.cz>

	* src/server/speechd.c (speechd_init): Initialize tables.

	* src/server/speechd.h (TSpeechDTables): New structure (lists of available tables).

2003-04-17	Hynek Hanke	<hanke@volny.cz>

	* src/server/server.c: Bug with cutting of messages when spelling and "punctuating" fixed.

2003-04-17	Hynek Hanke	<hanke@volny.cz>

	* src/server/server.c (queue_message): Additional parameter: type of the message.

	* src/server/server.c (process_message_spell): Free the GString.

	* src/server/sndicon.c (sndicon_icon): Call queue_message with message-type.

	* src/server/parse.c (set punctuation_table): New SSIP command.

	* src/server/msg.h: New return messages.

	* src/server/set.c (set_punctuation_table): New function.

	* src/server/speaking.c (speak): Don't change (spelling, punctuation) non-textual messages.

	* src/server/speechd.c (MSG): Free format_with_spaces memmory.

	* intl/fdset.h (EMessageType): New type for (text, char, key, sound_icon)

	* config/speechd.conf (DefaultPunctuationTable): New option.

2003-04-15	Hynek Hanke	<hanke@volny.cz>

	* INSTALL: Requierement to have automake 1.7+ added.
	Remove autoheader from requiered tools.
	
	* src/server/icons_en_conf: Old version removed.

2003-04-15  Hynek Hanke <hanke@volny.cz>

	* src/clients: Content moved to src/c/ ...

2003-04-15  Hynek Hanke  <hanke@volny.cz>

	* config/speechd.conf (PunctuationSome): New option.

	* intl/fdset.h (TFDSetElement): punctuation_some: new configuration string.

	* src/server/set.c (default_fd_set): Copy also punctuation_some.

	* src/server/dc_decl.h (cb_PunctuationSome): New dotconf callback

	* src/server/server.c (process_message_punctuation): New function, process punctuation.

	* src/clients/libspeechd.c (spd_say_key): Use KEY command.
	Parameter SELF added.

	* src/server/parse.c (parse_stop): Accept ID, ALL, SELF.
	(parse_cancel): Accept ID, ALL, SELF.

	* src/server/speaking.c: Functions regulating speech output moved here.

	* src/server/speaking.h: New header file for speaking.c

	* build.sh: New script for easier building from CVS.

	* config.status config.sub config.guess mkinstalldirs missing depcomp: Removed,
	unnecessary. Now generated by automake -a.


2003-04-14  Hynek Hanke  <hanke@volny.cz>

	* src/server/msg.h: ERR_PARAMETER_INVALID added.

	* src/server/speechd.c: (p_msg_lc), (p_msg_uid_lc): Moved to compare.c

	* src/clients/libspeechd.c (spd_cancel): New function.
	(spd_cancel_fd): New function.

	* src/clients/libspeechd.h (spd_cancel): New function.
	(spd_cancel_fd): New function.

	* src/server/parse.c (parse_set): set spelling parameter switched to on/off.
	(parse_set): set punctuation now accepts {all|some|none}

	* src/server/server.c (process_message_spell): Splitted from process_message.
	Correct UTF-8 handling.
	(spd_utf8_read_char): New function.
	(speak): Bug fixed: Pull message from queue 3 if there are more than zero, not one.
	
	* src/modules/flite.c (flite_write): Speech rate scale up to duration_stretch=4

	* src/server/compare.c: New file, functions for comparing fd's, id's and other
	data in elements of different lists moved here.

	* src/server/compare.h: New header file for compare.c

	* Makefiles: Use AM_CFLAGS instead of CFLAGS.

	* configure.in: Don't call AC_ARG_PROG, it is called before implicitly.

	* depcomp: New script. Needed for automake 1.7.2.

2003-04-12  Milan Zamazal  <pdm@brailcom.org>

	* src/server/parse.c: English grammar and spelling fixes.

2003-04-12  Hynek Hanke  <hanke@volny.cz>

	* src/modules/flite.c (flite_write): Rate scale tweaked.

	* src/server/server.c (speak): If spelling on, convert the message.
	(process_message): New function.

	* src/server/sndicon.c: New file for sound icons related functions.

	* src/server/sndicon.c: New header file for sndicon.c.

	* src/server/speechd.h: +sndicon.h

	* src/server/Makefile.am: Added snd_icon.c, snd_icon.h

	* src/server/parse.c: Use snd_icon.c functions.

	* config/speechd.conf: The various options have some comments now.
	Cleaned.

2003-04-11  Hynek Hanke  <hanke@volny.cz>

	* config/speechd.conf: Moved from speechd.conf.

	* Makefile.am: Added configuration for the new directory config/

	* configure.in: Added configuration for the new directory config/

	* INSTALL: Added info about config/, fixed some paths.

	* config/en: Configuration for English.

	* src/server/set.c (set_spelling_table): New function.

	* intl/fdset.h (TFDSetElement): New entry char* spelling_table. 

	* src/server/dc_decl.h (cb_DefaultSpellingTable): New function.
	(cb_AddTable): Moved from cb_AddSndIcon, apmplified.

	* src/server/parse.c (parse_key): New function.
	(parse_char): New function.
	(get_param): New parameter lower_case: 1 -> convert output to
	lower case.

	* src/server/server.c (parse): SND_ICON -> SOUND_ICON
	(parse): CHAR: new SSIP command, KEY: new SSIP command.

2003-04-11  Milan Zamazal  <pdm@brailcom.org>

	* INSTALL: Order of auto* tools invocations improved.

2003-04-09  Tomas Cerha  <cerha@freebsoft.org>

	* INSTALL (Module): Added `autoheader' to suggested compilation
	process.

2003-04-07  Milan Zamazal  <pdm@brailcom.org>

	* configure.in (AM_CONFIG_HEADER): Generate template for config.h,
	not config.h.in.

2003-04-06  Hynek Hanke  <hanke@volny.cz>

	* src/modules/flite.c (flite_write): Set rate and pitch.
	(flite_write): Support more voices (experimental AWB voice).
	* src/modules/Makefile.am: Include libflite_cmu_time_awb voice.
	* src/server/parse.c (parse_set): New SSIP command SET VOICE added.
	* src/server/set.c (set_voice): New function.
	* src/server/msg.h (OK_VOICE_SET): New SSIP message.
	(ERR_COULDNT_SET_VOICE): New SSIP message.
	* intl/fdset.h: EVoiceType now includes more than one male and female voices. 

2003-04-06  Hynek Hanke  <hanke@volny.cz>
	
	* src/server/msg.h OK_CANCELED: New SSIP message. 

	* src/server/dc_decl.h (cb_AddSndIcons): Typo. 

	* src/server/parse.c: Call the new stop-family functions.

	* src/server/speechd.h: +get_client_uid_by_fd().

	* src/server/set.c (get_client_uid_by_fd): New function.
	(get_client_settings_by_fd): Use get_client_uid_by_fd().

	* src/server/server.c (speaking_uid): New variable.
	(get_speaking_uid ()): New function.
	(speaking_stop ()): Moved from stop_c().
	(speaking_cancel ()): Moved from stop_c().
	(speaking_pause ()): Moved from stop_c().
	(speaking_resume ()): Moved from stop_c().
	(message_list_compare_uid): New function.
	(parse): cancel: new SSIP command.

2003-04-04	Hynek Hanke	<hanke@volny.cz>
	* src/server/server.c (stop_c): Return 0 after resume.
	* src/server/dc_decl.h (cb_AddSndIcons): Accept more files defining icons for the same language.
	* src/modules/festival.c: Prototype for Festival output plugin.
	* src/clients/say.c: Unused variables removed.

2003-04-02  Milan Zamazal  <pdm@brailcom.org>

	* src/server/msg.h: Multiple occurence of
	ERR_COULDNT_SET_PUNCT_MODE removed.

2003-03-30  Hynek Hanke <hanke@volny.cz>

	* src/server/dc_decl.h (cb_AddSndIcons): Read sound icons file
	from SYS_CONF/filename.conf.
	* src/server/server.c (serve): Check if the client connection
	isn't closed yet before write().
	* src/server/Makefile.am: Added snd_icons_en.conf to instalation.
	* src/server/speechd.h: Removed unnecessary history client search
	functions.
	* configure.in: etc/ -> etc/speechd/
	
2003-03-29  Hynek Hanke <hanke@volny.cz>

        * src/server/speechd.h (fdset): Now hash table -> faster searching. 
	* src/server/speechd.h (fd_uid): New hash table for fast searching of unique ids.
	* src/server/speechd.c (speechd_quit): Call FD_CLR for server socket.
	* src/server/server.c (fdset): Also includes non-active connections.
	* src/server/server.c (parse): Accept lower-case commands.
	* src/server/history.c (message_history): New global list for history.
	* src/server/history.c: Switching to global history.
	* src/server/history.h (THistoryClient): Deleted, we will use global list of history.
	* src/server/history.h (THistClientSet): Deleted, configuration moved to TFDSetElement.
	* src/server/parse.c (get_param): Accept longer parameters in quotation marks.
	* intl/fdset.h (TFDSetElement): History settings moved here.

2003-03-27  Hynek Hanke <hanke@volny.cz>
    * src/server/server.c: Compare against \r\n.\r\n only if there are enough bytes.

2003-03-27  Tomas Cerha  <cerha@brailcom.org>

	* INSTALL (Module): `robod' -> `speechd'.

	* INSTALL.in (Module): `robod' -> `speechd'.
	

2003-03-25  Hynek Hanke <hanke@volny.cz>
	* src/server/speechd.c: Logging messages switched to their levels of verbosity.
	* src/server/speechd.c (speechd_modules_terminate()): Call module_speak for each module being closed.
	* src/server/speechd.c (MSG): Now a function instead of macro.
	* src/server/speechd.h (MSG): Declaration.
	* src/server/speechd.h (FATAL) (DIE): Macros moved from src/intl/def.h 
	* src/server/server.c (speak()): Ignore all signals in this thread.
	* src/server/server.c: Logging messages switched to their levels of verbosity.
	* src/modules/flite.c (flite_close): Terminate the flite_speak() thread if speaking.
	* src/server/dc_decl.c (LogFile()): New DotConf callback function.	
	* src/intl/def.h: - MSG, FATAL, DIE
	* speechd.conf: + LogFile settings.

2003-03-24  Hynek Hanke <hanke@volny.cz>
	* src/server/server.c: Changes in SSIP.
	* src/server/set.c: Changes in SSIP.
	* src/server/history.c: Changes in SSIP.
	* src/server/parse.c: Changes in SSIP.
	* src/server/msg.h: Numerical codes of return values added.
	* src/clients/libspeechd.c: Changes in SSIP.
	* src/clients/spd_center.c: Priority 2 in menu -> priority 3.
	* src/clients/speechd.c: Some messages switched to another levels of verbosity.

2003-03-23  Hynek Hanke <hanke@volny.cz>
	* src/modules/flite.c (DEBUG_FLITE): A new switch.
	* src/modules/flite.c (flite_stop()): Send SIGKILL instead of SIGINT.
	* src/server/server.c: All stops are now called in the separate speak() thread (faster).
	* src/server/server.c (fd_settings): now hash_table instead of a list
	* src/server/server.c (speak()): Uses mutexes to be thread safe.
	* src/server/set.c (fd_settings): now hash_table instead of a list
	* src/server/history.c (fd_settings): now hash_table instead of a list
	* src/server/alloc.c: Functions for allocating and freeing data structures;
	* src/tests/long_message.c: New test trying to say two long texts.
	* src/server/speechd.c: select() now doesn't return unless there is some communication.
	* src/server/speechd.c: Speech Deamon now doesn't interrupt client's messages on @quit.
	* src/server/speechd.c: fd_settings now hash_table instead of a list
	* src/server/speechd.c (terminate_client): New function for unloading clients.
	* src/server/speechd.c (terminate_module): New function for unloading modules.
	* src/server/speechd.c (stop_c()): Uses mutexes to be thread safe.
	* src/server/module.c (load_output_module()): Write gmodule* into module_info.
	* src/server/Makefile.am: Added new sources.
	* src/clients/spd_center.c: Now uses priority 3 instead of sending @stops.
	* src/clients/libspeechd.c: (LIBSPEECHD_DEBUG): New define macro for debugging.
	* src/clients/libspeechd.h: (LIBSPEECHD_DEBUG): New define macro for debugging.
	* intl/def.h: (SPEECHD_DEBUG): New preprocesor variable for debugging.
	* intl/module.h (OutputModule): New entry gmodule*
	* Polished.


2003-03-13  Hynek Hanke <hanke@volny.cz>
    * src/modules/flite.c: Now uses threads and processes to get better performance.
    * src/modules/Makefile.am: Links also flite shared libraries.
    * src/clients/libspeechd.c: Cosmetical changes.
    * src/tests: New directory.
    * src/tests/Makefile.am: Makefile for new directory.
    * src/tests/multiple_messages.c: New file, a speed test.
    * src/server/server.c (speaking_module): Now directly a pointer to the module instead of its name.
    * src/server/server.c (speak): speak() is now a separate thread.
    * src/server/speechd.c (main): speak_thread initialization.
    * src/server/speechd.h (speak_thread): New thread for speak().
	* src/Makefile.am: Added new directory tests.
	* configure.in: Added tests for pthread and flite shared libraries.
	* INSTALL: Note about the requierement to have compiled flite with shared libraries.
	* speechd.conf: Default values of speed and pitch of voice now 0, not 100.

2003-03-16  Tomas Cerha  <cerha@brailcom.org>

	* README: Robod -> Speech Daemon.

	* INSTALL: pkg-config and libtool added to requirements.  
	Robod -> Speech Daemon.  Cosmetical changes.

2003-03-13  Hynek Hanke	 <hanke@volny.cz>
	* src/modules/flite.c: Bug with swapped flite_is_speaking() and flite_close() fixed.
	* src/intl/module.h: Bug with swapped flite_is_speaking() and flite_close() fixed.

2003-03-12  Hynek Hanke  <hanke@volny.cz>

	* src/clients/libspeechd.c (spd_say()): Bug with @data off corrected.
	* src/clients/libspeechd.c (spd_voice_rate()): Renamed from spd_voice_speed().
	* src/clients/libspeechd.c (spd_voice_punctuation()): Now accepts 3 values (0=no,1=full,2=some).
	* src/server/server.c (parse()): o_buf now doesn't have fixed size.
	* src/clients/say.c (main()): Things that shouldn't be there removed.
	* src/server/parse.c (parse_set): New SSIP commands for settings.
	* src/server/set.c: New SSIP commands for settings.
	* src/modules/flite.c (flite_pause()): Function removed, unnecessary.
	* src/modules/flite.c (flite_resume()): Function removed, unnecessary.
	* src/modules/flite.c (flite_close()): New function.
	* src/modules/festival.c (festival_pause()): Function removed, unnecessary.
	* src/modules/festival.c (festival_resume()): Function removed, unnecessary.
	* src/modules/module.h (OutputModule): Reworked.
	* src/server/msg.h: New SSIP messages for the settings commands.
	* src/server/set.h: Headers for new settings functions.

2003-03-12  Milan Zamazal  <pdm@brailcom.org>

    * src/clients/libspeechd.c: `speed' -> `rate'.
    * src/clients/libspeechd.h: Likewise.
    * src/clients/spd_center.c: Likewise.


2003-03-09  Hynek Hanke  <hanke@volny.cz>

	* src/clients/libspeechd.c (spd_icon()): New function.
	* src/clients/libspeechd.c (spd_say_letter()): New function.
	* src/clients/libspeechd.c (spd_say_digit()): New function.
	* src/clients/libspeechd.c (spd_say_sgn()): New function.
	* src/clients/libspeechd.c (spd_say_key()): New function.
	* src/clients/libspeechd.c (spd_voice_speed()): New function.
	* src/clients/libspeechd.c (spd_voice_pitch()): New function.
	* src/clients/libspeechd.c (spd_voice_punctuation()): New function.
	* src/clients/libspeechd.c (spd_voice_cap_let_recognition()): New function.
	* src/clients/libspeechd.h: Declarations of new functions.
	* src/server/server.c (queue_message()): Splitted from parse().
	* src/server/server.c (parse()): Added handling for new SSIP command @snd_icon.
	* src/parse.c (parse_snd_icon()): New function.
	* src/server/snd_icons_en.conf: New file. Rules for sound icons in English.
	* src/server/dc_decl.c (cb_AddSndIcons): New DotConf callback.
	* src/server/speechd.h (snd_icon_langs): New hash table for maintaining information about defined sound icons.


2003-03-05  Milan Zamazal  <pdm@brailcom.org>

	* INSTALL: libdotconf added to the required software.  Current way
	of the build process mentioned.

2003-03-04  Milan Zamazal  <pdm@brailcom.org>

	* src/clients/say.c (main): Dummy `cl_active' argument added to
	the `spd_get_client_list' call.

01.02.2003	Hynek Hanke <hanke@volny.cz>
	* Added copyright notices to each file, better comments.
	* doc/: Switched to Texinfo.

11.1.2003	Hynek Hanke <hanke@volny.cz>

	* /src/client/spd_center.c (spdc_complete): String completion from given template.
	* /src/client/spd_center.h (quit()): endwin() added to fix the weird behavior after quitting.
	* /src/client/spd_center.h (TComplete): Data type for string completion.
	* /src/server/server.c: Handling of pause messages moved to stop_c(), because the problem of queues (we can't browse through them) is solved by using list and treating them as semi-queues instead.
	* /src/client/libspeechd.c (spd_history_say_msg()) (spd_history_select_client()) (spd_get_message_list_fd()): New functions.

4.1.2003	Hynek Hanke	<hanke@volny.cz>

	* /src/server/speechd.c (main): Added handling for SIGINT and the function quit() 
	* /src/server/speechd.c (history_list_alloc_message): Bug with not copying the actual data of settings.language,output_module and client_name, but only pointers to them fixed.
	* /src/server/server.c (serve): Bug with the missing FD_CLR() fixed.
	* /src/server/server.c (awaiting_data): the size of awaiting_data array is now handled in speechd.c
	* /src/server/server.c (stop_c): the section handling @stop completely reworked.
	* /src/client/spd_center.c: Implemented command input/menu logic.
	* /src/client/spd_center.c (selected): New data structure for maintaining record of what has the user selected (which client has he chosen, which subclient, which mode of sorting, etc.)
	* /src/clients/spd_center.c (spdc_initialize()): Fills _selected_ with default values.
	* /src/clients/spd_center.c: Strings prepared for gettext().
	* /src/clients/spd_center.h: New header file for spd_center.c
	* /src/clients/spd_center.c (run_cmdl()): Pause and resume functions implemented (pause(), pause(fd), pause_cur_client(), resume(), resume(fd), resume_cur_client()).
	* /src/clients/spd_center.c (run_cmdl()): Stop functions implemented (stop(), stop(fd), stop_cur_client()).
	* /src/server/speechd.c (stop_c): New parameter _target_ for stopping other clients (needed for spd_center).
	* /src/clients/libspeechd.c (spd_stop_fd(fd): Stop messages from other client fd.
	* /src/clients/libspeechd.c (spd_pause_fd(fd): Pause messages from other client fd.
	* /src/clients/libspeechd.c (spd_resume_fd(fd): Resume messages from other client fd.
	* /src/server/parse.c: Added support for @stop, @pause, @resume with parameter.
	* /src/server/set.c: Added support for @stop, @pause, @resume with parameter.
	* /intl/def.h (FATAL()): Now prints the exact line and fil when the error ocured.
	* /intl/fdset.h (TFDSetElement): Added new record int uid for unique id of the client.


16.12.2002	Hynek Hanke	<hanke@volny.cz>

	* /src/server/speechd.c (main): Test for msgs_to_say, select has timeout of 10us, but added a sleep() after each cycle (highly reduces CPU usage).
	* /src/server/speechd.h (msgs_to_say): New global variable: number of messages to be said (for lower CPU usage)
	* /src/client/spd_center.c: New file. Speech Deamon Center -- combined history and configuration client.
	* /src/server/Makefile.am: Sysconfdir passed to gcc as -D from @sysconfdir@ (needed for loading speechd.conf).
	* /src/server/Makefile.am: Libdir passed to gcc as -D from @libdir@.
	* /src/server/history.c (history_say_id()): msgs_to_say incremented.
	* /src/server/history.c (history_get_message_list()): Find proper client, added third parametr client_id.
	* /src/server/history.c: Multiline commands now terminate with '\'.
	* /src/server/history.c (send_data()): char *reply returned is now dynamic.
	* /src/server/parse.c (history_get_message_list()): Added third parametr client_id for @history get message_list.
	* /src/server/set.c (set_client_name()): Now affects also history client settings.
	* /src/client/libspeechd.c: Multiline return values. History get clients/messages function.
8.12.2002	Hynek Hanke	<hanke@volny.cz>

	* Renamed back to Speech Deamon

2.11.2002	Hynek Hanke	<hanke@volny.cz>

	* gdsl --> glib2 transaction
	* polished
	* Autoconf and all it's standard files and various Makefile.am
	* /src/server/msg.h: New file defining the messages transmitted between client and server.
	* /src/server/parse.c: Functions related to parsing the input from the client moved here.
	* /src/server/set.c: Functions related to setting parameters of the client/server session moved here.
	* /src/server/set.c (set_client_name()): New function: @set client_name implemented.
	* /src/server/server.c: Polished, some functions moved to set.c and parse.c.
	* /src/server/server.c (parse()): The ugly 3 static arrays are now dynamic ones defined in robod.h and initialized in robod.c
	* /src/server/history.c (history_cursor_set_last()): Bug fixed: move to the last entry _minus_one_ (this is a property of glib)
	* /src/server/dc_decl.h: Added configuration for DefaultModule, DefaultSpeed, DefaultPitch, DefaultLanguage, DefaultPriority, DefaultPunctuationMode, DefaultClientName, DefaultVoiceType, DefaultSpelling, DefaultCapLetRecognition.
	* /src/server/dc_decl.h: New file with definitions of DotConf callbacks and other things related to DotConf.
	* /src/server/Makefile.am: Added set.c, msg.h, parse.c.
	* configure.in: Configuration for autoconf.
	* /src/client/robodlib.c (rbd_sayf()): New function: the same as say, but formated in the printf() style.
	* /src/client/robodlib.c (rbd_stop()): New function.
	* /src/client/robodlib.c (rbd_pause()): New function.
	* /src/client/robodlib.c (rbd_resume()): New function.
	* /src/client/robodlib.c (rbd_init()): The part where connection name is set now working.

07.07.2002	Hynek Hanke <hanke@volny.cz>
	* /src/server/server.c (history_()): New functions called.
	* /src/server/server.c: Cosmetic changes.
	* /src/server/server.c: History functions moved to history.c.
	* /src/server/server.c: Messages are now inserted on tail of lists and got from it's head.
	* /src/server/history.h: New header file for history commands.
	* /src/server/history.c: New file for history commands.
	* /src/server/history.c (history_get_message_list()): New function.
	* /src/server/history.c (history_cursor_set_last()): New function.
	* /src/server/history.c (history_cursor_set_first()): New function.
	* /src/server/history.c (history_cursor_set_pos()): New function.
	* /src/server/history.c (history_cursor_next()): New function.
	* /src/server/history.c (history_cursor_prev()): New function.
	* /src/server/history.c (history_cursor_next()): New function.
	* /src/server/history.c (history_cursor_get()): New function.
	* /src/server/history.c (history_say_id()): New function.
	* /src/server/history.c (client_compare_id()): Moved from server.c; renamed.
	* /src/server/history.c (histset_compare_fd()): Moved from server.c; renamed.
	* /src/server/history.c (message_compare_id()): Moved from server.c; renamed.
        * /src/server/speechd.c: History clients are now inserted on tail of list. (more logical)
        * /src/server/speechd.c (default_fd_set): Bug with client_name fixed.
        * /src/server/speechd.h (THistSetElement): New type of structure for settings for each active client.
        * /src/server/speechd.h: (ESort) New enum type for sorting modes.
        

07.02.2002	Hynek Hanke <hanke@volny.cz>
	* /src/server/server.c (stop_speaking_active_module): New function divided from stop_c().
	* /src/server/server.c (history_get_client_list): New function implementing @history get client_list
	* /src/server/server.c (message_nto_speak): Changed name from message_to_speak (more logical). Added parameter void* value so that it's useful also as compare function for searching through queues and lists.
	* /src/server/server.c (MessagePausedList): Added list for messages that we get from output queues but it's client is paused. We browse through this list every cycle to see if some client have sent @resume.
	* /src/server/server.c (o_buf[fd][0] = 0;): Bug fixed.
	* /src/server/speechd.h (TFDSetElement): Moved to /include/fdset.h
	* /src/server/speechd.h (EVoiceType): Moved to /include/fdset.h
	* /src/server/speechd.h (client_name): Uncomented, now used.
	* /src/server/speechd.c : Now working with client_name.
	* /src/modules/flite.c (TFDSetElement): Moved to /include/fdset.h
	* /src/modules/flite.c (EVoiceType): Moved to /include/fdset.h
	* /include/fdset.h : New include file used in both modules and server.
