Tulip Player Zebra Network Printer Print at Variable Station to Static IP

My first time trying to print via the Player device connection to a static IP Zebra printer, I didn’t quite understand the implications of the “at” argument in the trigger action, and just left it at the default value of “this station”. When I was connected to the same network as the printer with the IP address specified, I was able to print.

Then I thought to try printing to it while on a different network (my laptop tethered to my cell phone, the printer on the employer network. This did not work with “this station” selected, did not work with another station on the company network selected for which Tulip Player was not running, but did work on another station on the company network for which Tulip Player was running (but user logged out).

I could see some opportunity to make this trigger action more dynamic so the “at” station could be specified by a variable instead of hardcoded into the action. A workaround I thought of was to repeat the trigger for all stations on the same network, and then conditionally only fire the one corresponding to the selected station variable value.

But without being able to see which stations are active, this would require trial and error to find an active station (if any) to achieve the print.

Suggestions:

  1. Make this trigger action allow for either static selection or variable input for the “at” station
  2. Expose station active status such that a single select could be fed by an aggregation giving selection options comprising only active stations

I highly recommend utilizing a Stations table on almost every single app– which would resolve this. On App Enter Create or Load a record based on station name. You can add a column in that table for any necessary fields you want linked to the station.

Hi @jmlowden,

This is a great suggestion for IP based printers, we will look into this.

Sincerely,

Jake

Looking at this again, it appears the selection in the connector function action drop-down is for the interface, not the station…I didn’t notice at first because our practice in general for user-assigned computers is to use the same ID for both station and interface:

So in this case does the Stations Table still make sense? Are we able to store the Interface ID?

I see the confusion. What you are selecting in that dropdown is the source of the printer function call. This would only be relevant if you needed to call a printer from a separate device on a different network to access the printer.

In general you should probably just use “this station” and you can replace your Printer IP variable with a table column of the same info, mapped to the station. Unless your computers are not on the same network as the printers.

Correct - in this case, I am trying to print remotely (not on the same network) leveraging one of the devices on the same network as the printer. Edge IO would be the better solution in this case, I think, but we haven’t deployed any to production yet.