Tuesday, October 21, 2008

Free g.729 and g.723.1 codecs

Download the codecs from http://asterisk.hosting.lv. Separate codecs are available for both g.729 and g.723.1.

Because the free ones are pre-compiled, we'll need to download the correct codec for the Asterisk box. Run cat /proc/cpuinfo and note the output. Look specifically at the model name and the flags, such as:

Process: 0
vendor_id: Genuine Intel
cpu family: 6
model: 8
model name: Pentium III (Coppermine)
stepping: 3
cpu MHz: 648.110
cache size: 256 KB
fdiv_bug: no
hlt_bug: no
f00f_bug: no
coma_bug: no
fpu: yes
fpu_exception: yes
cpuid level: 2
wp: yes
flags: fpu vme de pse tsc msr pae mce cx8 mtrr pge mca cmov pat pse36 mmx fxsr sse
bogomips: 1297.41

From this information we can see that it is a Pentium III processor and it is using sse. This is the 2 bits of required information that we need. If you don’t see sse in your flag then the file you need must contain the words no-sse.

So from the information above to obtain the G729 codec we need to get the file codec_g729-gcc-pentium3.so and for the G723 codec we need to get the file g723-gcc-pentium3.so.

After downloading the codec, store it in /usr/lib/asterisk/modules.

Note: if Asterisk doesn't start, you may need to download the icc versions instead of the 'gcc' ones.

Slimming down Asterisk

Use the following as a starting point:

[modules]
autoload=no

load => res_indications.so
load => res_features.so
load => res_agi.so
load => res_crypto.so
load => res_musiconhold.so

load => pbx_functions.so
load => pbx_spool.so
load => pbx_loopback.so
load => pbx_config.so

;load => chan_zap.so
load => chan_local.so
load => chan_features.so
load => chan_sip.so

;load => cdr_manager.so
;load => cdr_pgsql.so
load => cdr_addon_mysql.so
load => cdr_csv.so

load => codec_adpcm.so
load => codec_gsm.so
load => codec_a_mu.so
load => codec_ulaw.so
load => codec_alaw.so
load => codec_g726.so

load => format_gsm.so
load => format_wav_gsm.so
load => format_g723.so
load => format_g726.so
load => format_g729.so
load => format_pcm_alaw.so
load => format_pcm.so
load => format_sln.so
load => format_wav.so

load => func_callerid.so

load => app_playback.so
load => app_softhangup.so
load => app_setcidname.so
load => app_milliwatt.so
load => app_macro.so
load => app_verbose.so
load => app_setcdruserfield.so
load => app_read.so
load => app_dial.so
load => app_cdr.so
load => app_cut.so
load => app_echo.so
load => app_setcallerid.so
load => app_readfile.so
load => app_setcidnum.so
load => app_db.so

[global]
chan_modem.so = no

Storage calculation for Recordings

Basic calculation
Based on self-generated white noise file of 30 seconds, sampled at 8KHz in GSM format:
  • 30 secs requires 49KB space
  • 1 min -> 100KB
  • 1 hr -> 6MB

Assumptions
  • Operating hours: 9 hours a day, 26 days a month
  • Phone lines are 100% saturated 100% of the time:
  • Total hours a month = 30 * 9 * 26 = 7,020 hours of recording
  • Total server storage capacity = 600GB
  • OS and applications consume 100GB. Remaining space = 500GB
  • 7,020 hrs -> 42GB, e.g. 1 month requires 42GB storage space

Storage capacity approximations
  • 60GB = 10,000 hours = 416 days' worth of recordings
  • 80GB = 13,333 hours = 555 days' worth of recordings
  • 100GB = 16,666 hours = 695 days' worth of recordings
  • 120GB = 20,000 hours = 832 days' worth of recordings
  • 160GB = 26,666 hours = 1,111 days' worth of recordings
  • 200GB = 33,333 hours = 1,388 days' worth of recordings

Zimbra : Spam & AV

http://www.zimbra.com/forums/administrators/5286-spam-problems-print.html
http://sietse.net/exoops/modules/Zimbra/#tt030
http://www.howtoforge.com/adding-and-updating-spamassassin-rulesets-with-rulesdujour
http://www.zimbra.com/forums/administrators/2877-spam-accounts-auto-training-error-print.html
http://www.zimbra.com/forums/administrators/1015-solved-howto-update-clamav.html
http://www.zimbra.com/forums/administrators/3743-clamav-upgrade.html#post21195
http://www.clamav.net/download/sources
http://wiki.zimbra.com/index.php?title=Updating_CLAMAV