首页 > 解决方案 > NetSuite SuiteScript 2.0 与外部挂钩的集成

问题描述

我需要从 Netsuite 设置 EPL2 标签打印。不幸的是,这家公司非常小,他们没有太多的钱可以花,因此他们无法购买 1000 美元的标签打印解决方案。

当前系统使用 linux 服务器,然后使用 linux cat 命令将文件发送到 CUPS 打印服务器队列之一。从那里它进入英特尔 NetportExpress 10/100 打印服务器,然后进入 Argox V1000+ 标签打印机。这是通过公司网络 IP 地址。

相反,我开始寻找一些便宜的选择:

  1. 弹出一个内容类型为 text/plain 的浏览器窗口,并使用套件使用 EPL2 标签打印机代码填充该浏览器窗口。然后打开一个打印对话窗口,以便用户可以打印到标签打印机驱动程序。这需要为所有用户安装标签打印机驱动程序。可悲的是,我无法用它来打印标签。
  2. 通过 Restlet 从 Netsuite 集成到外部 python 应用程序(在 Linux 上),然后可以执行打印标签所需的 linux cat 命令。Restlet 工作得很好,但不幸的是,似乎没有一种方法可以在新标签自定义记录到达时触发某种钩子。因此,我必须每 2 秒从 Python 轮询 Restlet 以查看是否有新标签正在等待打印。我大约一个小时前开始运行它,到目前为止,我已经发出了大约 2500 个请求而没有错误。我的并发限制是 5,我使用的是 2,所以看起来没问题。该脚本做的很少,所以我认为不会有大小限制问题。问题只是我想知道 NetSuite 是否最终会因执行这么多请求而终止我的脚本。不确定是否存在这样的治理问题,但可以
  3. 使用http模块以ajax类型的方式发送数据。这应该能够在新数据到达时拾取,而不必轮询(不确定)。问题是我假设我需要一个静态 IP 地址,但遗憾的是这是一个昂贵的选择。
  4. 使用可能有钩子而不是轮询的 Netsuite SOAP Web 服务(不确定)。我认为这也不是免费的(如 Restlets)。

所以我的问题是我是否缺少更好的选择,或者您会推荐什么。如果我使用选项 2 每 2 秒轮询一次,我是否会达到某种治理限制?

更新:在 7395 个请求和大约 3 小时后,轮询神秘地停止工作。它没有返回我知道的错误。集成治理被拒绝的请求显示为 0。

标签: integrationnetsuitesuitescript2.0

解决方案


我以前经常做电子邮件的事情,而且效果很好。音量可能是个问题。

另一件事就是使用 ngrok 之类的东西获取一个静态 IP 地址。ngrok 在 linux/mac/windows 上运行,因此您可以编写一个侦听特定端口的应用程序。Netsuite 会在(例如)https://printing.mycompany.ngrok.io向该应用程序发送一个 https 帖子,该应用程序将处理本地打印。

我相信 ngrok 每年运行大约 60 美元。

该应用程序可以使用某种时间戳和哈希来验证身份,这样如果有人确实获得了 https 地址,他们就无法轻易使用您的所有文件或导致 DoS 情况。


推荐阅读