代码之家  ›  专栏  ›  技术社区  ›  Superdooperhero

netsuite suitescript 2.0与外部挂钩集成

  •  0
  • Superdooperhero  · 技术社区  · 6 年前

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

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

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

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

    所以我的问题是是否有一个更好的选择,我错过了或你会建议什么。如果我使用选项2每2秒轮询一次,我会达到某种治理限制吗?

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

    3 回复  |  直到 6 年前
        1
  •  2
  •   bknights    6 年前

    我以前经常发邮件,效果很好。音量可能有问题。

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

    我相信NgRok每年大约60美元。

    应用程序可以用某种时间戳和哈希来验证身份,这样如果有人得到HTTPS地址,他们就不能轻易地使用您的所有文件或导致DOS情况。

        2
  •  1
  •   xpeldev    6 年前

    在我们发现我们可以使用打印机ip:9100将原始zpl/epl作为主体发送到大多数打印机之前,一个打印机供应商(zebra)欺骗了我们。

    查看:支持IPP的打印机。大多数是现在。如果你像我们这样有一个大仓库的话,可以节省1000美元

        3
  •  0
  •   michoel    6 年前

    不是轮询,而是让netsuite在 afterSubmit 用户事件脚本。

    我通过将netsuite电子邮件附件连接到一个由linux服务器监控的专用邮箱来自动打印标签。此处记录了我的设置:

    https://gist.github.com/michoelchaikin/80af08856144d340b335d69aa383dbe7