0

我在“h”扩展名上使用 AGI 脚本来计算通话费用并将其保存在 CDR(userfield) 变量中。

问题是我得到 CDR(duration) 变量和存储在 MySQL 上的值之间的持续时间差异。主要是,存储在 DB 上的持续时间比变量大 1 或 2 秒,例如插入过程延迟和持续时间不断计数。

我需要知道为什么我会有这种持续时间差异,以及我应该如何避免它以正确的方式计费。

非常感谢。

4

2 回答 2

1

你不应该在“h”扩展上使用 AGI(),你应该只在那里使用 DeadAGI。

于 2014-10-24T02:05:52.573 回答
0

例子:

您在询问 CDR(持续时间),它返回 5

你在你的脚本中多做 2 秒

在数据库中将被保存 7.

你的cdr会发生类似的事情。不要在 h 扩展中使用长时间运行的脚本。只需在数据库或文件中记录事件并使用外部线程来处理事件。

于 2014-10-18T07:50:51.610 回答