函数,该函数在extensions.conf-asterisk中返回一个值

函数,该函数在extensions.conf-asterisk中返回一个值,asterisk,telephony,Asterisk,Telephony,我想在星号中的extensions.conf中执行以下操作: 读入用户输入的数字。-轻松的 将该数字输入到返回wav文件的脚本中 然后播放该wav文件 我知道系统命令,但无法找到返回值的方法 欢迎任何帮助, 谢谢, 斯里拉姆。我用这些东西。Idea类似于用于Web服务器的CGI脚本。您可以使用各种语言,但我使用Python和库。这样的AGI脚本/程序可以读取或设置通道变量,并通过这种方式与星号拨号计划通信 使用pyst agilib的此类代码示例: wav_to_play = 'other.wa

我想在星号中的extensions.conf中执行以下操作:

  • 读入用户输入的数字。-轻松的
  • 将该数字输入到返回wav文件的脚本中
  • 然后播放该wav文件 我知道
    系统
    命令,但无法找到返回值的方法

    欢迎任何帮助,
    谢谢,
    斯里拉姆。

    我用这些东西。Idea类似于用于Web服务器的CGI脚本。您可以使用各种语言,但我使用Python和库。这样的AGI脚本/程序可以读取或设置通道变量,并通过这种方式与星号拨号计划通信

    使用
    pyst agilib
    的此类代码示例:

    wav_to_play = 'other.wav'
    user_nr = agilib.get_variable('user_entered_number')
    if not user_nr:
        wav_to_play = 'nothing.wav'
    elif user_nr.endswith('0'):
        wav_to_play = 'zero.wav'
    # ...
    agilib.set_variable('wav_selected', wav_to_play)
    
    wav_selector.agi
    中保存此类代码后(必须添加普通Python头、libs等),您可以在拨号计划中使用它,如:

    exten => s,n,Set(user_entered_number=5)
    exten => s,n,AGI(wav_selector.agi)
    exten => s,n,Background((${wav_selected})
    

    可以让程序/脚本将值写入文件,然后使用星号中的函数(如
    ReadFile
    )获取值。可以这样做:

    在脚本中:
    echo-n${value}>${fileName}

    从星号内开始:
    extn=>0,n,ReadFile(ValueReadFromFile=${fileName},${MAX\u FILE\u CHAR})

    其中:
    ${MAX\u FILE\u CHAR}
    是需要从文件
    ${fileName}
    中读取的最大字符数。要读取的值将存储在
    ValueReadFromFile