Professional Documents
Culture Documents
Xerox EIP SDK Integration Guide 41 PDF
Xerox EIP SDK Integration Guide 41 PDF
© 2018 Google Inc. All rights reserved. Google Chrome is a trademark of Google Inc.
© 2018 Novell
Changes are periodically made to this document. Changes, technical inaccuracies, and typographical errors
will be corrected in subsequent editions.
REVISION HISTORY
1. Introduction .......................................................................................................................................1
Overview .............................................................................................................................................1
Skill Set ...............................................................................................................................................1
References ..........................................................................................................................................2
i
Why is the web service or web site slow to connect? ...................................................................25
Why is there a delay before the scan job initiates?.......................................................................25
What API allows customized text within a login screen? ..............................................................25
What attributes can be used with the scan template? ..................................................................25
Why is the registration information corrupted after a device reboot? ...........................................25
Why does the EIP application icon disappear from the device panel? .........................................26
What unique id can be used to identify a device?.........................................................................26
Is there an EIP call to get serial number and/or mac address of a device? .................................26
Why is Network Accounting not enabled on the device? ..............................................................26
Why is there an error saying that a problem occurred trying to connect to the server? ...............26
Can an EIP server reside outside a firewall? ................................................................................26
Why do “????”(question marks) appear in place of “Custom Services” text? .............................26
Why is the EIP Application icon not appearing under Custom Services? ....................................27
Is it possible to configure the EIP application the default application? .........................................27
Is the setting: Enable the Extensible Services Browser “ON” by default? ....................................27
Why is there an error when a scan is initiated? ............................................................................27
When using the EIP registration tool, why is there an unable to authenticate user error? ...........27
Why does the application fail to make an https connection on some devices but not others? .....28
What devices support FTP, SFTP, HTTP, HTTPS, SMB, Netware®? ..........................................28
Unless otherwise noted, the devices support all of the noted Connectivity protocols. .................28
ii
1. Introduction
This guide is to be used in conjunction with the Xerox Extensible Interface Platform Software
Developers Kit (EIP SDK).
Overview
The EIP SDK is a set of API's available on Xerox Multifunction Devices. The support of
multiple destinations for scan solutions including email and Samples are new with the EIP
SDK version 4.1.
The EIP SDK has been validated in the following environments: The EIP SDK should be usable
in additional environments. Please contact your Support team if you encounter any issues or
have questions.
Windows Operating System: Windows Server 2008 R2 x64, Windows Server 2008 R2
SP1 x64, Windows Server 2012 x64, Windows Server 2012 R2 x64, Windows Server
2016, Windows 7 SP1 x86, Windows 7 SP1 x64, Windows 8.1 SP1 x64, Windows 10
Browser: IE, Edge, Firefox, or Chrome
NOTE: When you download the *.msi file in IE or Edge, you might see a warning message
“The signature of *.msi is corrupt or invalid”. This is because Visual Studio 2015 signs the
msi file with a sha1 certificate, and sha1 certificates are no longer valid after the end of
2015. Please ignore the warning message.
NOTE: Due to security restriction in Microsoft Edge the SDK may not load correctly from
the file system (file:///). Use a different supported browser to view the SDK, or setup a
virtual directory in IIS and view the SDK from localhost to get around this issue.
Skill Set
EIP (Extensible Interface Platform) is based on standard web services components. Any
industry standard web services tool set can be used to develop an EIP application (JAX-WS,
AXIS, WSE, WCF, GSOAP, etc).
The following skills and knowledge are recommended for the users of the EIP SDK:
Network Protocol Knowledge
o HTTP
o Web Services
o SNMP
Familiarity with the following
o HTML/CSS
o Java Script
o .NET
o Java
o PHP
EIP SDK Integration Guide 1
Introduction
o ANT browser
o WebKit browser
Knowledge of Xerox devices
References
The following information may be useful when developing an EIP application:
Xerox USB Card Reader Plug-in module needed on some devices for card reader
http://www.support.xerox.com/support/workcentre-5300-series/file-
download/enus.html?operatingSystem=win7&fileLanguage=en&contentId=12270
8&from=downloads&viewArchived=false
2
2. Using the EIP SDK
Feature Description
The Caveat has been removed from within the SDK and
EIP 4.1 Caveat is now a standalone document
LayoutAdjustment
Nup
ListCertificates
RemoveCertificate
GetCertificate
GetCORSStatus
SetCORSStatus
GetCORSTrustedDomains
SetCORSTrustedDomains
GetNetworkConfig
SetNetworkConfig
New files:
XRXWorkflowManagement.js
XRXRegistration.js
XeroxJavascriptLibrary Update files:
4
Using the EIP SDK
Side – value=”SecondSideRotation”
LayoutAdjustment
Nup
5
Using the EIP SDK
6
Using the EIP SDK
[Alert]
xrxscrollable region’s padding no longer being
incorrectly applied to other widgets inside of it.
[Bounding Box]
Xrxscrollable region’s padding no longer being
incorrectly applied to other widgets inside of it.
[Button]
Enabled min-width and min-height to improve
error handling.
Accommodate two lines of text inside a width
constrained button.
[Keyboard]
Updated base keyboard plugin to newer version
Less code optimization
Fixed a bug that interfered with the keyboard
correctly handling read-only inputs that are
marked as read-only dynamically after the DOM
load
Improvements to the keyboard’s destroy()
method
Fixed theming issue with Primary theme on
keyboard inputs
Cleaned up unneeded touch events in Keyboard
Fixed incorrect keys in second row of Russian
10” keyboard layout
Fixed Glyph centering issues in keyboard
layouts
Improved language select list to scroll to
currently selected language when opened.
Add when the max number of characters for an
Widget Issues fixed input has been entered the input keys on the
keyboard will be disabled
In SDK 4.1 Added caret plugin to keyboard to style the
release displayed caret
New extended keys are now broken out by
keyboard layout instead of having a single set of
extended keys for all layouts
New Option: disabled
Added Ukrainian keyboard layout
Added Croatian keyboard layout
[Popover]
Ensure that the popover is never positioned off
screen
Method:setTargetControl() – Allow to pass in the
Event object that will bring up the popover as a
parameter
New Method: Close()
New Event: open
New Event: close
[Popup]
Updated default width to work with the addition
of the Alternative Layout Button Widget
Default value for maxWidth has been changed
to ‘null’
Set the “tap” option’s default value to be “false”
Improved handling of min/max height/width
options
Popup’s titles now utilize ‘light’ font weight
New Option: customActionBar
New Option: momentum
[Progress Indicator]
7
Using the EIP SDK
8
Using the EIP SDK
9
Using the EIP SDK
10
Using the EIP SDK
Added in the AltaLink supports the EIP API for loading digital
SDK 4.0.12 certificates onto the device.
release Digital Certificates
Scan Services
Network Scan Architecture (NSA) defines how a Xerox device scans to a network location using
scan templates.
Scan API describes the scanning capabilities of the device and how to interact with
them using the device scan services (templates, filing protocols, image formats, and
network template repository).
Template Management API describes the web services interface used to check that
the interface version is compatible, list, upload, delete, read and write device scan
templates.
Parser API (Parser) provides a library to create templates, edit or read parameters
from a template. It is used to parse both job templates and job logs.
Scan Extension API (Version1) ability to obtain a device’s scan capabilities and initiate
a scan from within Presentation Services.
Scan Extension API (Version2) is used to initiate scan jobs locally or remotely with a
NSA compliant template or a job ticket. Allows images from a scan job to be retrieved
by the submitting client. Backward compatible with ScanExtension(Version1) API.
Workflow
Workflow Management API allows sending of scan jobs to multiple destinations including
Email, Network Filing Servers and USB.
Fax Services
Fax Services was integrated with the Scanning Services and refer to the Scan Services section
for using Fax.
Print Services
WSD Print API leverages industry standard printing protocols, LPR and Port 9100.
11
Using the EIP SDK
EIP Pull Print Web Service print using a print ready document at a given URL and
submit over http/https
Accounting Services
JBA API Job Based Accounting (JBA) holds accounting information on the device until
a remote client downloads the data. Note: Some MFDs refer to JBA as Network
Accounting.
Off Box Validation API provides the interface for development of Off Box Validation
server that processes JBA Accounting code validation or Scan Template Meta-Data
validation requests from the MFD.
Job Limits API works in conjunction with Accounting (e.g. Job Based Accounting) to
provide a method to implement a cost control accounting system. Note: This is only
available on devices which support EIP 2.0 or higher.
Management Services
Device Configuration API is a web service used to get device capabilities. This is a read
only API.
Access Configuration API is a web service that enables access control information for
applications on the device (EIP and non-EIP) to be set. It also allows the client to view
and modify the configuration values for all accounting methods.
EIP SNMP WS API is a web service that enables partners to access the MIB objects.
UI Configuration API provides method to view and modify the behavior of the Local
UI of the MFD.
Network Configuration API allows the setting of a proxy server for the Presentation
Services browser. This allows the EIP application to be used in a hosted model.
EIP Tools – EIP Simple Solution Toolkit a library that simplifies the setup and
configuration of the EIP features up to EIP version 1.5.
Xerox MIBs Provide the network manager access to configure the unique parameters
for Xerox MFDs.
Presentation Services
EIP Embedded Browser EIP Solutions (Applications) are accessed from a browser that
is resident on the device. First generation (ANT Gallo S12) and Second Generation
(WebKit) that provides HTML5 capabilities, better coherence to industry standards,
compatibility with modern libraries such as jQuery
12
Using the EIP SDK
Session API is used to get information about the currently logged in user. This API can
only be called from the device through the embedded browser (it must be called using
localhost address). Sample code is included in the SDK.
Widgets provide partner applications with a set of widgets built to the standard Xerox
look and feel provided on Xerox MFDs. Copies of the Widget sets and usage examples
are provided in the SDK.
Authentication Services
Convenience Authentication (Secure Access) API enables usage of 3rd party access
control mechanisms (card readers, biometric readers) to control access to the devices
with authentication methods. It can be used to restrict access to color copy function,
and/or restrict access to a select group of users (used in conjunction with
Authorization).
Note: This can be used in conjunction with Job Based Accounting (JBA).
Card Reader API provides the ability to interface to an off-the-shelf card reader that is
connected to the device. It provides a high level interface to determine if one or more
readers have been plugged in and a way to obtain the card data when a card is
swiped. See the Card Reader Support section for the supported card readers, card
reader types and supported MFDs.
Mass Storage API allows a client access data stored on an external Mass Storage
device plugged into the MFD.
Note: This is only available on devices which support EIP 2.0 or higher.
Job Services
Copy Services API allows the application to submit copy jobs on the platen or DADH.
Also allows the application to submit copy jobs with or without specifying a limited set
of attributes. The Copy Service also allows the application to pause, resume or cancel
a submitted copy job.
Job Management API allows the application to list the device active and completed
job queue, retrieve job details for a specific job, and perform job operations such as
pause, resume and cancel.
Note: This is only available on devices which support EIP 2.0 or higher.
Note: The Emulator supports Presentation functionalities and APIs up to EIP 1.5.
13
3. EIP Health Check Tool
The EIP Health Check Tool is designed to assess the EIP capability and readiness of a
device. It is an enabler for determining how a Xerox device is set up, or for debugging
why a particular device may not be performing.
Note: The EIP Health Check Tool is provided as is. Problems and issues with the tool may
be reported to Xerox Developer Program; however, there is no commitment to fix any
defects with the tool.
Note: The EIP Health Check Tool does not support the newer web services such as EIP
SNMP, Workflow Management, and others.
Feature Description
Win 64 bit OS Support Health Check Tool Version 1.9 supports Win 64 bit OS
is supported
not applicable
* Device available in the VIC
16
Device Differences
17
Device Differences
Product EIP Note if Minimum EIP Note if Minimum EIP Note if Minimum
Firmware Version is Firmware Version Firmware Version is
3.7 4.0 4.1
needed for EIP 3.7 is needed for EIP needed for EIP 4.1
Support 4.0 Support Support
Xerox® AltaLink® B8045 / Minimum not Required Minimum not Minimum not
B8055 / B8065 / B8075 / Required Required
B8090 Multifunction Printer *
Xerox® AltaLink® C8030 / Minimum not Required Minimum not Minimum not
C8035 / C8045 / C8055 / Required Required
C8070 Color Multifunction
Printer *
18
Device Differences
Xerox USB Card Reader Plug-in module needed on some devices for card reader
http://www.support.xerox.com/support/workcentre-5300-series/file-
download/enus.html?&contentId=128366
Class of EIP
Off-box validation
Scan Extension
Network Config
Scan Template
Authentication
Access Config
Security Mgmt
Copy Services
Device Config
Presentation
Convenience
Management
Registration
Accounting
Job Mgmnt
(Version 1)
Job Based
UI Config
Session
Parser
(ANT)
Xerox 4112/4127
All Services
Copier/Printer
WorkCentre &
Switch Mode
WorkCentre Pro 232/238
WorkCentre &
Switch Mode
WorkCentre Pro 245/255
WorkCentre &
Switch Mode
WorkCentre Pro 265/275
WorkCentre
Switch Mode
5632/38/45/55/65/75/87
19
Device Differences
Embedded Browser
Class of EIP
Off-box validation
Scan Extension
Network Config
Scan Template
Authentication
Access Config
Security Mgmt
Copy Services
Device Config
Presentation
Convenience
Management
Registration
Accounting
Job Mgmnt
(Version 1)
Job Based
UI Config
Session
Parser
(ANT)
Product All Services
or Switch
Mode
WorkCentre
All Services
6400/6400x/6400F
WorkCentre Bookmark
Switch Mode
40&55
Xerox
All Services
D95/D110/D125/D136
EIP 2.0 and EIP 2.5 APIs. All devices in this list also support EIP 1.0 and 1.5 APIs from
above.
Class of EIP
USB Mass Storage
Scan Extension
Copy Services
Job Mgmnt
(Version 2)
Job Limits
20
Device Differences
EIP 3.0 and EIP 3.5 APIs. All devices in this list also support EIP 1.0, 1.5, 2.0, and 2.5 APIs
from above.
Barcode Reader
Class of EIP
Certificates
Embedded
Embedded
Presentation
Keyboard
Services
Browser
(Webkit)
Digital
Product All Services
or Switch
Mode
EIP 3.72 and EIP 4.0 APIs. All devices in this list also support EIP 1.0, 1.5, 2.0, 2.5, 3.0, and
3.5 APIs from above.
Class of EIP
Ant REMOVED
Widgets and Presentation
EIP 9th Gen
Samples
Product All Services
or Switch
Mode
21
Device Differences
Class of EIP
Ant REMOVED
Presentation
Widgets and
EIP 9th Gen
Samples
Product All Services
or Switch
Mode
EIP 4.1 APIs. All devices in this list also support EIP 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, and 4.0 APIs
from above.
Web Services
and Samples
Management
Gen Widgets
Management
Certificate
Enhanced
Workflow
Digital
Product
All Services or Switch Mode
22
Device Differences
API releases
The below chart shows when each API was introduced (EIP 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 3.7, 4.0 or
4.1).
EIP 1.0 EIP 1.5 EIP 2.0 EIP 2.5 EIP 3.0 EIP 3.5 EIP 3.7 EIP 4.0 EIP 4.1
Registration Access Copy Scan EIP SNMP WebKit WebKit EIP EIP 9th Gen WorkFlow
Configuration Services Extension Web embedded embedded Widgets and Management
(See charts API Services keyboard keyboard Samples Web Service
above for (Version 2) Only supported
devices that by the latest
support this AltaLink
API) products.
Embedded Security Job Pull Print Embedded Digital Ant Ant Updated EIP 9th
Browser (Ant) Configuration Management Browser Certificate REMOVED REMOVED Gen Widgets
(WebKit) and Samples
Scan API Network Job Limits Job Limits Barcode EIP 9th Gen Enhanced
Configuration (Copy) (Print/Scan) Reader Widgets and Digital
Support Samples Certificate
Management
Scan
Extension API
(Version 1)
JBA
Off Box
Validation
Device
Configuration
User
Configuration
(UI)
Session
23
Device Differences
Convenience
Authentication
Secure Access
Information on the screen sizes and resolutions supported by the various Xerox devices is found in
the SDK.
Xerox Extensible Interface Platform SDK\Presentation Services\Programmers
Guide\Programmers Guide Overview\Device Model, Widget and Display Table
Proxy Setting
In newer MFDs (EIP 3.5 and later), the default setting for proxy is no longer "No Proxy". The default
is now Proxy (proxy auto-detect WPAD/PAC). This change means that a MFD by default can be
using automatically determined proxy settings even if manual proxy settings were not set on the
device.
Note: Having the proxy enabled on a device can break apps that require proxy to be disabled (local
network only) to work correctly. If your app requires the proxy to be disabled on a device, you
should not disable the proxy but instead add a proxy exception for your server. This ensures that
other applications that do require the proxy to be enabled will still function properly.
The following devices will support this feature: WC58xx, WC59xx, WC7970, WC72xx,
WC78xx, WC3655, WC6655, all Xerox® AltaLink®, and all Xerox® VersaLink®
24
5. Frequently Asked Questions
This Chapter provides information to frequently asked questions and some general hints and tips
for developing an EIP application.
What is ConnectKey?
Please check the following link for information on ConnectKey.
www.office.xerox.com/connectkey/enus.html
The OS may be set to automatically Update Root Certificates, disabling the automatic update may
resolve the issue. Checking for the SSL certificate updates takes times request will not initiate until
either an update is found or the update service errors out.
The OS may be set to automatically Update Root Certificates, disabling the automatic update may
resolve the issue. Checking for the SSL certificate updates takes times request will not initiate until
either an update is found or the update service errors out.
The Convenience Authentication API can be used to customize the login. More specifically this API
will enable the EIP application to prompt for keyboard input. Within the EIP SDK this API is found:
Authentication Services> ConvenienceAuthenticationAPI> Documentation
Note: A way to obtain a sample template to implement a new template is to create a template in
the device web UI browser and save file, then use the scan template client to get a copy.
The vendor field in the registration portion may contain a comma. Currently a comma is
not allowed in this field.
Why does the EIP application icon disappear from the device panel?
The vendor field in the registration portion may contain a comma. Currently a comma is
not allowed in this field.
The icon may be hidden by access configuration.
Serial numbers or MAC ids can be used as unique identifiers. Serial numbers are 9 or 10
digits (the first 3 digits identify the model).
Is there an EIP call to get serial number and/or mac address of a device?
The getDeviceInformation call in the Device configuration web service returns this
information.
Network accounting is a paid option on some devices. The option is not installed
Network Accounting enablement is different on the various Xerox devices, here are some
hints and tips to enable this feature.
o Ensure Admin is not logged in (Logout as admin)
o The device may need to be rebooted as the final step to enable Network
Accounting.
o There is a sample tool, JBAClient.exe in the EIP SDK (Accounting Services>
JBA API> Samples). Use this on the machine that is hosting the EIP application to
determine if communication with the device is enabled.
Why is there an error saying that a problem occurred trying to connect to the server?
The OS may be set to automatically Update Root Certificates, disabling the automatic
update may resolve the issue.
Validate certificates are enabled in EIP enablement.
Yes with devices that support EIP version 1.5 or later, the EIP Presentation Services
server can run outside of the firewall. EIP 1.5 or later device can be setup such that the
Browser uses a Proxy server.
26
Frequently Asked Questions
Why is the EIP Application icon not appearing under Custom Services?
Note: this varies by device, the following may not apply to specific device being used. The label
names may be different on specific device being used.
Note: this varies by device, the following may not apply to specific device being used.
Note: the EIP application can be set as the default application on devices supporting EIP 1.5 or
later.
Yes an EIP application can be configured to be the default application. The SDK describes
this in the following section Management Services >UIConfigurationAPI
>Documentation
Note: this varies by device, the following may not apply to specific device being used.
Note: this varies by device, the following may not apply to specific device being used.
Ensure the scan Extension web service turned on at the device. It can be found via the
protocols >http > web services link (or Extensible Services Setup >Extensible service
Registration >edit).
Ensure the FTP client is enabled.
The template is invalid.
The device may need to be rebooted to enable all selections.
When using the EIP registration tool, why is there an unable to authenticate user error?
The registration API depends on a time/date stamp in the SOAP header. If the date and
time set on the device is out of sync with the client trying to contact it (server or client
application such as the registration tool). Devices coming from the factory typically have a
date way in the past; so ensure the date on the device is appropriately set.
SSL may be checked on, but may not be enabled on the device
SSL may be misconfigured; (port 433)
The wrong username or password is being used, or may have been used too many times.
27
Frequently Asked Questions
Why does the application fail to make an https connection on some devices but not others?
Due to potential security vulnerabilities, recent device firmware releases allows the
administrator to disable the use of TLS 1.0 for secure communications. To ensure
compatibility with various device configurations, developers should enable their
applications to connect to the device using TLS 1.2. It should be noted that previous
versions of the SDK contained code samples that used .NET 4.0 which only supports TLS
1.0 or lower. If you built your app using those code samples, you should rebuild your app
using .NET 4.6 or higher or java 8 to support TLS 1.2 protocol by default.
Unless otherwise noted, the devices support all of the noted Connectivity protocols.
28