Мне нужно настроить печать этикеток EPL2 от Netsuite. К сожалению, компания, для которой она предназначена, очень мала, и у них не так много денег, поэтому они не могут купить решение для печати этикеток за 1000 долларов.
Текущая система использует сервер Linux, который затем отправляет файл в одну из очередей сервера печати CUPS с помощью команды linux cat. Оттуда он отправляется на сервер печати Intel NetportExpress 10/100, а затем на принтер этикеток Argox V1000 +. Это через корпоративный IP-адрес сети.
Вместо этого я начал искать некоторые дешевые варианты:
- Откройте окно браузера с типом содержимого text / plain и используйте пакет, чтобы заполнить это окно браузера кодами принтера этикеток EPL2. Затем откройте диалоговое окно печати, чтобы пользователь мог печатать в драйвере принтера этикеток. Это требует установки драйвера принтера этикеток для всех пользователей. К сожалению, я не мог заставить это напечатать этикетку.
- Интеграция из Netsuite через Restlet во внешнее приложение python (в Linux), которое может затем выполнить команду linux cat, необходимую для печати этикетки. Restlet работает хорошо, но, к сожалению, похоже, что нет способа получить какой-то хук, который срабатывает при поступлении новой пользовательской записи лейбла. Поэтому я должен продолжать опрашивать рестлет из Python каждые 2 секунды, чтобы увидеть, не ждет ли новая этикетка печати. Я начал выполнять это около часа назад, и пока я сделал около 2500 запросов без ошибок. Мой предел параллелизма составляет 5, и я использую 2, так что, кажется, все в порядке. Скрипт делает очень мало, поэтому я не думаю, что будут проблемы с ограничением размера. Проблема только в том, что мне интересно, завершит ли NetSuite мой скрипт для выполнения стольких запросов. Не уверен, есть ли такая проблема управления, но не могу себе представить, что они в конечном итоге не остановят подобные вещи.
- Используйте модуль http для отправки данных в виде Ajax-типа. Это должно быть в состоянии забрать при поступлении новых данных вместо необходимости опроса (не уверен). Проблема в том, что я предполагаю, что мне понадобится статический IP-адрес, который, к сожалению, дорогой вариант.
- Используйте веб-службы Netsuite SOAP, которые могут иметь хук вместо опроса (не уверен). Я думаю, что это не будет бесплатным (как рестлеты).
Так что мой вопрос: есть ли лучший вариант, который я пропускаю, или что бы вы порекомендовали. Кроме того, я бы достиг определенного уровня управления, если опрашиваю каждые 2 секунды с опцией 2?
Обновление: опрос загадочным образом перестал работать после 7395 запросов и около 3 часов. Это не вернуло ошибку, о которой я знаю. Отклоненные запросы на управление интеграцией показывают 0.