0

我已经生成了一个拨号计划,您可以在其中调用一个或另一个函数,具体取决于您调用的时间。

我的问题是从早班到下午班

就像我之前说的,我创建了一个时间段。

n,gotoiftime(8:00-15:00,mon-thu,*,*,?atencionPublico)
n,gotoiftime(15:00-17:30,mon-thu,*,*,?atencionPublicoAttTardes)

n(atencionPublicoAttTardes),BackGround(/var/lib/asterisk/sounds/ocm/NavarraHorario)
n,waitexten(5)
n,Set(ACTION=FUNC_SKILL NA_IncidenciasTardes)
n,AGI(agi:async)
exten => 1,1,Set(ACTION=FUNC_DIALPLAN NavarraPulsa1)
n,AGI(agi:async)

;*******************************************************
n(atencionPublico),BackGround(/var/lib/asterisk/sounds/ocm/Navarra)
n,waitexten(5)
n,Set(ACTION=FUNC_SKILL NA_Incidencias)
n,AGI(agi:async)
exten => 1,1,Set(ACTION=FUNC_DIALPLAN NavarraPulsa1)
n,AGI(agi:async)

我的问题是我必须更改调用顺序才能使其正常工作。

有人可以帮助我吗?

4

1 回答 1

1

请记住,gotoiftime如果您的条件为假,它将继续执行拨号计划。如果您的拨号方案完全如图所示,那么您在周五至周日、上午 8 点之前或下午 5:30 之后没有处理程序。当两个条件都为假时,它将继续执行下一步gotoiftime,这意味着它将进入下一步,即n(atencionPublicoAttTardes).

为了确保您的条件15:00-17:30,mon-thu,*,*,是正确的,请尝试在条件和下午处理程序之间添加一个步骤,例如n,Hangup()(当然不要使用这个 live,只是为了测试)。

如果你发现它挂了而不是执行下午的拨号计划,问题实际上是 中的条件gotoiftime,而不是处理程序的顺序。

通常顺序应该无关紧要。这是我认为它会影响结果的唯一原因。

于 2020-07-21T19:34:23.147 回答