Asterisk 星号:播放最后录制的文件?

Asterisk 星号:播放最后录制的文件?,asterisk,asteriskami,asterisk-ari,asterisk-ael,Asterisk,Asteriskami,Asterisk Ari,Asterisk Ael,如我所见,我可以使用Asterisk cmd monitor录制通话,然后使用ControlPlayback播放录制的文件。默认的basename是在频道名加上一个数字的基础上构建的,那么我如何播放最后一个呼叫呢? 例如:我有3个call,call1,call2,call3,频道是111,那么我如何才能得到最后一个调用(call3)的名称来播放?一个简单的方法是使用全局变量来存储记录的文件名 [call] exten => s,1,Answer() exten => s,n,MixM

如我所见,我可以使用Asterisk cmd monitor录制通话,然后使用ControlPlayback播放录制的文件。默认的basename是在频道名加上一个数字的基础上构建的,那么我如何播放最后一个呼叫呢?
例如:我有3个call,call1,call2,call3,频道是111,那么我如何才能得到最后一个调用(call3)的名称来播放?

一个简单的方法是使用全局变量来存储记录的文件名

[call]
exten => s,1,Answer()
exten => s,n,MixMonitor(${UNIQUEID}.wav)
exten => s,n,Set(GLOBAL(lastcall)=${UNIQUEID})
exten => s,n,Dial(...)

[listen]
exten => s,1,Answer()
exten => s,n,Wait(1)
exten => s,n,Playback(${GLOBAL(lastcall)}.wav)
要了解有关GLOBAL()函数的更多信息,请执行以下操作:

asterisk*CLI> core show function GLOBAL

  -= Info about function 'GLOBAL' =-

[Synopsis]
Gets or sets the global variable specified.

[Description]
Set or get the value of a global variable specified in <varname>

[Syntax]
GLOBAL(varname)
asterisk*CLI>核心显示函数全局
-=有关函数“全局”的信息=-
[简介]
获取或设置指定的全局变量。
[说明]
设置或获取中指定的全局变量的值
[语法]
全局(varname)

这个问题无法回答,因为它只是拨号计划工作和拨号计划。