Official translation unavailable. Translate this page with Google:

Cloud-based business systems driving your company processes typically raise one label printing question: How can your cloud software print labels on your on-premise printers?

The answer is NiceLabel. Our cloud software communicates with both your cloud business systems and your on-premise printers. We provide information, samples, and configuration steps to enable you to print labels from your cloud-based applications.

You receive sample files to explore various direct integration options:

  • NiceLabel Automation configuration (MISX)

  • Sample label (NLBL)

  • Cloud system mockup website (AngularJS framework). The mockup website demonstrates integration options we explain below.

Cloud trigger printing

Cloud trigger printing, also known as server-based proxy printing, allows your cloud applications to communicate with server-based proxies (NiceLabel Automation) which process and print to local print queues available on your servers. No firewall modification is necessary to allow data from your cloud applications to pass to NiceLabel Automation. You send your data to APIs in NiceLabel Cloud, which forward your data to NiceLabel Automation securely using Azure Service Bus.

BENEFITS

  • Supports all printer brands/models.

  • Provides data enrichment (merging data from various external systems on the same label).

  • Returns label previews.

REQUIREMENTS

  • On-premise installation of NiceLabel Automation (integration system).

  • Printer drivers for all printers installed on your server with NiceLabel Automation.

  • Network-attached printers. Printing to locally connected printers (like USB printers) is only possible when they are shared in a network.

image1.png

Operation

Cloud trigger integrates NiceLabel Cloud with your existing cloud-based business systems so you can print labels on your local printers. Modern IoT printers communicate directly with the cloud, but legacy printers do not. To print labels on legacy printers, install our on-premise integration system with your printers.

Cloud-based business systems do not communicate with on-premise software and devices. Firewalls protect your local networks from unsolicited requests from the internet.

Your cloud-based business systems produce outputs you send to our NiceLabel cloud-hosted Cloud trigger APIs (proxies). Our APIs relay outputs to your on-premise NiceLabel Automation for processing using secure Azure Service Bus messages (Microsoft cloud messaging service). You send messages as HTTPS requests using GET or POST methods.

Note

Structures of payloads you send to APIs must match your NiceLabel Automation configurations. You can configure Automation to adapt to standard XML/JSON messages your cloud system can already generate.

Your on-premise integration system merges label templates from NiceLabel Cloud DMS (Document Management System) with data received from your cloud business systems to print labels on your local printers.

Cloud Trigger transparently and securely integrates your local label printing with applications that communicate over the open internet located on different networks than your printers.

Workflow:

  1. Send data from your cloud-based system to NiceLabel API in NiceLabel Cloud (HTTPS requests).

  2. Your on-premise integration system receives data and processes requests following configurations you define in NiceLabel Automation configuration files.

  3. Your labels print on local printers. Status responses get send back to your cloud-based system. Responses can also contain label previews or other custom data you need.

Technical details

You make NiceLabel APIs print requests to:

https://labelcloudapi.onnicelabel.com/Trigger/v1/CloudTrigger/{triggerId}

You provide:

  • {triggerId}: Your Cloud Trigger “unique identifier” (defined in your Automation configuration).

  • Custom request header to provide your user credentials.

    • Set Ocp-Api-Subscription-Key to your subscription key.

  • Label data in either query strings (GET method) or message bodies (POST method).

The integration system processes the label data you provide and prints your labels. You can choose data input formats including CSV, XML, JSON, etc. You must create matching Automation trigger configurations to parse and process data you send into the trigger.

This integration pack example sends JSON messages to NiceLabel Cloud APIs:

https://labelcloudapi.onnicelabel.com/api/CloudTrigger/Api-CloudIntegrationDemo-Print

Sample outbound JSON message:

{
    "FilePath": "/folder/label.nlbl",
    "FileVersion": "",
    "Quantity": "1",
    "Printer": "",
    "PreviewFormat": "PNG",
    "Variables": [
        {
            "Product_name": "Syringe",
            "GTIN": "00311234567901",
            "LOT": "ABC123",
            "BestBefore": "10.05.22",
            "SSCC": "03831234560000001",
            "Count": "10"
        }
    ]
}

This JSON message tells NiceLabel Automation to:

  • Create a PNG preview of label.nlbl.

  • Use key-value pairs from the Variables object.

This example of NiceLabel Automation configuration works with JSON. However, you can create custom NiceLabel Automation configurations for your specific situation. Custom configurations adapt to your existing application data structures.

For more information about configuring and running integration samples, read Appendix A: Integration bundle.

For more information about API definitions, read Appendix B: Cloud trigger API.

IoT printing with Cloud API

IoT printing with Cloud APIs, also known as direct printing, allows your cloud applications to print directly to your cloud-enabled printers. IoT printing with Cloud APIs does not require any local NiceLabel footprint or any locally installed NiceLabel software (like NiceLabel Automation or printer drivers).

BENEFITS

  • No local NiceLabel footprints.

REQUIREMENTS

  • Cloud-enabled printers which can connect to the NiceLabel Cloud service. For example, you can print with any Zebra Link-OS printer or SATO CL4NX / CL6NX printers.

    Note

    Some Zebra printers with Link-OS Basic don't support Cloud Print (for example, Zebra ZD230). Check your printer's specification for the printer operating system. See also the list of Zebra DNA printers. Print DNA Basic printers don't support Cloud Print.

  • Reliable internet connections.

image2.png

Operation

Cloud printers are smart label printers that connect to our NiceLabel Cloud print service and receive print jobs. Cloud printing lets you print from any applications or devices to cloud-connected printers, regardless of printer locations. Cloud printing also eliminates the need for printer drivers. Your Cloud Print service creates and delivers print jobs to your target printers via the cloud.

The diagram above shows cloud printing architecture. Printers register and connect to our NiceLabel Cloud print service. When you submit print requests, your cloud service merges label templates from DMS with your received data to create matching print jobs (for example, ZPL for Zebra printers, SBPL for SATO printers, etc.). Your cloud service delivers your print jobs over the internet to requested printers.

Technical details

Cloud Print APIs become available when you enable the Cloud Print add-on for your NiceLabel Cloud subscription. Cloud Print APIs expose multiple HTTP REST methods for print integration. To use these methods, register your cloud-enabled printers in NiceLabel Cloud so they are visible to the service.

For example, the GET method “Printers” retrieves a list of all your registered printers and their live statuses. The POST method “Print” prints your selected labels from DMS to your cloud printers with your cloud application data.

You can provide API payloads as JSON or as XML data.

APIs process your provided label data and print your labels. Your labels always load from DMS.

You make NiceLabel API Print requests to:

https://labelcloudapi.onnicelabel.com/Print/v1/Print/{printerName}

You provide:

  • {printerName}: Your cloud-connected printer name (defined at printer registration). For your list of registered printers, execute the GetPrinters method.

  • Custom request header to provide your user credentials.

    • Set Ocp-Api-Subscription-Key to your subscription key.

  • Label data in either JSON or XML payloads.

Your JSON payloads can look like this:

  {
            "FilePath": "/folder/GS1-128.nlbl",
            "FileVersion": "",
            "Quantity": 1,
            "Variables": [
                {
                    "Product_name": "Syringe",
                    "GTIN": "00311234567901",
                    "LOT": "ABC123",
                    "BestBefore": "10.05.22",
                    "SSCC": "03831234560000001",
                    "Count": "10"
                },
            ],
            "PrinterSettings": ""
        }

For more information about API definitions, visit our Developer Portal.

For more information about NiceLabel Cloud printer registration and Developer Portal integration, read Cloud Printers.

Thin client printing

With thin client printing, also known as client-based proxy printing, your cloud applications communicate with local proxies (NiceLabel Web Clients) which process and print labels to local print queues available on your computers.

BENEFITS

  • Supports all printer brands/models.

  • Performs data enrichment (merging data from various external systems on the same label).

  • Processes locally on your computers.

  • Prints to all local or network printers with drivers installed.

  • Displays label previews in your Web client.

REQUIREMENTS

  • Requires local NiceLabel footprint– you install small thin clients on each computer.

image3.png

Operation

Your cloud-based business systems invoke your NiceLabel Web Client, which runs your custom label-printing Web application. You invoke your Web application from cloud applications via URI requests with label data provided in your query strings. Your Web application uses your locally installed printer drivers to print your business system data on your labels.

You create custom Web application user interfaces in NiceLabel Designer and run your custom Web applications as PowerForms solutions. The sample Web application user interface we include in your integration pack is minimal and only contains printer selection options.

Technical details

NiceLabel Web Client registers custom URI schemes on your computer. URI technology allows cloud-based applications to start desktop applications and send them data.

In the following example, your Web application allows you to select default label printers. You can customize application user interfaces with features you need, including label preview displays.

Cloud-based systems call with URI methods like this:

nicelabelwebclient10:?server=https://<account>.onnicelabel.com/print&openMode=2&application=<applicationame>&variable=Var1=123&variable=Var2=ABC

You provide:

  • <account> your NiceLabel Cloud account name.

  • <applicationame> your Web application name (defined in Control Center).

  • openMode=2 when you receive new Web Client requests, your running Web application receives new variable values.

  • variable=Var1=123 sets variable Var1 to value 123.

For more information, read Adjusting Web Printing.

For more information about your integration sample, read Appendix A: Integration bundle.

SFTP file drops

SSH File Transfer Protocols (SFTP) provide secure file transfer capabilities. Your cloud applications use SFTP to drop files over the internet. Connections between clients and FTP servers are encrypted so passwords and other sensitive information can be securely transferred over the network.

NiceLabel Automation is configured to monitor folders, while SFTP stores delivered files. Your file system must be mounted locally and visible to NiceLabel Automation. When files arrive, NiceLabel Automation picks them up for processing.

BENEFITS

  • Supports all printer brands/models.

  • Provides data enrichment (merging data from various external systems on the same label).

  • Returns label previews.

REQUIREMENTS

  • On-premise installation of NiceLabel Automation (integration system).

  • Printer drivers for all printers installed on your server with NiceLabel Automation.

  • Network-attached printers. Printing to locally connected printers (like USB printers) is only possible when they are shared in a network.

  • NiceLabel Automation must be able to access the file system where files from SFTP are stored.

Alternative on-premise integrations

When your business systems share local networks with NiceLabel integration systems, you have additional integration options for delivering label printing data to NiceLabel.

NiceLabel Automation accepts data the following ways:

  • File drops. Your applications save data into selected local or network folders. You can use data formats supported by your applications to create matching configurations and parse data in NiceLabel Automation (typically XML, JSON or CSV structures, but you can also use others).

  • Serial ports. Data comes from devices connected with RS-232 serial ports like barcode scanners and weight scales.

  • Databases. NiceLabel Automation monitors specified databases for changes. When Automation detects new records, your labels print automatically. NiceLabel can also monitor your business system databases directly with your authorization. Master data is often exported from business systems into intermediate databases which NiceLabel can access.

  • TCP/IP sockets. Allows raw data connections from network devices. NiceLabel can operate in server or client modes.

  • HTTP servers. Receives data from clients sending HTTP messages (native web application communication method). Messages are usually JSON-formatted, but NiceLabel supports all other data structures.

  • Web Services. Receives SOAP messages from clients. The underlying protocol is HTTP, and messages are XML-formatted.