Outgoing Call file playback & replay

I am new on Asterisk. Recently, our company ask me to build a function that makes a call to different local telephone numbers and play a voice file which generated by Google translate.
Every time the telephone and voice file are different. The solution I come out like that:
(1) Enable Asterisk outcoming function.
(2) Write a script to generate google translate voice file and outgoing call file.
(3) Every time the event triggered. Generate the voice file and call file. Then mv call file to the outgoing folder with the voice file path to call.
So far so good. But what if the recipient would like to replay the voice file. The call file setting is
simple like below:

Channel: DAHDI/3-1/[random telephone number]
Application: Playback
Data:[google translate generated voice file]

Any way to let recipient to replay the voice file? Thanks in advance.

Then you will need to use an extension, rather than an application. The extension name can include the name of the file.

Thanks for reply, but I am too new. XD
How do I include the name of the file? Is it in call file or in extentions.conf? if in extentions.conf, how can I play different voice file every time?
Can you make an example to help me? I appreciate that.

Although someone might contribute something they have already written, generally for that level of help you need to pay someone. There is a Biz and Jobs forum for making requests for paid support.

A quick a sample could be :

call file

Channel: SIP/2000
MaxRetries: 2
RetryTime: 60
WaitTime: 30
Context: call-file-test
Extension: 10

exten => 10,1,Answer()
exten => 10,n,Wait(1)
exten => 10,n,Playback(hello-world)
exten => 10,n,Wait(1)
exten => 10,n,Hangup()

Read the following link for a better understanding.

Neither the Answer nor the Hangup serve any useful purpose here.

To do what I was suggesting, the dialplan needs to use something like _[a-zA-Z0-9]. and it needs to do Playback(${EXTEN}).

My dial example was not trying to make any reference to what you suggest. It was just a general concept that he needs to modify to his needs

Hi ambiorixg12, thanks for your help. I have considered this way to do but how can I dynamic change playback voice file every time. The voice file is generated by google translate every time.
The way I think is to write a new dialplan at the same time to extensions.conf before call file moved to outgoing folder. Is it a good way?

Channel: SIP/1000
WaitTime: 60
Context: playprompt
Extension: s
Priority: 1
Set: filename=/path/to/my/file

exten => s,1,Playback(${filename})
same => n,Hangup()

Note: filename is a path of your actual file without extension

–Satish Barot

Thanks Satish. It works. Thank you very much.