我目前正在将Acumatica ERP与我公司的当前应用程序集成。 Acumatica具有“推送通知”功能,您可以将其配置为根据数据更改触发通知。我目前有一个非常简单的触发器设置,即当项目状态更改时,它将发送一个推送通知。 Acumatica推送通知支持3个选项,“ Web Hooks”,“ MSMQ”和“ SinglalR”。我们决定采用“ MSMQ”选项。在acumatica的“处理推送通知”表单中,我可以看到触发正在发生并且正在生成推送通知,但是向我们的MSMQ的传输失败,并出现以下错误“无效的队列路径名”。
我们的内部服务器是Windows Server 2016盒。 我已启用MSMQ的Windows功能。 我已经配置了一个私人MSMQ,并已从我的工作站以及一台外部计算机成功地向其推送了消息。 我们已将防火墙配置为将Acumatica应用程序的IP地址列入白名单,并打开了所有端口。 (当前所有端口都处于打开状态以进行测试,但是以下链接指示了MSMQ用作参考的端口。 https://support.microsoft.com/en-us/help/178517/tcp-ports-udp-ports-and-rpc-ports-that-are-used-by-message-queuing)
该服务器可从我们的网络外部访问,并具有公共ip地址。
远程特权队列的路径具有以下格式:
{external ip address}\private$\{name of private queue}
这与此处引用的路径名一致 https://docs.microsoft.com/en-us/previous-versions/windows/desktop/legacy/ms706083(v=vs.85)
我们可以看到触发器正在发生以生成Acumatica端的推送通知,并且我们看到它排队失败,并且我们可以自己将消息推送到我们的MSMQ中,我们很茫然。