Manager, task processor

Hi everybody,

I’d kindly ask for your help - we have an asterisk 13 installation with approximately 100 queues and 30 agents. When a call comes into any of the queues and asterisk cycles through available agents, we get an error:

[2018-05-10 11:02:45] WARNING[61982]: taskprocessor.c:888 taskprocessor_push: The ‘subm:manager_topic-00000006’ task processor queue reached 3000 scheduled tasks again.

Same thing happens when agents login/logoff. I’ve first noticed this problem with asterisk version 13.19, but it’s also present in 13.20 and 13.21. Last working version was therefore 13.18.

I can easily reproduce this with test system without any load. If this matters, we are using freepbx 13.0.195 and dynamic queue members - it might be related to amount of AMI messages (QueueMemberStatus), but we need those due to a third party application that reads AMI events (CRM).

Could anyone point me into the right direction? Is there a way of increasing the watermark limits, task queue depth, anything like that?

Thanks for your help,

That error is a warning. Is it affecting anything you are doing?

Hi Andrew,

thanks for responding.

It affects the 3rd party app (CRM) that reads AMI events - things that should happen when the call is answered are delayed for approximately 30 seconds (pop up window with greeting text, customer data).

So it seems that relevant info reaches AMI with delay or something.

It might be asterisk bug of some kind?

With best regards,

Probably not. You should think about filtering commands your AMI client sees. You can do this from the asterisk side.

You mean in manager_custom.conf? Like this?

eventfilter=Event: AgentCalled
eventfilter=Event: NewState
eventfilter=Event: AgentConnect
eventfilter=Event: QueueMember
eventfilter=Event: QueueStatusComplete
eventfilter=Event: QueueMemberPaused
eventfilter=Event: QueueMemberAdded
eventfilter=Event: QueueMemberRemoved
eventfilter=Event: QueueMemberStatus
eventfilter=!Event: RTCP*
eventfilter=!Event: VarSet
eventfilter=!Event: Cdr
eventfilter=!Event: DTMF
eventfilter=!Event: AGIExec
eventfilter=!Event: ExtensionStatus
eventfilter=!Event: ChannelUpdate
eventfilter=!Event: ChallengeSent
eventfilter=!Event: SuccessfulAuth
eventfilter=!Event: HangupRequest
eventfilter=!Event: SoftHangupRequest
eventfilter=!Event: NewAccountCode
eventfilter=!Event: MusicOnHold
eventfilter=!Event: LocalBridge

We are already doing this.

Any other ideas / suggestions are very welcome.

For anyone having similar problem:

We ended up changing the way our CRM application works so it wasn’t depending on QueueMemberStatus events anymore. We’ve filtered them using eventfilters in manager_custom.conf.

That made a huge difference but didn’t remedy the problem entirely. Problem was solved by declining QueueMemberStatus event messages in stasis.conf.

Hope this helps anyone.

@Andrew: thanks for pointer.

Best regards,

Where do you find Stasis.conf?

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.