Magellan Linux

Diff of /trunk/citrix-plugin-speechmike/speechmike-config.in

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2089 by niro, Fri Mar 22 09:57:39 2013 UTC revision 2090 by niro, Fri Mar 22 12:15:12 2013 UTC
# Line 4  die() { echo "ERROR: $@;" exit 1; } Line 4  die() { echo "ERROR: $@;" exit 1; }
4    
5  check_prereqs()  check_prereqs()
6  {  {
7   type -P @@BINDIR@@/nuainitool || die "missing nuainitool"   type -P @@BINDIR@@/nuainitool > /dev/null || die "missing nuainitool"
8    
9   if [ -e ${ICAROOT}/config/module.ini ]   if [ -e ${ICAROOT}/config/module.ini ]
10   then   then
# Line 17  check_prereqs() Line 17  check_prereqs()
17   fi   fi
18  }  }
19    
20    value_set()
21    {
22     local value="$1"
23     local i
24     local count="${#DRIVERS[*]}"
25    
26     for ((i=0; i < count; i++))
27     do
28     if [[ ${DRIVERS[${i}]} = ${value} ]]
29     then
30     return 0
31     fi
32     done
33    
34     return 1
35    }
36    
37  install_modules()  install_modules()
38  {  {
39   local virtualdrivers   local virtualdrivers
40     local expanddrivers
  virtualdrivers=$(@@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "VirtualDriver")  
41    
42   # expand philips and nuance drivers   # parse and expand philips and nuance drivers to an array
43   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "VirtualDriver=${virtualdrivers}, SbExt, PspMix, PSPDPM, SpeechMike, SpeechMikeAudio, SpeechMikeMixer"   virtualdrivers=$(@@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "VirtualDriver")
44   # backup virtualdriver entry   eval DRIVERS=( ${virtualdrivers//,} )
45   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" ";** Original_VirtualDriver=${virtualdrivers}"   for i in SbExt PspMix PSPDPM SpeechMikeAudio SpeechMikeMixer SpeechMike
46     do
47     # only add missing drivers
48     value_set ${i} || expanddrivers+=", ${i}"
49     done
50     @@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "VirtualDriver=${virtualdrivers}${expanddrivers}"
51    
52   # enable extensions   # enable extensions
53   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "SbExt=On"   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "SbExt=On"
# Line 65  install_modules() Line 86  install_modules()
86    
87   #PSPDPM driver settings   #PSPDPM driver settings
88   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "PSPDPM" "DriverName=VDPSPDPM.DLL"   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "PSPDPM" "DriverName=VDPSPDPM.DLL"
89   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "SpeechMikeMixer" "LIB_DIR=@@SPEECHMIKELIBDIR@@"   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "PSPDPM" "LIB_DIR=@@SPEECHMIKELIBDIR@@"
90   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "SpeechMikeMixer" "LIB_NAME=libCtxHidMan.so"   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "PSPDPM" "LIB_NAME=libCtxHidMan.so"
91   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "SpeechMikeMixer" "DPM_DIR=@@DPMTEMPDIR@@"   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "PSPDPM" "DPM_DIR=@@DPMTEMPDIR@@"
92   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "SpeechMikeMixer" "DPM_DRIVE=@@DPMDRIVELETTER@@"   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "PSPDPM" 'DPM_DRIVE=@@DPMDRIVELETTER@@'
93  }  }
94    
95  remove_modules()  remove_modules()
96  {  {
97   local virtualdrivers   local virtualdrivers
98     local driver
99     local finaldrivers
100   local i   local i
101     local count
102    
103     # parse modules and remove from array
104   virtualdrivers=$(@@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "VirtualDriver")   virtualdrivers=$(@@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "VirtualDriver")
105     eval DRIVERS=( ${virtualdrivers//,} )
106   # now remove all drivers   # delete from array
107   for i in SbExt PspMix PSPDPM SpeechMikeAudio SpeechMikeMixer SpeechMike   count="${#DRIVERS[*]}"
108     for (( i=0; i < count; i++))
109     do
110     for driver in SbExt PspMix PSPDPM SpeechMikeAudio SpeechMikeMixer SpeechMike
111     do
112     if [[ ${driver} = ${DRIVERS[${i}]} ]]
113     then
114     # reset
115     DRIVERS[${i}]=""
116     # no unneccessary parsing required anymore
117     continue
118     fi
119     done
120     done
121     # rebuild final driver list
122     for i in ${DRIVERS[*]}
123   do   do
124   virtualdrivers="${virtualdrivers//, ${i}}"   if [[ -z ${finaldrivers} ]]
125     then
126     finaldrivers="${i}"
127     else
128     finaldrivers+=", ${i}"
129     fi
130   done   done
131   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "VirtualDriver=${virtualdrivers}"   @@BINDIR@@/nuainitool -f ${MODULEINI} -s "ICA 3.0" "VirtualDriver=${finaldrivers}"
132    
133   # remove modules   # remove modules
134   @@BINDIR@@/nuainitool -f ${MODULEINI} -D -s "ICA 3.0" "SbExt"   @@BINDIR@@/nuainitool -f ${MODULEINI} -D -s "ICA 3.0" "SbExt"
# Line 113  remove_modules() Line 158  remove_modules()
158  }  }
159    
160  case $1 in  case $1 in
161   install) install_modules ;;   install)
162   remove) remove_modules ;;   check_prereqs
163     install_modules
164     ;;
165     remove)
166     check_prereqs
167     remove_modules
168     ;;
169   *)   *)
170   echo "Usage: $(basename $0) [action]"   echo "Usage: $(basename $0) [action]"
171     echo
172   echo "Available actions are:"   echo "Available actions are:"
173   echo " install - installs speechmike modules in modules.ini"   echo " install - installs speechmike modules in modules.ini"
174   echo " remove  - removes speechmike modules in modules.ini"   echo " remove  - removes speechmike modules in modules.ini"
175     echo
176   ;;   ;;
177  esac  esac
178    

Legend:
Removed from v.2089  
changed lines
  Added in v.2090