Asterisk AGI脚本

基于Asterisk的VoIP开发指南——Asterisk 模块编写指南(1) 1 开源项目概述Asterisk是一个开源的软件包,通常运行在Linux操作系统平台上。Asterisk可以用三种协议来实现VoIP,同时可以与目前电话使用的标准硬件进行交互通信,Asterisk在实现VoIP时,不需要任何附加硬件,本文所采用的也是这种使用方式。但是,如果企业没有与VoIP语音网关运营商建立合作关系,想要自己构建这样的一个平台,那么要和数字电话设备与模拟电话设备进行交互通信, 阅读详情

   AGI脚本用于开发复杂的IVR应用。AGI脚本与Asterisk之间通过两个标准的数据流交互,一是STDIN(标准输入),二是STDOUT(标准输出)。从AGI脚本角度看,任何来自Asterisk的数据可以称之为STDIN,任何向Asterisk的输出可称之为STDOUT。也可以认为是通过读命令从Asterisk读取数据,通过写命令向Asterisk写入数据。AGI脚本可以支持多种语言来编写,例如通过Bash、Perl、PHP等脚本语言,也可以通过C/C++语言来编写。

    Asterisk 拨号方案中调用AGI脚本的方法如下:

    exten => _X,1,AGI(some_script_name.agi,param1,param2,param3)

从上面可以看出,AGI脚本的执行与拨号方案中普通应用的执行没有多大区别,不同的是拨号方案中的普通应用的执行消耗的是Asterisk的内部资源,而AGI脚本执行消耗的是外部资源,Asterisk将执行脚本的控制权移交给外部进程去执行,而Asterisk消耗的是对外部AGI脚本执行过程的控制和管理。所以外部AGI脚本执行所消耗的资源是不可控的,取决于什么样的语言执行环境及AGI脚本复杂度。

基于Asterisk的VoIP开发指南——(2)Asterisk AGI程序编写指南 5. Asterisk AGI程序编写指南    5.1概述很多时候,我们需要在拨号方案中做某些业务逻辑的判断或者外部数据库的查询,根据具体地需要,有几种做法:1.使用Asterisk的通道变量、Goto函数、Gotoif函数等实现某些简单跳转,通过几个这样的函数的组合,实现简单的业务。2.对终端接入用户的呼叫请求中的某些属性,进行简单的数据库增删改查,在Asteris 阅读详情

相关推荐

Python AGI script results in Asterisk error 510

Python AGI脚本导致Asterisk错误510

suiusoar 123

Asterisk AGI 详解

IntroductionThe AGI facility allows you to launch scripts, written in just about any language, from an Asterisk dial plan. Communication between your script and Asterisk is via standard input and

demon_evil的专栏 7616

agi:Go软件包agi实现了Asterisk网关接口

阿吉 -导入“ github.com/zaf/agi” 软件包agi实现了Asterisk网关接口( )。 所有AGI命令都作为Session结构的方法实现,该结构保存AGI环境变量的副本。 所有方法都返回Reply结构和AGI错误(如果有)。 Reply结构包含Res中AGI命令的数值结果,如果有任何其他数据,则将其作为字符串存储在该结构的Dat元素中。 例如,要创建一个新的AGI会话并对其进行初始化: myAgi := agi . New () err := myAgi . Init ( nil ) if err != nil { log . Fatalf ( "Error Parsing AGI environment: %v \n " , err ) } 要使用AGI“流文件”命令播放语音提示,请执行以下操作: rep , err := myAgi . StreamFi

asterisk- agi脚本拨号异常处理

系列文章目录 1. [asterisk- agi脚本拨号异常处理](https://editor.youkuaiyun.com/md?articleId=109047138) 文章目录系列文章目录前言一、问题描述二、解决方法1.思路一2.思路二总结 前言 最近遇到通过VoIP号码外拨手机,手机按拒接后,拨出端没有任何提示的问题。 提示:以下是本篇文章正文内容,下面案例可供参考 一、问题描述 最近遇到通过VoIP号码外拨手机,手机按拒接键后,拨出端没有任何语音提示的问题。 二、解决方法 1.思路一 在外拨业务

u013544769的博客 677

aria:基于ARI的Asterisk Twiml执行引擎

咏叹调 基于Asterisk ARI的Twiml口译员 Aria是一个node.js应用程序,它允许使用Twilio的Twiml标记语言构建的应用程序在Asterisk服务器上运行。 要求 Node.js 星号13 雷迪斯 咕unt声 Flite文字转语音引擎 安装 星号 Aria已安装在您的Asterisk 13服务器上。 因此,您需要的第一件事是Asterisk 13服务器。 只要您具备ARI所需的所有功能,默认构建便会起作用。 您将需要启用ARI并添加ARI用户。 可在以下位置找到有关启用ARI的信息: : Aria配置文件 启用ARI并添加用户后,您需要将主机,用户名和密码放入Aira配置文件中:/etc/asterisk/aria.conf.js exports.username = "demo"; exports.password = "asterisk123";

在运行opencv时出现的两个问题:AttributeError: module ‘cv2‘ has no attribute ‘gapi_wip_gst_GStreamerPipeline‘

解决了opencv的两个问题:由问题一引出 AttributeError: module 'cv2' has no attribute 'gapi_wip_gst_GStreamerPipeline' cv2.error:OpenCV(4.1.2)C:\projects\opencvpython\opencv\modules\highgui\src\window.cpp:717:error: (-2:Unspecified error) The function is not implemented...

hu_yinghui的博客 3275

Asterisk下 AGI查询mysql的程序脚本编写(笔记)

相关链接: Asterisk AGI程序编写指南:http://bbs.voip88.com/thread-1684-1-1.html asterisk agi应用编程入门: http://bbs.voip88.com/thread-39-1-1.html Asterisk AGI:http://www.voip-info.org/wiki/view/Asterisk+AGI Asterisk perl agi: http://www.voip-info.org/index.php?content_

seven407的专栏 2146

Moltbot 超详细安装使用教程(初学者版)

你在外面逛街,用微信/Telegram 发消息说"帮我查一下明天的天气"它立刻帮你查好并回复你说"帮我在电脑上新建一个文件夹叫'工作文档'"它真的帮你在电脑上创建了这就是 Moltbot ——一个能真正帮你干活的 AI 助手。API Key 就像是一把"钥匙",让 Moltbot 能够使用 AI 服务。

weixin_51040479的博客 2014

asterisk AGI编程

IntroductionThe AGI facility allows you to launch scripts, written in just about any language, from an Asterisk dial plan. Communication between your script and Asterisk is via standard input and st

修己度人 2728

Silvaco Atlas入门指南——从零开始掌握半导体器件仿真

本文为Silvaco Atlas半导体器件仿真软件的入门指南,详细介绍了从零开始掌握该工具的核心流程。内容涵盖Atlas的基本概念、仿真流程、核心文件(输入、结构、输出文件)、交互式与批处理两种操作模式,并逐步演示了如何从定义网格、划分区域、设置电极到进行掺杂、选择物理模型并求解,最终获取和分析器件特性的完整步骤。旨在帮助微电子相关专业人员和工程师快速上手这一强大的“数字实验室”,提升半导体器件设计与研发效率。

weixin_29306317的博客 401

Thompson Sampling vs UCB:5个真实业务场景下的算法选型指南

本文深入对比了Thompson Sampling与UCB算法在电商推荐、在线广告、医疗试验、金融定价和游戏调整五大真实业务场景下的表现。通过量化指标分析,为技术决策者提供了清晰的选型指南:Thompson Sampling凭借其概率匹配和贝叶斯框架,在需要快速收敛、处理冷启动及复杂约束的场景中通常更具优势;而UCB则在要求确定性、可解释性和理论保证的场景下表现更佳。

weixin_29181861的博客 153

AGI脚本说明

1.      执行AGI脚本文件时,Application应用就是“agi”,参数就是脚本文件的文件名。 2.      脚本文件需要满足的条件:(1)必须可执行,chmod 775 (2)必须放置在指定的目录,如标准目录:/var/lib/agi-bin (3)必须指定完整

lengxin337的专栏 1963

样本不均衡时AUC反而下降?用imbalanced-learn库实战解决分类陷阱

本文探讨了样本不均衡时AUC指标下降的现象,并通过imbalanced-learn库实战演示了如何解决这一分类陷阱。文章详细分析了不同采样技术(如SMOTE、ADASYN)对模型性能的影响,并提供了XGBoost和逻辑回归模型的优化建议,帮助数据科学家在实际项目中做出更明智的决策。

weixin_29174013的博客 343

agi脚本说明中文

1.      执行AGI脚本文件时,Application应用就是“agi”,参数就是脚本文件的文件名。 2.      脚本文件需要满足的条件:(1)必须可执行,chmod 775 (2)必须放置在指定的目录,如标准目录:/var/lib/agi-bin (3)必须指定完整的extension信息。 Exten=>1,2,AGI(test.php,${CALLERID(name)...

jyqc688的专栏 420

STM32实战开发(71):STM32人脸识别开发教程:基于摄像头模块的人脸识别系统

在嵌入式系统中,STM32凭借其强大的计算性能、丰富的外设接口以及低功耗特性,成为了实现人脸识别系统的理想平台。STM32虽然没有强大的计算能力,但可以通过合理利用外部硬件加速模块,如DSP、GPU、FPGA等,结合轻量级的人脸识别算法,实现高效的人脸识别系统。尽管STM32的计算资源相对有限,但通过合理的优化和使用高效的算法,我们依然能够实现高效的人脸识别功能。在本项目中,我们使用。在STM32开发中,虽然处理能力有限,但通过优化算法和合理利用硬件加速,我们仍然可以实现一个轻量级的、实时的人脸识别系统。

2201_76125393的博客 1662

DP83869HM的LWIP性能测试

E:/Xilinx/Vitis/2021.1/data/embeddedsw/ThirdParty/sw_services/lwip211_v2_0/src/contrib/ports/xilinx/netif/xemacpsif_physpeed.c文件中的。然后phy_setup_emacps中调用get_IEEE_phy_speed函数,根据PHY的ID判断出Marvell或TI或Realtek的PHY,调用对应的网速自动协商函数get_TI_phy_speed,该函数中的部分配置需要注释。

FPGA艺术家的博客 356

asterisk agi 编程函数解析

一下内容转自网络。IntroductionThe AGI facility allows you to launch scripts, written in just about any language, from an Asterisk dial plan. Communication between your script and Asterisk is via standard i

语音通讯-软交换asterisk,Freeswitch 3120

SAP SD销售订单的ATP检查简介

如果可用性检查组设置为01(汇总需求),系统将更新销售订单需求到汇总表VBBS,该表中未记录销售订单号码,因此在MD04中不会显示销售订单号码,而是按天汇总显示销售需求。如果物料的可用性检查组设置为02(单个需求),系统将更新销售订单需求到表VBBE,该表中记录了销售订单号码,因此在MD04显示销售订单的号码以及需求,前面的文章中我们解释了PP模块中的ATP检查,也解释了MM模块中的ATP的检查,本文将说明一下SD模块中的ATP检查。可用性检查用的最多的就是02,有兴趣的同学可以测试一下可用性检查01。

我小时候很黑的博客 4295

AGI脚本

AGI脚本       AGI(Asterisk Gateway Interface)让你可以向Asterisk的拨号计划发送脚本,传统的脚本和Asterisk之间的通讯是通过标准输入和标准输出,并且脚本必需和Asterisk运行在同一服务器上。AGI能够处理任何呼入或通过Manager API发起的呼。 ...

Java企业应用 348

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

asterisk agi For Perl

转自网络,备忘: web link:http://astbook.asteriskdocs.org/en/2nd_Edition/asterisk-book-html-chunk/asterisk-CHP-9-SECT-2.html Writing AGI S

语音通讯-软交换asterisk,Freeswitch 2329

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Asterisk perl agi

<br />近期在研究asterisk的agi,因使用了perl去写脚本,故参考了voip-info的文章,<br />现将perl agi的模块转进来,以供日后参考。<br />以下为原文:<br />Asterisk perl agi<br />Asterisk::AGI perl module documentation<br />NAME<br />Asterisk::AGI – Simple Asterisk Gateway Interface Class<br />SYNOPSIS<br />u

libaiguo的专栏 1328

基于Asterisk的VoIP开发指南(2)——Asterisk AGI程序编写指南

5. Asterisk AGI程序编写指南    5.1概述 很多时候,我们需要在拨号方案中做某些业务逻辑的判断或者外部数据库的查询,根据具体地需要,有几种做法: 1.使用Asterisk的通道变量、Goto函数、Gotoif函数等实现某些简单跳转,通过几个这样的函数的组合,实现简单的业务。 2.对终端接入用户的呼叫请求中的某些属性,进行简单的数据库增删改查,在Asteris

学习是为了探索这个世界的本质 3868
上一篇: "Tormenta" Switching and Conferencing Architecture
下一篇: 简单思考如何编写描述一个模块
austingao
博客等级 码龄16年 8粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值