Weblink protocol parsing

Tags: 

Hi, I'm trying to develop Weblink integration for Zebra Label Printers in our Spring Boot based backend.

I managed to communicate with the printer, but I'm a bit puzzled about the initial 'discovery_b64' message. I can't find any documentation on what that Base64 string contains or how to interpret it.

So I get a b64 message like "OiwuBAUBAA...QbAAA=:a447" - to even decode that String I have to remove the "a447" postfix. When I decode it as UTF-8 (or ASCII), there are some string I recognize (printer name, firmware version), but the stuff inbetween looks binary. Is that some serialized class? Where can I find some documentation on how to map this?

Benjamin Maurer
Documentation Status

By the way, I found this one year old thread (https://developer.zebra.com/thread/30309), where they said they would publish new documentation. I can't find that, only the "Creating your own Weblink endpoint" document which is from 2015 (!) and the one in the SDK is almost identical.

Other than the content of "discovery_b64", some questions:

Connection requests contain a Cookie "ZebraID", that value is equal to the serial number (or device.unique_id) of my printer and equal to the unique_id in the open channel response messages. Is that guaranteed, or just coincidence?

The docs give the example of requesting config: {}{"device.friendly_name":null} - is it possible to add multiple fields?

EDIT 13.04.2020: I found an answer for the last question in the Zebra Programming Guide. You can ask for multiple fields.

Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Robin West
Checking on Discovery string

Hi Benjamin, I'll check on the documentation for the discovery string.  I'm not sure what happened to the work on it.  It contains about 20 current status fields, but those are all retrievable with SGDs.  The ZebraID will always equal the device.unique_id.  This is the internal serial number.  There are a couple of industrial printers where the printed serial number on the back or under the media hood does not match the internal MLB serial number that the printer reports.  

Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Log in to post comments