hello everybody we'll just give it a few seconds before we get started as people are joining all right hi everybody Welcome to our zebra Dev talk today we're excited for you to join us for this discussion around Cloud connectivity for Zebra printers before we get started today I just want to go through some meeting Logistics with you the webinar is being recorded and this recording will be available on our YouTube channel in about a week all of your phone lines are muted so we cannot see or hear you during this presentation we will however try to answer your questions at the end of the presentation if time permits if you do have a question throughout the meeting please use the questions feature within Zoom also be sure to use the QR codes that will be shared with you in the chat during the meeting as there is valuable information and and resources for you and your developer needs before I hand it over to Stephen I just want to share this quick video that highlights our zebra developer portal and all the tools resources and information that we have available learn connect build all in one place the zebra developer portal as an Enterprise software developer you need fast and easy access to technical information documentation and tutorials you also want to connect with your peers share and consume information to build your knowledge and competencies the updated zebra developer portal has you covered product pages give you quick access to product overviews tutorials documentation use cases forums and blogs about specific products all indexed with quick links to key developer information to help you build forums within the zebra developer Community make it easy to connect with your peers and find answers to your specific development questions to help you collaborate and build community blogs feature content from zebra engineers and other developer experts all sharing the latest Technologies and tools to enable your development on Enterprise devices developer events provide knowledge and networking opportunities for our developer community be sure to scroll through the upcoming past events for registration information and access to OnDemand content the zebra developer portal provides Enterprise developers like you with the tools and services you need to build your edge with an easy to use interface you will be sure to find the resources and connections you need to build all your Enterprise applications devices built by us apps built by you great thank you Stephen um I'll be sharing links to the different channels that we have within the chat um in addition to the developer portal though we do invite you to join our developer community and the various social channels that we have um Stephen if you go to the next slide here are some of our opportunities to join us on social via LinkedIn X GitHub where you can also find our first series of our developer podcasts these links will be shared during the chat so please help us join in the conversation with other like-minded developers and join us now I'll turn it over for Stephen to go through the main presentation of today's webinar thank you thank you Maria hi welcome everyone to this St talk I'm Stephens a Senor software engineer from the ATS asset tracking Solutions of zebra Technologies in today's talk we are going to cover the cloud connectivities for zbr printers as we know the cloud is getting so pervis each every day so the cloud connectivity is kind of essential for our link OS printers this allows us to create Solutions we can run securely either on premise or in the cloud the connection is a direct connection secured and also encrypted and also the uh Cloud connection uh is a firewall front connection which means in most network settings the connection is allowed beyond the fireal and the technology behind the web connectivity on our link OS printers are based on the web socet from the name of the web socet which means we have a socet connection over the HTTP portol that's why we call the web soet and we will go over detail uh in the next few slides and with Cloud connection of course your it has still has a full control uh this is a animation about how the uh Cloud connec connectivity works with zebra link OS printers so here I want to emphasize only the link OS printers has the cloud con connectivities uh zebra has many different uh printer models the leg printer models were not do not have the cloud connectivity feature the cloud con connectivity as we mentioned in the prior slide is based on the HTTP uh protocol right so this connectivity will be initiated through the printer printer send the https request and uh act as if it's a a user initiat request from the browser let go through the far and reach to the the server and with that initi uh initiation from the printer the server is request to send back a certificate this is to ensure the secure of the connection right and also the https uh ensures the encrypted content being sent over the connection once the server certificate been authenticated and the server will re request a certificate from the printer this is to ensure those printers are from zebra and the printer certificate are pre-installed uh in our firmware on the printer so you don't have to worry about that uh with the uh authentication uh completed successfully on the main channel the server will agree to upgrade the HTTP connection to the web circuit so that's where the uh web connectivity K kicks in and on the main Channel Once the web uh soet connection is established all the printers connected through the connection was send the discovery package back to the server uh to broadcast yeah uh what the printer models are and what the IP addresses uh and also all the detail configurations on the printer uh will be sent through the discovery package to the server the server will use that information to manage or make a specific connection to a particular printer okay as mentioned uh the security is essential when we connecting a printer through the cloud to the server so that's why the certificate is critical uh in zebras webs implement a we enforce the mutual certification or Mutual authentication uh printer first needs to authenticate the server through the server certificate certificate and then the server will verify the authentication on the printer by retrieving the certificat from the printer back to the server so that's why the uh certificates are essential in this web Cloud connectivity and on the the zebra signed the printer certificate are pre-installed through the firmware uh for all the link o printers it's a 248 beads certificate the server certificate uh we can provide the zra sign cert server certificate for the user and if you use a uh zebra War file in the example following on we will yeah demonstrate how the server is uh uh implemented through the or file provided by the zebra so the server certificate zebra can also provide you with a uh zebra signed certificate for your server uh of course you can use your own certificate if you like uh you can either you you you can create your certificate let zebra to sign or you can create your self signed certificate and uh you can also create your certificate signed by uh a certificate authority to sign it for you so uh we are not going to discover the detail on the certificates and how they are going to be installed because that's going to be covered by a separate topic like a covered fully in the print secure documentation uh I will put the link in on the last slid where you can refer to how to get your self signed certificate installed on the printer as well as on the server okay so once say connection is active you can also config to send the alerts back to your server so that way you can monitor the status on the printer either the uh printer head open or printer out of media those kind of alerts will be sent back to your uh server through the web link you config on the printer so that's the way you monitor uh the printer States and also you can send the pr job as well and also you can actively query for the printer status instead of just monitory the alerts um on the socket connection uh we will go little bit further uh in the later slides there is the main connection that's main Channel main channel is responsible for establish uh the security connection and also uh for printer to send the server up its discovery package after the main channel is opened the server can also request to open a status channel to the printer as well as uh raw channel to the printer so those are two channels raw channel will be used for sending the print jobs or firmware or f file objects essential s to the printer the status channel will be used for the print uh for the server to M uh request the printer States back from the printer okay so yeah this slides summarize what the discovery package look like so once you have a main Channel open and then you can detect the discovery package sent from the printer so discovery package is base 64 uh with a discovery undor B6 as a uh element for the Json uh and also the printers alerts will go up through the main Channel back to the server and once server has the main Channel opened you can the server can continue to open the raw Channel by sending the commands open V1 ra. zar.com that's the message you send back to the uh printer the printer will open a raw channel for print labels updated firmware uh Etc uh and also server can open additional Channel we call status Channel as well as a config channel so use open uh vi. config dos. that to inform the printer to open a configuration Channel or Stat channel so that's way the server can communicate to the server uh to the printer to retrieve the STS from the printer so that's essay of how the web circuit Works in detail so this slide shows you how to config the web socet on the printer so you can either use the Json commands or use a SGD commands so use a Json command you have all the Json in one block uh with SGD command you you you have to send the uh SGD command one after another in this order right and from here you say uh we have a connection uh K two we also have a con one so on each link OS printers we have two web socet connection or web link connections so you can configure either one of them or you can use both to connect two different clouds so in this example we use the connecting tool to connect to your web server right so if you prefer to connect user connection one you can change this to K one once you have the printer uh con uh config for the web socet they you would initiate a reset command to Res restart the printer uh once the printer restarted you can also use SGD command to retrieve the lock that's is very helpful Tool uh to retrieve the web link lock so that you can debug yeah in which stage the connection May failed such as whether it's in the handshake whether it's RTC is off or whether it's the certificate is embeded ETC by using the uh web link lock SGD to retrieve the uh web link lock so this diagram shows how uh web link is implemented with the z.org file so if for people who is familiarized with the link SDK uh you will you probably see the link SDK for web services so that SDK for web services is implemented in Java based on the Tomcat you can download the Tomcat uh support the or file from the uh link OS SDK uh web page and the or file supports uh Tomcat 8 and nine so you can download the latest Tomcat Tomcat nine or file from the zebra so those printers connected to the uh your server through the com card and connect to the the server late provided by the z.w file and then you can use our SDK which is also Java based uh allows your web application to communicate with uh specifical uh applications over the browser so this diagram shows the high uh level view from the architecture perspective right once the printer is connected your SDK uh can initiate the uh printer Discovery by discover a printer connect to the port on the server L of the z. War file and also establish connection and with the z. War
file you don't have to wor about the um Z Channel versus uh config Channel because those are hiding behind the same you just use uh the SD case API to make the call to either print the uh label or send a firmware to the printer uh it's all behind the same implemented but if you prefer to create your own server rather than using z. or file then you have to work through those details uh how to open those two specifical connections and the documentation for doing that will be posted on the uh Resource page of this presentation okay uh this is a code s pit to demonstrate how you would discover the printers so once you have the printers connected to the z.w file with our uh Java SD okay so here you simply call the get connected printers this is the default port number of the server late provided by the uh zebra uhor file and the you put those all the uh go through those each discovered printers uh from this API and put them in a slim disco printer so that's a subset of the discovered printer on your list then you can start to use it right so it's pretty straightforward and in order to uh create a connection so here you if you use R SDK you don't have to worry about the whether it's a raw Channel or it's a configuration Channel you simply uh create a remote channel by putting the serial number that was discovered uh through the uh printer discovering API in the pre uh previous slide right and then uh can supply the port number and goes to this port to communicate with the printers uh with this serial number that's a unique identifier uh in the web socket to identify the printer you want to communicate and then you could open the uh chat communication uh and then get the printer instance once you have the printer instance you can do various uh different uh uh activities uh you can like a printer configuration label just just example so once you have a printer uh instance uh you can do uh you can call a lot of apis associated with a printer object so we are not going to car here it's well documented in the Java SDK API documentation uh this slid is demonstrated one use case of the CL connectivity uh called the ppme uh printer profile manager for Enterprise and I'm going to show you uh how this works in a later slide uh this is also based on the z.org file to create the uh
web server which connects to uh Zar printers but of course you have to register your printer with a ppme uh you can get the test account uh that's is published on our uh uh demo web page I I also put a link on the resource slides on this uh uh presentation another use case for the cloud connectivity is they send the file to a printer API so this API is also based on the uh Cloud connection from our printer uh to Zer Cloud uh you don't have to do anything because the printer the already has pre-installed zebra certificate device certificate the printer and the cloud is has this zebra signed server certificate on the cloud so the printer has the server certificate Authority pre-installed so you can automatically sync up with zbar Cloud uh without to do any else the user only need to config the web link one or web link two in order for the printer connect to the uh connect to zebra cloud and then invokes a cile to PR API which is uh rest of API allows application to go from anywhere uh from any application to initiate a print to those printer uh I'm going to show a brief demo as well for this uh use case the last use case is also relate to the uh Cloud connectivity uh as people may know the in the fir on all the zra L poter there is a data capture feature allows a paired Bluetooth scanner to capture input data and forward the input data to a web to http uh server so if you have the printer connect already connect to a cloud and you can uh let the printer to forward those capture data back to the uh HTTP server uh you intended to use to collect those uh data and then uh process the data and send the corresponding resulting label based on those data back to the printer through the cloud connectivity so this demo is also published on the uh Link printer demo web page I I have a link on the last slides in this presentation so but I'm not going to demonstrate it here okay so this is the uh Resource page which capture all the uh resources you may need first one is the SDK for web services uh that's is a documentation for uh how to use the web services where you can find the information how to create your own self-signed certificate how to install the self-signed uh certificate and uh apach Tomcat environment and also the uh second is to config the web link on the printer and the print secq uh give you information about how you use a uh if you have a self self signed certificate how you install the self-signed uh uh how you install the self signed certificate on the printer right and also how you use a device uh certificate if you prefer to have your own device certificate then you can follow this documentation to install the device certificate of yourself instead of use zebra device certificate and this page tells you all the cloud uh demo published on web page and the last one is the demo for the cile to printer uh API we published on the GitHub so now let me uh stop sharing and sharing the browser where we have the demo let me do it this way share the screen okay I need to share the screen okay now uh this first one is the uh ppme printer profile manager Enterprise demo uh I already have the demo setup uh I have two printers uh one is a uh zq three uh three one uh 310 another one is zq 620 so zq 3 10 so this is theq 3 10 and from here you can see uh we can you know uh retrieve the current status right and also I have the alert sent back to the uh uh the cloud by config the alerts back to the uh web link We config on the printer so if I open the printers head you will see the alert Reed immediately on the printer okay so that's how they alert get processes straight away okay and if I close it and you get the stat updated yeah uh immediately the same thing for the zq 6 20 then let's do uh zq620 okay uh I know the IP address that's is the one of the Z 620 okay that's my printer in my hand if if I open the cover you will see you know uh the alerts go straight back to the cloud application straight away and if I close the cover okay let's get updated straight away okay and also uh this is the demo page on the link uh demo web website uh where I have one printer zq turn connected so this zon connects to both clouds ppme clouds as well as the the web service developer demo this is based on the Tomcat 9 z.w file okay so I have this printer because I recognize the IP address that's my IP address connected so if I want to print a Content like a print a format for example if I want to print my name okay okay let me do this okay you see you know it print out straight away right okay the last uh application I'm going to show you is the uh this demo is based on the uh the one we posted on the GitHub it's for the cile printer so I have this zq 620 this connects to zbar Cloud for the send file to printer API as well as a ppme cloud so that's the serial number of this printer I'm going to choose the file I'm going to which is going to be sent to this printer that would be the hello word okay so if I click on send send the when successful so you say your hello world being printed out you know this way I do one more time okay so this you demonstrates how the cloud connectivity is so convenient for us to you know Implement Solutions which can be used from anywhere on any platform and send to printer uh connect to a cloud anywhere in the world so you you can even send a print job to printer you are not same yeah because it's a cloud connected so the printer can connect cloud from anywhere in the world so that's concludes my uh demonstration now I'm open for uh questions if you have any questions you know uh I would be happy to answer great thank you Stephen very informative um to those on the phone um if you can use the Q&A feature to ask any questions and I'll go ahead and ask them for you um on behalf that we have had a few come in let me just pull them up give me a minute um all right so Stephen I think maybe you covered some of this but it looks like they just need clarification um Can Zebra printers connect to a non zebra Cloud over the web socket yes of course uh you can create a your own cloud uh build your own uh web servers uh but however you have to have a a certificate uh installed on the printer uh as well as a certificate installed on your server so you have the certificate Authority installed on the printer so that printer can recogize can authenticate that a legitimate server you want this printer to connect with so as long as you have your self signed server certificate installed on the server and put the certificate auor on the printer and you are good to go you can connect to your cloud or anyone else's Cloud if you do the same great another followup came up to that one is can it connect to the zd420 specifically zd420 yes that's a link o printer yeah as I said you know all the link o printers has a cloud connectivity feature so you can certainly yeah use the zd420 either connect to zra Cloud uh without need to do anything or connect zd420 to to your own cloud which you would required you are required to install the uh certificate Authority and also the certificate on the server in order for the authentication to go through successfully great and this is similar question um so sorry the other one was specific to the zd420 but this is which Zebra printer models support the websocket um so a little bit more broader okay so as mentioned as long as link always uh printers uh then you you are good to go in order to check whether this printer is the Link printer a lot you can check the uh user Manu for that printer model it clearly stated whether this printer is a ink printer or not or you can uh query for the uh uh for the printer configuration you print out the uh printer conf fation label on that label it will tell you that whether it's a link o printer or not if it is a link o printer it will say link o version like a 6.3 or 6.8 Etc if it's not link o printer you would not have the link OS uh version information on the configuration label great and I think there is just one more um let me just see here I are there any link OS version minimums that we need to be concerned with link OSS 5.0 is old and 6.8 is current any concerns with that uh for the cloud connectivity the uh the webset was implemented uh in the link o 5 point something back in 1995 time frame so quite earlier so so you don't have to worry with our printer we already uh it's the link o 6.8 right now right but however uh for the send file to printer API in order to print send a PDF file then you need to use Link o 6.7 uh prior link o 8 prior link OS 6.7 the web socket was not able to uh
take the input of the PDF file only the TCP connection and USB con Bluetooth connections takes PDF content so we add this capability for the web circuit Connection in link 6.7 great thank you more questions are coming in Stephen so um very interesting topic here um connected to the zebra Cloud do the certificates have to be renewed on the printers after a certain time or does this happen automat ially when connect connect to the zra cloud we have a generic certificate installed on the printer uh with the firmware uh you don't have to worry about the exporation of the device certificate and on the if this a zar Cloud we automatically renew the server certificate every two years right but if you use your own uh server you your own Cloud you have to manage the expiration dates of the certificate on your server uh and also if you have your own device certificate on the zebra device then you have to you know uh manage the experation data as well but if you prefer to use the uh generic zebra device certificate prebaked with a firmware you don't have to worry the expiration date yeah great thank you and any other questions um please type in the the chat I at this moment I think we've gone through them but we'll give everybody another few seconds here to type in all right I think that wraps up um our our session for today thank you Stephen we appreciate it for those on the line we do have a quick survey if you could just hang on here as soon um it'll be popped up as soon as the webinar ends and if you can please just take a minute or two to let us know your thoughts that would be wonderful and we look forward to seeing you on our next one
2023-12-19