When asterisk sends the AMI event DTMFEnd?

I’m a little confused about the AMI event DTMFEnd. If I receive a DTMF digit via a PJSIP channel, AMI raises a DTMFEnd event.
So, everything is fine.

If I send a DTMF digit with the AMI action PlayDTMF I have seen two differnt behaviours!

First behaviour:
If I use in the PlayDTMF action a PJSIP channel name, the DTMF digit is sent but no DTMFEnd event is raised.

Second behaviour:
If I use in the PlayDTMF action a LOCAL channel, which is linked to PJSIP channel, the DTMF digit is sent and a DTMFEnd event is raised.

I do not understand the different behaviour!

Is it possible that asterisk raise the DTMFEnd event in case of using a PJSIP channel?
Is it a configuration problem?

I’m using asterisk 13.9.1.

The DTMFEnd event is raised when received DTMF is ended. It does not get raised when DTMF is sent to a channel (like using PlayDTMF).

In the case of a Local channel the behavior you are seeing is expected because it is sent on one side of a Local channel and received on the other.

1 Like

Thank you for the information!

However, the DTMFEnd event has a field “sent” and that field is only set if an inter-channel (LOCAL to PJSIP and visa versa), is that right?

Actually you’re right, it should be raised for both. I don’t know why I didn’t catch that before. We’d need to see a full log to understand what is going on in that scenario.