Delphi使用Asterisk AMI接口给分机播放系统录音
  Y8XIq1u6ceQW 2023年11月02日 32 0

Delphi使用Asterisk AMI接口给分机播放系统录音

查找资料

在上一篇“Delphi调用Asterisk系统AMI接口取得来电号码”成功连接上Asterisk AMI接口取得来电号码,我们来测试用AMI来做点其它,比如说当系统出现故障后,给分机发送一个报警提醒,要怎么实现呢?

经过查找资料我们发现在/var/lib/asterisk/agi-bin/phpagi-asmanager.php有ami接口的代码使用样例,虽然这里是php,但参数还是类似的,有一定的参考作用,但这个是封装过的,这时我们可以在asterisk的wiki上查查资料

https://wiki.asterisk.org/wiki/dosearchsite.action?where=AST&spaceSearch=true&queryString=Originate

Delphi使用Asterisk AMI接口给分机播放系统录音_FreePBX

Delphi使用Asterisk AMI接口给分机播放系统录音_Delphi_02

测试给分机播放产品1介绍

procedure TF_Server_AsteriskAMI_Main.Btn_PlaybackClick(Sender: TObject);
var
  s: string;
begin
//给分机播放产品1介绍
  s := 'Action:Originate' + #13#10
    + 'Channel:pjsip/1001' + #13#10
    + 'Exten:1003' + #13#10
    + 'Context:from-internal' + #13#10
    + 'Priority:1' + #13#10
    + 'Timeout:30000' + #13#10
    + 'CallerID:9119' + #13#10
    + 'Variable:NULL' + #13#10
    + 'Account:NULL' + #13#10
    + 'Application:Playback' + #13#10
    + 'Data:custom/cp1' + #13#10
    + #13#10;
  Cs_AMI.Socket.SendText(s);

end;

调用成功

Delphi使用Asterisk AMI接口给分机播放系统录音_Asterisk_03

测试分机通话


procedure TF_Server_AsteriskAMI_Main.BtnDialClick(Sender: TObject);
var
  s: string;
begin
//分机通话
  s := 'Action:Originate' + #13#10
    + 'Channel:pjsip/1001' + #13#10
    + 'Exten:1009' + #13#10
    + 'Context:from-internal' + #13#10
    + 'Priority:1' + #13#10
    + 'Timeout:30000' + #13#10
    + 'CallerID:1001' + #13#10
    + 'Variable:NULL' + #13#10
    + 'Account:NULL' + #13#10
    + 'Application:Dial' + #13#10
    + 'Data:pjsip/1009' + #13#10
    + #13#10;
  Cs_AMI.Socket.SendText(s);
end;

Delphi使用Asterisk AMI接口给分机播放系统录音_呼叫中心_04

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

Y8XIq1u6ceQW