Play sounds to active SIP call

I am fairly new to Asterisk and trying to find the best possible way on how to perform this task. Any pointer will be very welcome! I need to know enough in order to describe it to a freelancer that will create this system for me.

I need a system where client register with my SIP/Asterisk server. When doing a call (to a cell phone, trough a sip trunk provider), I need 2 things to happen;

-A constant background sound should be played continuously during the entire call. This should be from a file on the server.

-When a given thing happen on the server (for example, the user log in), a sound will be played to the call. This is the tricky part. There will be a few different sounds, and they need to be played only to the correct active call. I suppose the client can register to the server using a unique identifier string.

The background sound should be easy as it’s the same sound for all calls, however, I really need some pointers on how to solve the playback of the custom sounds.

How should such a system be designed?

Very happy for all kind of help on this!

I have done this task before using Originate Ami Action Local channel and chanspy

Try option G of Dial (https://wiki.asterisk.org/wiki/display/AST/Asterisk+11+Application_Dial) application along with Chanspy (https://wiki.asterisk.org/wiki/display/AST/Asterisk+11+Application_ChanSpy) application.

–Satish Barot