[Asterisk-Users] Having Trouble Creating an IVR

Tzafrir Cohen tzafrir at cohens.org.il
Wed Jul 13 09:00:20 MST 2005


On Wed, Jul 13, 2005 at 11:22:36AM -0400, Tim P wrote:
> Ok it seems that the sipura ata was causing part of the problem (not
> being able to call the extension).  I am now able to call the
> extension and get the beep prompt to begin recording but it immediatly
> hangs up.  I would suspect a write permissions issue but everyone has
> full write permissions to /tmp (IVR temporary storage) 

deleting a predicatable name in /tmp without verifying first it has
existed exposes you to a symlink attack. Not that big a threat, but
somrthjing to be avoided if it's not too big an issue.

> and
> asterisk:asterisk (user:group) has full permissions to
> /var/lib/asterisk/sounds which according to the wiki is where the
> permanent files are stored.
> 
> CLI gives the following when using the *77
> 
> obstructor:~# asterisk -rcvvvvv
>   == Parsing '/etc/asterisk/asterisk.conf': Found
>   == Parsing '/etc/asterisk/extconfig.conf': Not found (No such file
> or directory)
> Asterisk 1.0.5, Copyright (C) 1999-2004 Digium.
> Written by Mark Spencer <markster at digium.com>
> =========================================================================
> Connected to Asterisk 1.0.5 currently running on obstructor (pid = 702)
> Verbosity was 0 and is now 5
>     -- Executing Wait("SIP/102-d087", "2") in new stack
>     -- Executing Record("SIP/102-d087", "102ivrrecording:wav") in new stack

This is probably /usr/share/asterisk/sounds/102ivrrecording.wav , which
should not be writable.

Indeed, there is no reason for you to modify most of the sounds. They
should reside on the flash. Maybe have sounds/rw that will be a symlink
or bind-mounted?

My current 'record' extension:

exten => 210,1,Record(/usr/share/asterisk/sounds/voicemail/rec:gsm)
exten => 210,2,Playback(voicemail/rec) 


>     -- Playing 'beep' (language 'en')
>     -- Executing Wait("SIP/102-d087", "2") in new stack
>     -- Executing Hangup("SIP/102-d087", "") in new stack
>   == Spawn extension (from-internal, *77, 4) exited non-zero on 'SIP/102-d087'
>     -- Executing Macro("SIP/102-d087", "hangupcall") in new stack
>     -- Executing ResetCDR("SIP/102-d087", "w") in new stack
>     -- Executing NoCDR("SIP/102-d087", "") in new stack
>     -- Executing Wait("SIP/102-d087", "5") in new stack
>     -- Executing Hangup("SIP/102-d087", "") in new stack
>   == Spawn extension (macro-hangupcall, s, 4) exited non-zero on
> 'SIP/102-d087' in macro 'hangupcall'
>   == Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/102-d087'
> obstructor*CLI>
> 
> 
> As for the system setup I boot from a compact flash card that is
> read-only and have a hard drive that I write voicemails and database
> files to for AMP.  

Where exactly is the database stored? 

> I installed via apt-get.  This allows for the user
> to reboot teh machine at will and saves me the trouble of a corrupted
> system when it is unexpectedly shutdown.

There are better and safer ways to allow the user to reboot. A mysql
database does not strike me as the best way to ensure that goal.

-- 
Tzafrir Cohen         | tzafrir at jbr.cohens.org.il | VIM is
http://tzafrir.org.il |                           | a Mutt's  
tzafrir at cohens.org.il |                           |  best
ICQ# 16849755         |                           | friend



More information about the asterisk-users mailing list