PrintService Class
Provides information about the printer device, allows to print plain HTML, HTML page by URL, image, image by URL, PDF, PDF by URL.
Constructor
PrintService
()
Item Index
Methods
Methods
addAvailabilityChangedListener
-
handler
Adds listeners to AvailabilityChanged event.
Parameters:
-
handler
FunctionA function that handles the event. The function that has a single parameter of boolean type and does not return a value.
Returns:
Example:
var connector = new buildingLink.Connector();
// Handles AvailabilityChanged event.
var onAvailabilityChanged = function(isAvailable) {
alert("Service availability changed: " + isAvailable);
};
var connectionSuccededCallback = function() {
// Adds listener to AvailabilityChanged event for any service: connector.barcodeScanService.addAvailabilityChangedListener(), connector.fingerprintReaderService.addAvailabilityChangedListener().
connector.idCardScanService.addAvailabilityChangedListener(onAvailabilityChanged);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
addSelectedPrinterChangedListener
-
handler
Adds listeners to SelectedPrinterChanged event.
Parameters:
-
handler
FunctionA function that handles the event. The function that has a single parameter of type Device and does not return a value.
Returns:
Example:
var connector = new buildingLink.Connector();
// Handles SelectedPrinterChanged event.
var onSelectedPrinterChanged = function(printer) {
var alertMessage;
if (printer) {
alertMessage = "Selected printer changed. New printer: " + printer.modelName;
} else {
alertMessage = "Selected printer changed.";
}
alert(alertMessage);
};
var connectionSuccededCallback = function() {
// Adds listener to SelectedPrinterChanged event.
connector.printService.addSelectedPrinterChangedListener(onSelectedPrinterChanged);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
getIsAvailableAsync
()
Promise | Boolean
async
Allows to determine whether device is available.
Returns:
A promise of the result that returns true if device is available or false otherwise in case of success.
Example:
var connector = new buildingLink.Connector();
var connectionSuccededCallback = function() {
// Gets whether device service is available or no. This method is common for all services and can be used like: connector.autoDialerService.getIsAvailableAsync(), connector.fingerprintReaderService.getIsAvailableAsync(), etc.
connector.webCameraService.getIsAvailableAsync().then(function (isAvailable) {
if (isAvailable) {
alert("Service is available.");
} else {
alert("Service is not available.");
}
});
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
getSelectedPrinterAsync
()
Promise | Device
async
Gets selected printer device.
Example:
// Creates a shortcut to avoid using long references to FailureReason below in code.
var FailureReason = buildingLink.connector.services.FailureReason;
var connector = new buildingLink.Connector();
// Defines failure handler for operation with device.
var failureGetSelectedPrinterHandler = function(failureReason) {
var failureMessage;
switch (failureReason) {
case FailureReason.ServiceNotAvailable:
failureMessage = "No attached Printers.";
break;
case FailureReason.InternalError:
failureMessage = "Internal error occured.";
break;
default:
throw new Error("failureReason");
}
alert(failureMessage);
};
var connectionSuccededCallback = function() {
// Gets selected printer device.
connector.printService.getSelectedPrinterAsync().then(function (printer) {
alert("Printer name: " + printer.name + "\n" + "Printer model name: " + printer.modelName); // Shows printer name and model.
}, failureGetSelectedPrinterHandler);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
printHtmlAsync
-
html
-
printSettings
-
numberOfCopies
Prints the plain HTML.
Parameters:
-
html
StringHTML to be printed.
-
printSettings
PrintSettingsPrint settings.
-
numberOfCopies
Number[numberOfCopies=1] Number of copies to print.
Returns:
A promise of the result.
Example:
// Creates shortcuts to avoid using long references to FailureReason, PrintSettings, Margins, and PaperSize below in code.
var FailureReason = buildingLink.connector.services.FailureReason;
var PrintSettings = buildingLink.connector.services.printing.PrintSettings;
var Margins = buildingLink.connector.services.printing.Margins;
var PaperSize = buildingLink.connector.services.printing.PaperSize;
var connector = new buildingLink.Connector();
// Defines failure handler for operation with device.
var failurePrintHandler = function(failureReason) {
var failureMessage;
switch (failureReason) {
case FailureReason.ServiceNotAvailable:
failureMessage = "No attached Printers.";
break;
case FailureReason.InternalError:
failureMessage = "Internal error occured.";
break;
default:
throw new Error("failureReason");
}
alert(failureMessage);
};
// Defines HTML and settings for printing.
var html = "<!DOCTYPE html><html xmlns='http://www.w3.org/1999/xhtml'><head></head><body><h1>Day Guest Pass - #120</h1><div>SCTL - Development South</div><div><label>Valid From:</label><span><span>Thursday</span><span>3/12/15</span><span>8:02 PM</span></span></div></body></html>";
var margins = new Margins();
var paperSize = PaperSize.createA4();
var printSettings = new PrintSettings(margins, paperSize);
var connectionSuccededCallback = function() {
// Prints 2 copies of HTML string with print settings.
connector.printService.printHtmlAsync(html, printSettings, 2).then(function () {
alert("HTML printed.");
}, failurePrintHandler);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
printHtmlFromUrlAsync
-
htmlUrl
-
printSettings
-
numberOfCopies
Prints HTML from URL.
Parameters:
-
htmlUrl
StringThe URL of HTML page to print.
-
printSettings
PrintSettingsPrint settings.
-
numberOfCopies
Number[numberOfCopies=1] Number of copies to print.
Returns:
A promise of the result.
Example:
// Creates shortcuts to avoid using long references to FailureReason, PrintSettings, Margins, and PaperSize below in code.
var FailureReason = buildingLink.connector.services.FailureReason;
var PrintSettings = buildingLink.connector.services.printing.PrintSettings;
var Margins = buildingLink.connector.services.printing.Margins;
var PaperSize = buildingLink.connector.services.printing.PaperSize;
var connector = new buildingLink.Connector();
// Defines failure handler for operation with device.
var failurePrintHandler = function(failureReason) {
var failureMessage;
switch (failureReason) {
case FailureReason.ServiceNotAvailable:
failureMessage = "No attached Printers.";
break;
case FailureReason.InternalError:
failureMessage = "Internal error occured.";
break;
default:
throw new Error("failureReason");
}
alert(failureMessage);
};
// Defines settings for printing.
var margins = new Margins();
var paperSize = PaperSize.createA4();
var printSettings = new PrintSettings(margins, paperSize);
var connectionSuccededCallback = function() {
// Prints HTML from URL with print settings. Note, that URL should be in the same domain as requesting page.
connector.printService.printHtmlFromUrlAsync("/printparkingpermit.aspx?id=123456789&layout=Half", printSettings, 1).then(function () {
alert("HTML printed.");
}, failurePrintHandler);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
printImageAsync
-
serializedImage
-
printSettings
-
numberOfCopies
Prints image.
Parameters:
-
serializedImage
StringSerialized image to print.
-
printSettings
PrintSettingsPrint settings.
-
numberOfCopies
Number[numberOfCopies=1] Number of copies to print.
Returns:
A promise of the result.
Example:
// Creates shortcuts to avoid using long references to FailureReason, PrintSettings, Margins, and PaperSize below in code.
var FailureReason = buildingLink.connector.services.FailureReason;
var PrintSettings = buildingLink.connector.services.printing.PrintSettings;
var Margins = buildingLink.connector.services.printing.Margins;
var PaperSize = buildingLink.connector.services.printing.PaperSize;
var connector = new buildingLink.Connector();
// Defines failure handler for operation with device.
var failurePrintHandler = function(failureReason) {
var failureMessage;
switch (failureReason) {
case FailureReason.ServiceNotAvailable:
failureMessage = "No attached Printers.";
break;
case FailureReason.InternalError:
failureMessage = "Internal error occured.";
break;
default:
throw new Error("failureReason");
}
alert(failureMessage);
};
// Defines settings and image for printing.
var margins = new Margins();
var paperSize = PaperSize.createA4();
var printSettings = new PrintSettings(margins, paperSize);
var imageBase64 = "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAtSURBVBhXY/iPA4AkGDAAVAIih86AUEAAVorEhdK4JOBCCAaEgwagEljA//8AYDWDfZh+fIQAAAAASUVORK5CYII=";
var connectionSuccededCallback = function() {
// Prints base64 image with print settings.
connector.printService.printImageAsync(imageBase64, printSettings).then(function () {
alert("Image printed.");
}, failurePrintHandler);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
printImageFromUrlAsync
-
imageUrl
-
printSettings
-
numberOfCopies
Prints image from URL.
Parameters:
-
imageUrl
StringThe URL of image to print.
-
printSettings
PrintSettingsPrint settings.
-
numberOfCopies
Number[numberOfCopies=1] Number of copies to print.
Returns:
A promise of the result.
Example:
// Creates shortcuts to avoid using long references to FailureReason, PrintSettings, Margins, and PaperSize below in code.
var FailureReason = buildingLink.connector.services.FailureReason;
var PrintSettings = buildingLink.connector.services.printing.PrintSettings;
var Margins = buildingLink.connector.services.printing.Margins;
var PaperSize = buildingLink.connector.services.printing.PaperSize;
var connector = new buildingLink.Connector();
// Defines failure handler for operation with device.
var failurePrintHandler = function(failureReason) {
var failureMessage;
switch (failureReason) {
case FailureReason.ServiceNotAvailable:
failureMessage = "No attached Printers.";
break;
case FailureReason.InternalError:
failureMessage = "Internal error occured.";
break;
default:
throw new Error("failureReason");
}
alert(failureMessage);
};
// Defines settings for printing.
var margins = new Margins();
var paperSize = PaperSize.createA4();
var printSettings = new PrintSettings(margins, paperSize);
var connectionSuccededCallback = function() {
// Prints image from URL with print settings. Note, that image should be in the same domain as requesting page.
connector.printService.printImageFromUrlAsync("/Barcode.aspx?ImageType=Gif", printSettings).then(function () {
alert("Image printed.");
}, failurePrintHandler);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
printPdfFromUrlAsync
-
pdfUrl
-
printSettings
-
numberOfCopies
Prints PDF from URL.
Parameters:
-
pdfUrl
StringThe URL of PDF to print.
-
printSettings
PrintSettingsPrint settings.
-
numberOfCopies
Number[numberOfCopies=1] Number of copies to print.
Returns:
A promise of the result.
Example:
// Creates shortcuts to avoid using long references to FailureReason, PrintSettings, Margins, and PaperSize below in code.
var FailureReason = buildingLink.connector.services.FailureReason;
var PrintSettings = buildingLink.connector.services.printing.PrintSettings;
var Margins = buildingLink.connector.services.printing.Margins;
var PaperSize = buildingLink.connector.services.printing.PaperSize;
var connector = new buildingLink.Connector();
// Defines failure handler for operation with device.
var failurePrintHandler = function(failureReason) {
var failureMessage;
switch (failureReason) {
case FailureReason.ServiceNotAvailable:
failureMessage = "No attached Printers.";
break;
case FailureReason.InternalError:
failureMessage = "Internal error occured.";
break;
default:
throw new Error("failureReason");
}
alert(failureMessage);
};
// Defines settings for printing.
var margins = new Margins();
var paperSize = PaperSize.createA4();
var printSettings = new PrintSettings(margins, paperSize);
var connectionSuccededCallback = function() {
// Prints image from URL with print settings. Note, that PDF should be in the same domain as requesting page.
connector.printService.printPdfFromUrlAsync("/parkingPermit.pdf", printSettings).then(function () {
alert("Image printed.");
}, failurePrintHandler);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
removeAvailabilityChangedListener
-
handler
Removes listeners from AvailabilityChanged event.
Parameters:
-
handler
FunctionA function that handles the event. The function that has a single parameter of boolean type and does not return a value.
Returns:
Example:
var connector = new buildingLink.Connector();
// Handles AvailabilityChanged event.
var onAvailabilityChanged = function(isAvailable) {
alert("Service availability changed: " + isAvailable);
};
var connectionSuccededCallback = function() {
// Adds listener to AvailabilityChanged event for any service: connector.signaturePadService.addAvailabilityChangedListener(), connector.autoDialerService.addAvailabilityChangedListener().
connector.idCardScanService.addAvailabilityChangedListener(onAvailabilityChanged);
// Removes AvailabilityChanged listener in 5 seconds for any service: connector.signaturePadService.removeAvailabilityChangedListener(), connector.autoDialerService.removeAvailabilityChangedListener().
setTimeout(function (){
connector.idCardScanService.removeAvailabilityChangedListener(onAvailabilityChanged);
alert("AvailabilityChanged listener."); // Observe that notifications will be stopped after this alert.
}, 5000);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
removeSelectedPrinterChangedListener
-
handler
Removes listeners from SelectedPrinterChanged event.
Parameters:
-
handler
FunctionA function that handles the event. The function that has a single parameter of type Device and does not return a value.
Returns:
Example:
var connector = new buildingLink.Connector();
// Handles SelectedPrinterChanged event.
var onSelectedPrinterChanged = function(printer) {
alert("Selected printer changed.");
};
var connectionSuccededCallback = function() {
// Adds listeners to SelectedPrinterChanged event.
connector.printService.addSelectedPrinterChangedListener(onSelectedPrinterChanged);
// Removes SelectedPrinterChanged listener in 5 seconds.
setTimeout(function (){
connector.printService.removeSelectedPrinterChangedListener(onSelectedPrinterChanged);
}, 5000);
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);
showSettingsAsync
()
Promise | Void
async
Allows to show device settings in Connector app.
Returns:
A promise of the result.
Example:
var connector = new buildingLink.Connector();
var connectionSuccededCallback = function() {
// Shows device settings for selected service. This method is common for all services and can be used: connector.idCardScanService.showSettingsAsync(), connector.barcodeScanService.showSettingsAsync(), etc.
connector.printService.showSettingsAsync();
};
var connectionClosedCallback = function(connectionError) {
alert("Connection failed."); // Shows connection failure message.
};
connector.activate(connectionSuccededCallback, connectionClosedCallback);