Asterisk Programming

Dear All,
I am pretty new for the Asterisk platform and am in a set of question to be get clarified.
I have needed to reply a voice output for a user who would be dialing a certain pattern of number on Asterisk. For example, if a user dials 111, then i should send him a voice record which is predefined.(see 3 below)

  1. How could i detect whether the user had dialed 111 on Asterisk?

  2. how do i send the output voice record to the user?

  3. I think of generating this output-voice-record using a text-to-speech tool. For that a database would be maintained seperately with the mapping of possible patterns of numbers and the relevant texts to be speeched out. And once the user dials a number, go fetch the relevant text to be pronounced and use a text-to-speech tool to generate the sound-version of that text and send the user that as the output. Could you please give me some clues on this approach?

I am quite new to Asterisk as mentioned, I am so sorry if I am asking out very simple questions, but your advices are really admired.

Thanking in advance