US20040125403A1 - Method and apparatus for enabling distributed subscription services, supplies maintenance, and device-independent service implementation - Google Patents
Method and apparatus for enabling distributed subscription services, supplies maintenance, and device-independent service implementation Download PDFInfo
- Publication number
- US20040125403A1 US20040125403A1 US10/686,751 US68675103A US2004125403A1 US 20040125403 A1 US20040125403 A1 US 20040125403A1 US 68675103 A US68675103 A US 68675103A US 2004125403 A1 US2004125403 A1 US 2004125403A1
- Authority
- US
- United States
- Prior art keywords
- services
- service
- devices
- host
- platform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
- G06Q10/0875—Itemisation or classification of parts, supplies or services, e.g. bill of materials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Definitions
- Embodiments relate to electroreprographic marking machines, facsimile machines, scanning devices, multifunction devices, and the like. Particularly, embodiments relate to the implementation and distribution of services such devices can offer users.
- post-sale lifecycles ranging from break-fix service (repairs), to ongoing supply of consumables and supplies, to product upgrades, enhancements, and integration into solutions and other offerings.
- break-fix service repairs
- product upgrades enhancements
- integration integration into solutions and other offerings.
- post-sale processes were manual in nature and required the device owner/user to play an active role in relaying limited information to manufacturers and suppliers at the time of need.
- Disadvantages of current systems include tight coupling of communication method and system architecture, one-size fits all deployment and integration strategies, and typically no support for devices already deployed. Systems that do offer support for devices already deployed typically are inconsistent between how already deployed devices and new devices are handled. Additionally, systems typically do not include an ability for rapid upgrade, extension, customization, and evolution of features, processes, and workflows and are often limited to basic business processes, failing to provide external services and solutions APIs in a consistent fashion. Generally, and almost across the board, systems treat the device as a simple repository of information, rather than an active participant in the services enabled. Devices must continue to have their mainline feature sets enhanced to stay competitive.
- speeds, feeds, image quality, and document workflows are typically characteristics that are enhanced to render devices competitive.
- increased post-sale interaction between devices, users, and suppliers, and the ability to integrate products into solutions and services and vice versa are becoming points of distinction between devices in the marketplace.
- devices' success and value will likely be measured by the ability of devices to actively participate in their post-sale lifecycles, their ability to seamlessly integrate with solutions offerings, and their capacity for customization and extension based on user needs and requirements. The results of such device abilities are improved ease of use for the user, more effective support from manufacturers, and better overall user satisfaction
- Embodiments can automate current, manually-performed and/or non-uniform business processes, as well as providing new workflows to address evolving user requirements. This will be accomplished by, for example, employing embodiments to enable devices to be active participants in their life cycles and value added services while keeping the users in control. Embodiments do this using standards architecture, such as Distributed Management Task Force and Common Information Model (CIM) based standards, to allow services to be written once for all devices employing and/or compatible with embodiments and to enable easy modular additions of new services on a product by product basis.
- standards architecture such as Distributed Management Task Force and Common Information Model (CIM) based standards
- embodiments provide a common service model, services that work with a multitude of disparate devices, and flexibility in physical, logical, and operational configurations. Devices take on an active role in providing users with enhanced post sale experiences. Embodiments can enjoy seamless integration into back-office processes of both users and manufacturers.
- embodiments comprise a flexible end-to-end system for connecting devices to solutions offerings.
- Many deployment options in various physical locations and configurations are possible to allow broadest device coverage and rapid deployment of capability for both machines in field and new products, while insulating device changes from back-office changes.
- An agent software component embedded into devices, add-on modules, and device proxies provides a common device model, common information management (CIM) application programming interface (API), and an environment in which device services can run.
- CIM common information management
- API application programming interface
- a common abstraction of a communication mechanism allows the system to be independent of the physical transport linking nodes.
- a service model supports services that run close to the device and their lifecycle, which includes the methods and processes for effective management and customization of services and solutions.
- services that are once written to the agent are capable of running on any device, add-on module, or proxy that includes the agent. This yields a system that enables devices and device proxies to be deployed and work together seamlessly from the point of view of the services, as well as policy-based provisioning for device-based services with both user and supplier inputs.
- the embedded service agent takes an active roll in solutions offerings and works in coordination with distributed solutions and/or a network-accessible server to provide required functionality.
- the server provides a clearing house for messages that must traverse the system and provides management functionality necessary to connect and customize distributed services at multiple levels of granularity.
- Embodiments can create financial benefits. Embodiments can provide cost savings from reduced service engineer usage through increased user self-help, remote diagnostics, and prognostics. In embodiments including automated meter reads, reduced collection process infrastructure, better contract enforcement, and reduced reserves against inaccuracies can provide additional cost savings. Further, embodiments participating in automated supplies ordering can enable decreased inventories through increased accuracy of tracking consumables at user sites, in part due to more timely, accurate, and applicable measures. Additional cost savings could be realized in terms of eliminated phone time due to fewer call-in orders and disputes. Finally, embodiments can contribute to an increase in revenue from new services since so many users would be willing to pay a fee for the services offered by embodiments.
- Embodiments respond to user need and interest by including, for example, a new class of remote services. These services will capitalize on the increased connectivity of devices in the user environment, and utilize embedded computations within the devices themselves to make devices active participants in simplifying user work processes.
- the platform enables a standards-based solution that can be used to modularly implement remote service offerings in a cross-platform manner that all use a common back-office integration and work processes. Specific examples of the types of services that can be offered in embodiments include: automated meter reads, automated supplies ordering, productivity reporting, software download, assisted user self-help, remote diagnostics, and prognostics.
- Embodiments include a class of services that exist in support of the devices (printers, scanners, repositories, and even other services and solutions) and their lifecycles making them easier to own, use, support, purchase, and upgrade.
- these services increase the value of devices to users and can potentially also increase their user satisfaction over the life of the product. This in turn should translate into higher user loyalty and consideration from our users when making new purchases.
- Embodiments provide the underlying set of components and their interconnections that enable suppliers to deliver these types of post sale services to users in an effective and efficient manner.
- the high-level goals defined for the platform have been used to drive the architecture and development of initial components and services.
- the detailed attributes of each support the four major goals for the platform.
- the major components of this system all work together behind the scenes to make the services offered behave seamlessly for users.
- Embodiments provide for automated reporting of meter reads via phone, fax, or computer network. Additionally, embodiments automatically monitor supplies, warning users when supplies are low and allowing automated ordering of supplies then and in subsequent similar situations. Additionally, the services a device offers can be tailored to the users' particular needs, but can later be augmented or reduced as required by the user via automated service subscription, downloading, and installation offered by embodiments. Further, embodiments walk users through any operation they wish to perform, including small repairs and replacements of user replaceable units. An additional advantage of embodiments is the ability to manage assets of multiple devices from a central application.
- FIG. 1 is a schematic illustration of the overall architecture of embodiments.
- FIG. 2 is an another schematic illustration of the overall architecture of embodiments.
- FIG. 3 is a schematic illustration of a method of service subscription and deployment according to embodiments.
- FIG. 4 is a schematic illustration of a deployment option according to embodiments.
- FIG. 5 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 6 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 7 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 8 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 9 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 10 is a more detailed schematic illustration of the device model agent according to embodiments more detailed schematic illustration of the interaction between devices, the device model agent, services proxies, and the services host according to embodiments.
- FIG. 11 is a more detailed schematic illustration of the interaction between devices, the device model agent, services proxies, and the services host according to embodiments.
- FIG. 12 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 13 is a schematic illustration of an additional deployment option according to embodiments with more emphasis on the Device Model Agent and its relationship to a device.
- FIG. 14 is a schematic illustration of an additional deployment option according to embodiments with more emphasis on the Device Model Agent and its relationship to a device from another perspective.
- FIG. 15 is a schematic flow chart of a method of operation of a service manager of the Device Model Agent according to embodiments.
- FIG. 16 is a schematic illustration of a CS Platform add-on component according to embodiments.
- FIG. 17 is another schematic illustration of a CS Platform add-on component according to embodiments.
- FIG. 18 is a schematic illustration of a wireless deployment scheme of a CS Platform add-on component according to embodiments.
- FIG. 19 is a schematic illustration of a method of setting up a CS Platform add-on component according to embodiments.
- FIG. 20 is a schematic illustration of a provisioning server according to embodiments.
- FIG. 21 is a more schematic illustration of a CS Platform add-on component according to embodiments.
- Embodiments provide a system 1 composed of several types of distributed software and hardware components that ensure physical and logical system design flexibility and responsibility of the components.
- Embodiments employ an architecture including, for example, devices 110 in the user/user environment 100 , an asset management system 200 that can be in the user's network or environment 100 , and a services host 310 that provides services 320 to which devices can subscribe.
- System management and services are provided in a system where devices are active participants in both their own services and lifecycle needs as well as those services and lifecycles in which they are only a part.
- DMTF Device Model Task Force
- CIM Common Information Model
- CDMA 120 Common Device Model Agent
- Each device 110 is preferably represented to the services host 310 by a CDMA 120 that communicates the status and configuration (part of 111 ) of its device 110 , services 140 offered, and other information (additional parts of 111 , for example) to the services host 310 using a common transaction language, such as DMTF CIM, for example.
- the DMA also provides a services environment 124 that is a runtime environment for services 140 on the device in which it resides, providing device-independence for the services offered by the services host 310 .
- a particular service 140 can be written once and run on a wide variety of devices 110 .
- This allows One to Many configurations, which can be enabled, required, and utilized as necessary.
- embodiments can include device proxies, including simple proxies that include only behavior, and proxied device models, as will be expanded upon below.
- embodiments can include devices that communicate directly with the services host.
- the CDMA 120 includes the services environment 124 , a CIM API 123 , a CIMOM 125 and service manager 126 in the core DMA 122 , and a common provider API 121 .
- the common provider API 121 communicates with device-specific provider APIs 112 of the device 110 and retrieves information 111 about the device, including, for example, its configuration, status, and supplies levels.
- the common provider API 121 then makes such information available to the CIMOM 125 and service manager 126 in the core DMA 122 , and services 140 running in the services environment 124 .
- the DMA 120 can reside between a services layer 141 (the collection of running services 140 ) and device-specific APIs 112 and can communicate directly with the services host 310 .
- the DMA 120 must be connected to a communications medium, such as a telephone line or computer network, to enable communications with the services host 310 .
- Devices 110 can communicate with the services host 310 and or service proxy via network, land phone line, cellular communication, packet radio, pager based, BluetoothTM, IEEE 802.11, or any other suitable communications scheme. Such communications can be device initiated, host initiated, can be monitored and/or audited, and can use user preference, service offerings, and overall quality of service to determine which selections are appropriate for a particular scenario.
- the services 140 can be independent of device configuration; specifics of service content can be provided by the back-office or supplier 300 , with service subscriptions being issued and validated by back-office business processes, allowing rapid introduction of new services.
- Embodiments thus include an end-to-end system 1 assembled from many components using a unique combination of modularity, distributed computation, service models, and transactions.
- Embodiments employ an overall system architecture that supports rapid and flexible deployment of services in a modular fashion.
- this architecture employs abstraction of functionality and identification of system elements, common interfaces, and messaging models for communication between them.
- For device services there are four main entities that can work together in a consistent and flexible manner: the devices themselves; management and service applications in the user's environment; back-office servers specializing in service management and service configuration; and business process integration servers and the business processes surrounding those services.
- FIG. 1 shows a schematic representation of major components that can comprise the platform represented by embodiments.
- a small footprint embedded service platform 140 and intelligent agents 122 combined into the DMA 120 can be deployed and integrated with devices 110 .
- Intelligent proxies for devices 110 enabling group management and participation in services, can be included in the platform, either as standalone applications or as part of other applications.
- such intelligent proxies can enable legacy devices that are not themselves already enabled to interface with aspects of embodiments.
- a medium independent communications and applications infrastructure connected to a computer network or other communications network, such as the Internet and supplier intranet, is employed that can securely and robustly connect fielded devices and products to the supplier and its internal systems.
- embodiments include a set of industry standard web services technologies integrated with value-added extensions to enable those services. Embodiments thus provide set of services that run in and on an end-to-end system that support devices.
- Devices 110 are typically physically located in user sites 100 , though embodiments can accommodate devices 110 on other sites as well, and can be distributed around the world. A variety of devices 110 ranging from low-end products to high-end systems can be included. Embodiments use devices 110 that provide, for example, three main enablers in this system. Devices 110 provide a Common Device Interface (CDI) and a Common Information Model (CIM) 123 to enable easier integration with services by hiding device specific differences behind the interface.
- CDI can be implemented in the CDMA 120 as the Common Provider API 121 . This enables service reuse and greatly reduces the complexity of the system 1 .
- the CDI is specified via a Distributed Management Task Force (DMTF) CIM with service-provider and/or manufacturer specific extensions for services and service management.
- DMTF Distributed Management Task Force
- the CIM 123 can also be based on the DMTF CIM with specific extensions better suited to devices with services, including diagnostics extensions, that can be provided by service-providers and/or manufacturers.
- Devices 110 in embodiments of the inventive system 1 provide, for example, an embedded service platform 124 allowing services 140 to be delivered and run close to the device 110 .
- the embedded service platform 140 also provides for local management of services, via service manager 126 , and the ability to accept newly deployed services 140 asynchronously with software releases for the hosting platform. This reduces system complexity and speeds deployment of new or refined services to the field.
- the DMA 120 provides the embedded services platform 124 , though other systems could provide the platform.
- the DMA is preferably a software module that enables the embedded computational power, data, and functions of the device to be accessed and used in services that are deployed in a common fashion.
- These components will typically be distributed across the user's environment 100 as well as at the supplier 300 . Together, they provide a flexible end-to-end system 1 for connecting products (such as devices 110 and services 140 ) to post-sale solutions offerings (additional services 140 ).
- the system 1 in embodiments, is designed to provide an architecture in support of a series of deployment options in various physical locations and configurations. Preferably, embodiments provide the broadest device coverage and most rapid deployment of capability for machines in the field and new products in such a way that isolates changes at the device 110 from changes at the back-office 300 .
- Embodiments further provide a unique, value-added, agent software component, the DMA 120 , embedded into devices 110 , add-on modules 115 , and/or device proxies 210 that provide the common device model 122 , DMTF CIM API 123 , and new device services environment 124 . Additionally, embodiments can provide a common abstraction of the communication mechanism(s) that allows the system to be independent of any physical transport linking the nodes (devices to supplier systems, etc.), providing greater flexibility and deployment customization based on user requirements.
- the service model of embodiments supports services that run “close to the device” and their lifecycle, which includes methods and processes for effective management and customization of services and solutions.
- Services in embodiments once written for the DMA 120 can run on any such enabled device 110 or proxy 220 , and devices and device proxies can be deployed and work together seamlessly from the point of view of the services. Provisioning in embodiments can be accomplished on a policy basis for device based services based on both user and supplier supplied information, and services can be made available with rapidity.
- the DMA 120 in embodiments takes an active roll in solutions offerings and works in coordination with the distributed solutions.
- These distributed device agents 120 work together with a server 310 at the supplier 300 accessible over a network, such as the Internet or a telephone system.
- the server's role is to provide a clearinghouse for messages that must traverse the solution and to provide management functionality necessary to connect and customize the distributed services at multiple levels of granularity.
- an option to add a physical system component 115 to the device 110 is provided by embodiments.
- a device 110 enabled in this fashion will look no different than a device 110 with the capabilities embedded, as long as the add-on component 115 has a rich interface to the device 110 .
- embodiments including such an add-on component 115 can have the component mounted on the input-output terminal (IOT) of a marking machine, connected to the IOT via EPSV, PWS, and potentially CAN Bus interfaces, and connected to a network. This configuration gives the IOT the capability to participate in device services 140 .
- IOT input-output terminal
- inventions feature an add-on system component.
- This add-on component can be, for example, a low-cost, embedded personal computer platform running an operating system, such as Linux or Darwin, and a Java Virtual Machine, such as, for example, Insignia's JeodeTM Embedded Virtual Machine, within which runs the DMA services platform.
- This add-on component can connect directly to the IOT through an interface, such as EPSV and PWS. The device is then also connected the user's internal network.
- the devices management and service applications 220 in the user's environment back-office servers specializing in service management and service configuration business process integration servers and the business processes surrounding those services.
- the schematic representation of these system level components and their interconnections are shown in FIG. 1.
- Embodiments specifically relate to the role of devices in end-to-end system management and post sale application architecture and in offering services to users.
- the Device Model Agent (DMA) 120 the device side technology module in Device Centric Services (DCS) platform, is the main focus of this invention.
- DMA is a thin, efficient applications/services execution environment.
- the DMA provides a flexible, extensible, dynamic services management system allowing e-services to be designed, added, and managed within system without modifying the platform itself. While this invention specifically describes the integration of benefits from DMA into document system devices, the concepts are equally applicable in other domains.
- the DMA runtime environment is a thin software interface layer that resides on a document system device between the Java runtime environment and embedded web server.
- the device model agent as described herein adds the following capabilities to document system devices.
- the unique combination of these capabilities enables several benefits related to system management application development, deployment, and maintenance.
- the DMA 120 enables active participation in applications and services offerings, such as, for example, post-sale, system management, and other services.
- the devices 110 that embed DMA 120 can perform several computational tasks required in system management applications and services.
- an application server 200 installed, for example, in the user environment 100 or supplier 300 back office server 310 , and the target device 110 collaborate to complete system management offerings.
- the DMA 120 provides a service execution environment 124 where a service 140 may run as a whole or be part of a system management application or host system 320 running on an application server or host system 310 of a services supplier 300 .
- the DMA services preferably can monitor device events and take prescribed actions.
- the DMA 120 can preferably publish data to subscribers/users upon occurrence of an event of interest and can preferably invoke methods, such as diagnostic routines, on the device 110 as directed by internal or external clients or users. This moves device specific processing closer to the device 110 from a centralized application server 320 .
- the role of the applications server 320 transforms from a compute platform for execution of applications/services to the management and configuration of applications/services 140 .
- devices 110 become active participants in the process, as opposed to being passive data repositories in strict client/server architectures.
- the DMA 120 can also perform dynamic updates of services 140 and support components operating within the end-to-end DCS platform 1 .
- Devices 110 that employ the DMA 120 can add new service components 140 dynamically. It allows a user or application component already on the device 110 to request such additions to support services 140 . It can also allow the addition or deletion of components as needed and without system or DMA recompilation or restart.
- the target device 110 itself initiates the additions of a new or upgraded service as a whole or supporting components for existing services.
- the device 110 can now be responsible for initiating the activity to maintain itself and system management services running on it.
- Embodiments additionally recognize the need for an application/services execution environment 124 to enable developers to work with consistent and standards-based tool set.
- the DMA 120 enables the development of device independent post-sale applications 140 .
- Applications 140 written using DMA 120 interfaces do not have to change to accommodate new or upgraded DMA enabled devices.
- the DMA 120 implements a model-based approach espoused by DMTF for achieving device independence for applications/services, it adds to this implementation a new component called the service manager 126 .
- the service manager 126 is primarily responsible for controlling service 140 lifecycle of each service 140 activated for the device.
- the service manager 126 preferably manages the services 140 and provides a programmatic interface (an API) for system management clients, local or remote, for control and management of services 140 .
- an API programmatic interface
- DMA-enabled devices and DCS application servers allow services provisioning and management by an application server or hosted systems 320 on a services host 310 of the supplier 300 or by a third-party service provider.
- the DMA-enabled devices 110 and application servers 320 collaborate to provide dynamic provisioning.
- users can review a set of applications, select or customize one or more applications to fit their needs, and order the selected set. Subsequently, the applications can be installed, enabled, turned on, monitored, and/or managed.
- the architecture of the DMA 120 in embodiments allows its deployment in several ways: For example, according to embodiments as shown, for example, in FIGS. 4, 9, and 11 , the DMA 120 can be embedded in a networked device 110 , such as a printer or multifunction device. In this embodiment, the DMA 120 becomes a web server side component.
- the DMA 120 can, for example, use Java Servlets, a standard method for hosting service-components behind a web server.
- the DMA 120 can be embedded in a specialized hardware device or add-on component 115 to devices 110 that are standalone, such as copiers, or for existing devices in field that are not able to run the DMA 120 .
- add-on components 115 are shown schematically in FIGS. 12, 16, and 17 , and will be discussed in more detail below.
- DMA 120 is embedded in a network application 220 , either as a single device proxy or multiple device proxy configurations. Such proxy configurations are illustrated, for example, in FIGS. 7, 8, and 11 .
- post-sale applications can be important for continuing user loyalty.
- sale of a document system device is just the beginning of the user relationship.
- Continued service, support, supplies replenishment, and on-going maintenance become the main considerations that determine user retention rate.
- the development, deployment, and management of post sale applications in a cost effective fashion itself poses several challenges.
- the complexity is driven by the presence of multiple stakeholders, including developers, device manufactures, service owners, and customers/users.
- the DMA 120 is preferably designed, according to embodiments, to bring all major stakeholders together and address the requirements of all stakeholders.
- the DMA 120 preferably constructs a layer of abstraction between device specific interfaces 111 and system management applications. See, for example, FIGS. 10, 13, and 14 .
- the abstraction provides a common view of device data, event, and operations to system management applications.
- the DMA 120 adopts a model-based approach to create device abstractions.
- the device models used for this purpose are based on industry standard efforts in DMTF (Distributed Management Task Force) consortium.
- An enhanced version of DMTF Common Information Model (CIM) is used as a basis.
- CIM Common Information Model
- the implementation of common model with device interface is unique. Interactions between post-sale application clients and DMA are based in DMTF CIM Operations Over HTTP specification.
- the DMA 120 enhances a DMTF/CIM implementation by adding a service manager component 126 .
- the service manager 126 is responsible for loading services 140 , maintaining a list of services 140 currently installed in the DMA- 120 , and management and lifecycle control of services 140 .
- the service manager 126 preferably works as an automated process and can automatically look up and start services 140 as a standalone component that can be accessed programmatically or through a DMTF CIM API 123 .
- the service manager 126 can provide access to active services 140 on the device 110 , as well as management data for one or more active services 140 .
- the DMA service manager 126 preferably supports core services that are started automatically when the service manager 126 loads. Such core services preferably do not require provisioning support.
- the service manager 126 also preferably supports subscribed services 140 that require enablement through a dynamic provisioning feature of the DMA 120 .
- FIG. 15 is a schematic flow diagram that illustrates the service manager 126 startup and normal execution.
- the DMA 120 boots, it starts the service manager (block 510 ).
- the service manager 126 loads the core services (block 511 ) and checks with the dynamic services provisioning host (block 512 ).
- the service manager 126 further interprets and processes service configuration parameters (block 513 ) and loads and starts subscribed services 140 (block 514 ).
- the service manager 126 then monitors the services 140 for management purposes (block 515 ) and interacts with a system management client as desired (block 516 ).
- the DMA 120 is preferably written using a substantially platform-independent language, such as, for example, Sun's Java 2 Micro Edition (J2ME).
- J2ME Sun's Java 2 Micro Edition
- the DMA is thus highly portable and can be used as a system component in any system configuration where Java is available.
- Management and services applications 200 can be located in the user's environment.
- Some applications 220 can enable the offering of device services by, in part, behaving as a services proxy for devices 110 that are networked but not fully enabled to participate actively in device services by themselves as shown schematically in FIG. 7, for example.
- the applications 220 can act as proxies for networked devices that do not have the DMA 120 or the software to support the service offerings 140 directly.
- some applications such as Xerox® Corporation's CentreWare Web® (CWW), can act as device proxies for Simple Network Management Protocol (SNMP) enabled devices.
- SNMP Simple Network Management Protocol
- the application such as CWW, assumes the responsibility for hosting the services 140 that run close to the device 110 .
- the device 110 looks nearly the same when proxied via applications 220 as it would if the device communicated with the services host 310 directly.
- the difference between proxied devices and direct devices is substantially no different than the differences associated with direct devices with different levels of firmware.
- the device capability variations can be managed on the back-end/services host 310 via a provisioning system for device-based services. The impact of these variations is that advanced services utilizing very specific capabilities of a given device become less portable; that is, services written for product specific sections of the CIM extensions will not be completely portable and may not be as compatible with other devices. However, services written to the Core and Common models will remain portable, and deployment issues will be managed by the provisioning system.
- the applications 220 can also behave as services proxies for devices that are not networked directly, but have an add-on connectivity option.
- a connectivity option can be hard wired, such as Ethernet, or wireless, such as BluetoothTM or IEEE 802.11, and can be local or more expansive in its coverage.
- a stand-alone copier with no network connection for printing can have a small wireless LAN connection has been added, such as an 802.11b or other wireless network.
- the proxy behaves in all the same ways as when a networked device without DMA is proxied, but the proxy now also includes the hardware required for the wireless access point used to communicate with the devices to which add-on connectivity has been attached.
- An example of such a system would be CWW installed on a server that is both physically networked on a LAN and also has a wireless access point attached.
- the devices 110 proxied in a wireless fashion look no different than those proxied on the LAN.
- the applications 220 can also enable consolidated management of services from a server in the user environment.
- Device proxies can provide, in embodiments, an aggregation and group management function for services associated with their proxied devices. This can, for example, be a graphical user interface (GUI) for a system administrator or user to look at the status of services on a set of devices.
- GUI graphical user interface
- the common device interface of services and their transactions to the back-office systems, such as services hosts 310 can be an extension of the interface used on the devices themselves. This enables the services to work for both direct to device situations and situations in which devices use proxies.
- the API from a device directly communicating with the services host is supported, along with a limited set of specific device proxy extensions that deal with transactions and data related to the proxy. All transactions aimed at the devices should look the same.
- the hosted portion of the services can be located off the user's site 100 , 200 , and can be located at the manufacturer's or other service providers' facilities 300 .
- a device services edge host 410 handles the transaction and service management for the device services deployed to the field. This includes the management of message queues and provisioning of software modules and configuration parameters in support of the distributed services 140 .
- the edge host 410 is also responsible for the host end of the security and service models employed by the device services system 1 .
- the edge host 410 also provides connections to service sponsor systems 310 . This connects the external device services world to the internal (or third party) services world. The connections to each of the organizations sponsoring the services are maintained through the edge server and can be compliant with security rules and regulations of the entity maintaining the server and host.
- the edge host insulates the device 110 or device proxies 220 from having to have direct knowledge of the details of interaction with the back-office complexities of the services involved on the services host 310 . This insulation is advantageous in deploying device services in a manageable and robust fashion.
- embodiments present a common services API to the back-office sponsor organizations in order to standardize the basic operations. Specific services can extend and customize the content of the transactions for a given application.
- the devices 110 and user applications 220 can be located in the user's environment 100 , 200 .
- This can be a managed services environment as well as a regular user environment. Services and communications are distributed and span from the user's internal systems and network 100 , 200 across the Internet or other suitable long-distance connection mechanism 400 .
- Well known web services, as well as future web services, comprise preferred communications mechanisms 130 , 230 , 330 that are preferably used between the devices/application(s) 110 , 220 and the edge host 410 , as well as between the edge host 410 and internal services providers 310 .
- the system 1 is preferably built to meet basic IT industry and other standards for its ability to work with existing firewalls both on the user's side (firewall 160 ) and on the service provider side (firewall 360 ). No special configuration of the user's firewall 160 is required in order to make this system work properly.
- the service supply system 300 is preferably part of the basic supplier infrastructure to provide a robust, well-managed, 24 ⁇ 7 level of service and disaster recovery for all user systems to employ.
- an edge host 410 can handle the transaction and service management for the device services deployed to the field. This includes the management of message queues and provisioning of software modules and configuration parameters in support of the distributed services. It is also responsible for the host end of the security and service models employed by the device services system.
- the edge host also connects the external device services world to the internal (or third party) services world. The connections to each of the organizations sponsoring the services are maintained through an edge server and are preferably complaint with supplier security rules and regulations.
- the edge host 410 preferably, in embodiments, isolates the devices or device proxies from having to have direct knowledge of the details of interaction with the back-office complexities of the services involved. This isolation can assist in deploying device services in a manageable and robust fashion.
- a common services API is presented to the back-office sponsor organizations in order to standardize the basic operations. Specific services can extend and customize the content of the transactions for a given application.
- the system 1 is designed to enable services 140 to operate directly between the devices 110 and the back-office (supplier) 300 in some systems, or to be operating with the help of a device proxy 220 in others. This ensures the broadest possible deployment as rapidly as possible because the device proxy 220 can quickly bring many legacy devices into the service offering very quickly while user slowly get new devices which are directly enabled themselves. Having both modes of operation is also important because some users will prefer to have a proxy act as a consolidator/clearing house for messages leaving their site rather than from each device independently. In other sites, users may not want to install a device proxy and therefore need the services to be enabled directly. In addition to having each path enabled, it is beneficial to have them work together, because in the end it is possible for users to have both scenarios in place at the same time.
- embodiments decouple the devices 110 and proxies 220 from the back office systems 310 as much as possible. A strong abstraction and decoupling of these two halves makes it possible to deploy capability in devices 110 or the back-office 300 in a staged and independent fashion. In addition, if changes need to be made to systems on either end, the changes will not ripple throughout the overall system 1 if proper abstractions are enabled, enhancing maintainability.
- the abstractions throughout embodiments include, at the device level, an abstract device model 122 embedded in the DMA 120 .
- the abstract device model 122 is built using the DMTF's CIM as a base.
- the device model 122 and services platform 124 both reside in the DMA 120 , in embodiments.
- Common services point into the supplier's domain 300 regardless of the services offered.
- embodiments use a common API for service sponsors to build and administer services from the supplier back office 300 .
- the common API deals with devices 110 all the same way, regardless of type or connection mechanism.
- This architecture in embodiments provides flexible deployment options, such as deployment flexibility in terms of direct device communication to suppliers or communication via a proxy.
- the services themselves can be defined so that many of their parameters can be customized.
- This service customization can include, for example, the data that is sent as part of a remote monitoring service, the time of day or frequency at which meter reads are sent to the supplier.
- the exact configuration parameters can be specific to the service being offered.
- the platform of embodiments is designed to enable the configuration of services to be easily managed.
- the system allows for the configuration of the services to be specified at the individual device serial number, for all devices at a user's site, or for all machines owned by a user no matter where they are.
- This management in embodiments, is done in the back office controlled by the service provider.
- An additional part of the flexible deployment options is the use, according to embodiments, of a subscription basis for the services available for devices, as illustrated schematically in FIG. 3.
- the subscription process can be controlled and managed, for example, by the individual service provider, and the services offered to any given device can be controlled by a combination of user desire and service provider authorization.
- CLDC Java standard
- This released standard describes how Java programs can be run on a small device such as a cellular phone and more importantly how modular programs called Midlets can be added at runtime to a CLDC Java environment.
- OSGi A second relevant standard is called OSGi.
- OSGi is a Java based, released standard which allows a collection of local, network connected devices to communicate with remote servers and download and run modular services. Compared to CLDC/Midlets, this standard has received much less support in industry.
- OSGi also sidesteps the server aspects of provisioning.
- SyncML Device Management A third standard is SyncML Device Management.
- SyncML is a released standard focused on the details of keeping mobile devices in synch with some server based sources. The focus in this standard is on things like calendars and appointments. In the last year, this synchronization protocol was extended with the Device Management effort to explicitly support the ability to change service settings on a mobile device and to be able to download services to it. SynchML sidesteps the server side of provisioning.
- JSR-124 A last standard is unnamed but is commonly referred to as JSR-124.
- Java programmers use the Java Community Process (JCP) to create and standardize Java Specification Requests (JSRs) as additions and extensions to the Java language.
- JSR-124 is the J2EE Client Provisioning Specification.
- J2EE is a standard for using Java in high end, transaction processing. A large and growing market has been growing up around it. Effectively, JSR-124 tries to define a framework within which to express provisioning systems in. Almost all the provisioning startups and many of the telecom companies are members of the JSP. It tries to be common enough so that all provisioning systems can interact with a J2EE system in a standard way but loose enough so that vendors can create alternate, competitive solutions. The standard is in the public draft review stage.
- a Provisioning Server (PS) 310 the DCS devices 110 that talk to it, and the supplier personnel that interact with it all preferably act according to a shared model for how the provisioning process works.
- a lifecycle model can be created that defines the roles and responsibilities for each actor that interacts with the PS 310 . Based on roles and responsibilities, grammars and commands have been created to allow the actors to accomplish their role based goals.
- a provisioning server 900 running, for example, in the services host 310 that meets all the requirements in this section is schematically illustrated, for example, in Table I and FIG. 20.
- the first major module is the Service Consumer Interface 901 . It is preferably responsible for all interactions with External Users and External Devices 110 , 220 . It also preferably isolates the other PS modules from the different protocols that Devices and Customers may use.
- the preferred protocol in embodiments is Web Services, but in the future may be extended to http, email, cellular or other transmission formats. For incoming transactions, it routes the transactions to the correct internal resource to process the request.
- the Entity Management module 902 is a generic PS resource that preferably localizes and isolates entity information from the rest of the server 900 .
- the module holds information on entities such as machines, users, their preferences, and associated location information.
- entity information that is not local the Entity Management module 902 is the single point of contact with these other IM systems.
- the module 902 provides a seamless interface for local and network based information.
- the order processing module (OPM) 903 is responsible for directing the processing of orders from Service Sponsors as well as those created by the policy & preferences module (PPM) 904 .
- the OPM 903 interacts with required PS modules to achieve the order requirements.
- the OPM 903 also preferably tracks the status of an order to be able to respond to inquiries from Sponsors.
- the registration, authentication, & authorization module (RAAM) 905 is responsible for maintaining the security of the system at all times.
- the RAAM 905 preferably authorizes all users of the PS and authorizes their ability to execute specific transactions. It is responsible for correctly registering all users, both internal and external.
- the RAAM 905 does this by working with the entity module 902 to obtain required information.
- the RAAM 905 is also preferably responsible to work with the service consumer and order processing modules 901 , 903 to isolate security related artifacts of transactions.
- the service definitions module 906 is responsible for maintaining all definitional information on all services 140 provisioned by the PS 900 . Version information, file composition, service inter relationships, product line support, are examples of the contained information.
- the service developer interface module 907 is responsible for supporting service developers in their work to develop, distribute, and update services.
- the service participant interface module 908 is responsible for interfacing with all users and directing service lifecycle and service transaction information to the right resources.
- Embodiments apply soft computing techniques, such as, for example, rules and constraints, as a general solution to flexibly model, develop, and examine service policy.
- the provisioning decision itself is less important overall. That is, given a device 110 that needs a service 140 , the PS 900 determines whether it is allowed, whether there is a bundle (the collection of code files that make up the service to be installed) that is compatible with the device 110 operating parameter information (model type, OS version, etc.), which of a plurality of bundles should be selected if there are a plurality, and what the parameter settings (if any) for the service 140 should be.
- code can not be written that implements “business rules” that can be used to resolve the questions above.
- Coding would be required for every change of a rule, the rules would not be directly inspectable by policy makers, and it would assume that each question is separable from the others. Further, it assumes that there is a single policy maker that determines the answers for all the above questions. Thus, an alternate solution must be, and is, provided, in embodiments.
- the ability of the provisioning server 900 to use policy based knowledge to identify the correct bundle and parameters is advantageous in several situations. For example, this ability is preferably applied when the PS 900 has received an Add Service Request and needs to compute the answers to the questions above. Additionally, the PS 900 employs this ability when a Policy Maker for any service has made an update to the policy knowledge. The PS 900 can compute the impact of that change, addition, or deletion to the existing relevant devices actively connected to the PS 900 . Then the PS 900 can generate the necessary change requests to the impacted devices 110 to achieve the goals of change and use the change in all future Add Service transactions.
- the PS 900 decides whether the device's services 140 and/or parameters should be changed because of that change. If necessary, the PS 900 can generate change requests for the device 110 as required by the policy knowledge.
- Policy Setters can define uniform service versions or parameter settings based on Internal or External Customer requirements through use of rules. This uniformity may be defined at a user level, a site level, a machine category, or any other relevant grouping
- the service subscription and deployment method includes identification by a user or user DMA 120 of a service offering 140 of interest and a request for activation of such service (block 501 ).
- the DMA 120 sends a message for the supplier system 300 regarding the interest and requested activation.
- the supplier system 300 retrieves the message from the edge host 410 and applies business rule and work processes to determine user eligibility (block 502 ). If the user is approved, the supplier system 300 notify the edge host 410 that the requested service 140 can be added (block 503 ). The next time the DMA 120 checks in with the edge host 410 , it receives the message that the service 140 can be added (block 504 ).
- the DMA 120 then activates the service 140 , downloading and/or installing it if necessary (block 505 ).
- the new service is then deployed and running (block 506 ).
- Sales of services can be done through a plurality of channels. This process is preferably owned by the sponsoring organization (the supplier of the service) and is done in whatever manner the sponsoring organization chooses. It can, for example, be done from the device if desired.
- embodiments provide that the sponsoring organization applies whatever business rules and billing/invoicing processes it requires to comply with an applicable business model for that particular service. If the sponsoring organization determines that the device can be permitted to provide the specified service to the user, the sponsoring organization uses a common services order/entry API on the edge server to officially place the order. This can, in embodiments, generate a message that can set deployment and configuration of the desired service into motion.
- Messages are preferably queued for delivery, and the process waits until delivery of the messages occurs.
- the service sponsor preferably has the ability, via the system according to embodiments, to turn services on and off as needed based on whatever criteria the service sponsor determines is necessary.
- Services are preferably written to be device independent.
- the Common Information Model provided by the Device Model Agent provides a device independent representation of the common data and methods in embodiments. Services are configurable since all users do not have the same requirements. Having configurable services accommodates variation in requirements and operation that may be required. Services are dynamically loadable to enable rapid deployment of new services to users with devices already deployed in the field. And services have a lifecycle to enable management after they are initially deployed. Examples of lifecycle transactions include, but are not limited to, add service, delete service, modify service, sync services, device registration, and proxy registration.
- the DMA 120 is defined, in embodiments, to enable the embedded computational power, data, and functions of the devices 110 to be accessed and used in services 140 that are deployed in a common fashion.
- An embedded agent 122 and service platform 124 enables embodiments to support local operation of services 140 that play into the overall system 1 . This provides the common connectivity, service manager, common data access and methods, and secure communication to the service provider/supplier in support of services offerings.
- FIGS. 4 - 9 and 11 show several exemplary embodiments representing possible deployment options for systems according to the invention.
- Deployment A an exemplary embodiment seen in FIG. 4, is a preferred embodiment for smart devices as are currently shipped by some companies, such as Xerox® Corporation. It can limit the amount of infrastructure required of users to support deployment of services 140 and provides the simplest implementation. It need not require additional hardware or software to be installed in the user's environment, though devices 110 must be fitted with the functionality of the DMA 120 , including the services platform 124 , if they are not already part of the devices 110 . This embodiment is not likely to address many machines already in the field unless the device software is upgraded or another method is employed to give the fielded devices the DMA and services platform.
- While communications between the device, via the DMA, and the back-office host are substantially independent of the physical medium, preferred embodiments employ the user's network and the user's Internet access to connect back to the supplier host system.
- Other communications schemes such as, for example, local wireless, long distance wireless, telephone, wireless telephone, and satellite telephone can of course be used as well.
- each device 110 includes its respective DMA 120 and runs its own services 140 in its own services layer 141 facilitated by the DMA 120 .
- Management and other applications 220 can be employed on another machine 200 that can also be in the user's environment 100 or can be elsewhere.
- the devices 110 preferably use web services 250 , such as HTTP, HTTPS, and SOAP, to communicate with the supplier 300 and a services host 310 therein.
- the services host 310 includes services 320 and host systems 340 that can assess communications from the DMAs 120 and deploy services 140 when appropriate.
- Deployment B another exemplary embodiment seen in FIG. 5, enables already fielded devices and devices produced by third parties who do not have the required technologies embedded in them to support device services. While multiple devices can be handled in such a manner, this description will focus on one such device for simplicity.
- a relatively small add-on component 115 is added to the device 110 .
- the add-on component 115 contains necessary software and the DMA 120 , as well as one or more connections to the device 110 to enable the add-on component 115 to gain access to the internal data and functions of the device 110 .
- the device/add-on component combination looks like a completely enabled device, as in deployment A seen in FIG. 4, to the rest of the services infrastructure and back-office systems. This provides device services according to embodiments for legacy and third party production equipment.
- the add-on component 115 with the DMA 120 and its attendant services environment 124 , then communicates with the supplier 300 via web services 250 as in deployment A of FIG. 4.
- Deployment C a third exemplary embodiment seen in FIG. 6, uses a proxy configuration in which an application 220 capable of acting as a proxy runs the services for at least some of the devices 110 .
- Devices 110 that do not themselves have the required software enablers embedded, such as the DMA 120 and services platform 124 .
- an application 220 acting as a services proxy for the devices can communicate with the devices 110 , such as, for example, via LAN, phone, wireless, or other communications media.
- the basic proxy implements the services APIs 140 for a selected set of services 140 , but preferably does not use the full DMA 120 and standard dynamic services deployment method to the devices 110 themselves since these features can not be supported with the legacy devices. This deployment is also limited by the richness of the connection between the simple proxy and the device: if data or a function can not be accessed remotely, then services that require them can not be deployed.
- Deployment D a fourth exemplary embodiment shown in FIG. 7, is a more advantageous form of proxy configuration.
- This embodiment enables devices without the required embedded software enablers (i.e. the DMA 120 ), but that can communicate in other ways, such as, for example, via LAN, phone, or wireless, to participate in the services deployment system.
- the devices 10 communicate with one or more applications 220 that act as a services proxy for the devices 110 .
- the services proxy is a DMA enabled proxy that can host a DMA 120 for each device 110 communicating with the services proxy. Additionally, the services proxy can manage the DMAs 120 for the devices 110 with which it communicates.
- This also enables additional local applications to be written on the services proxy that can take advantage of the DMA 120 and the common information model representations of the data and functionality of each of the systems. This can greatly simplify applications since they can be hidden from the implementation specific to each device and only have to build to the common representation of data and methods in the CIM. This is the same advantage that the services gain when written against the CIM and DMA.
- portions of the DMA that can manage multiple instances of the CIM and services can be instantiated once and used to manage the DMA proxy of multiple devices. That is, the full DMA need not be replicated for every proxied device, which can make this embodiment more efficient that just dropping all the DMAs for the connected devices onto one server.
- Another aspect of the services proxy embodiments is that portions of the DMA that can manage multiple instances of the CIM and services can be instantiated once and used to manage the DMA proxy of multiple devices.
- the full DMA need not be replicated for every proxied device; rather, one DMA can be used for plural devices. This makes deployment more efficient than simply dropping one DMA for each device onto one server.
- embodiments cover the deployment of a device proxy for a printer directly connected to a personal computer.
- the proxy can be hosted on a user's computer, and a printer, such as a printer connected via a parallel interface, is the device with which the proxy interacts.
- the proxy can also connect to the print driver for the directly connected printer as an additional source of data to populate the DMA or services interface.
- the computer can host the DMA and, to the extent supported by the direct connection to the device and the local instrumentation via print driver or other access mechanism, the directly connected printer looks networked from a services and systems management point of view.
- Deployment E a fifth exemplary embodiment seen in FIG. 8, comprises a local variant of the exemplary embodiments seen in FIGS. 6 and 7.
- Services can be offered locally, that is, within a substantially self-contained site, in a fashion similar to Internet-spanning embodiments.
- Such an embodiment uses the abstraction of the DMA 120 to enable more consistent management and service offering implementations to local devices 110 . While this lacks the connection to back-office service providers 300 , the services 140 can be unique for a user or simply self-contained for security reasons. Management of local services 140 and devices 110 can then be moved from a centralized locale for all devices 110 to a more localized domain.
- Users can, for example, assume the role of supplier, if so desired, in such an embodiment by running the equivalent of a back-office on their intranets, including application servers, and, depending on user security requirements, edge hosts. This will increase the complexity of the maintenance and support of such a system if offered by a third party, but is a possibly useful configuration given the abstractions defined.
- Deployment F in FIG. 9, enables multiple application servers 310 and/or multiple edge hosts 410 receiving communication from enabled devices 110 .
- Deployment F is an embodiment that an combine, for example, elements of deployments A, B, D, and E.
- the services 140 can be written such that they describe everything required for the services 140 to check in in an appropriate fashion with appropriate application servers 310 via the appropriate edge hosts 410 .
- the services host 310 to which the edge host 410 connects the devices 110 is not limited to any particular services host or supplier 300 , but can connect to any suitable parties to offer services, as long as the services API presented by the edge host 410 allows such connection.
- the Device Model Agent (DMA) 120 is an enabling component of the end-to-end system 1 according to embodiments.
- the DMA 120 can be embedded in devices 110 , add-on modules 115 , and/or device/services proxies to provide a common device model 122 , a CIM API 123 , and a device services environment 124 in which services 140 can run.
- the DMA's role is to provide devices 110 with the capability to actively participate in business process and services that surround the devices throughout their lives. It combines aspects of the Common Information Model Object Manager (CIMOM), from the Distributed Management Task Force (DMTF), and a novel environment for the operation and management of embedded and dynamic services.
- CIMOM Common Information Model Object Manager
- DMTF Distributed Management Task Force
- the agent is responsible for local operation of services and the management of information represented in the CIM.
- the agent interacts with the device, services (both local and distributed across a networked environment), and other distributed system components.
- the DMA provides the device independent CIM API as specified by the DMTF, but also provides a device independent Service API.
- the DMA can engage in autonomous and adaptive behaviors, either initiated locally or through interaction with other distributed components.
- the DMA can also, for example, react to events in the device and the environment, again either locally or distributed, and, in embodiments, can engage in self-management of services and actions.
- the device independence of the DMA is extended through the use of, for example, JAVA and the J2ME small footprint JAVA standards.
- the DMA is not limited to this particular implementation and could be assembled in any suitable software structures with varying degrees of complexity and difficulty to provide all features.
- This exemplary embodiment of the DMA advantageously uses the J2ME Connected Device Configuration with the Foundation Profile to enable the broadest range of devices from large system components with many resources to small systems with limited resources.
- the Device Model Agent is not limited to this implementation, and many others are possible in variants of JAVA or other programming languages as required by the device in which it resides.
- the J2ME environment can ensure that the DMA software is device independent and reusable across device and product platforms. J2ME also offers support for networked and distributed systems, embedded security capabilities, and support for dynamic download and operation of code.
- embodiments include extension of the device independence of the agent through the use of a platform-independent standard, such as, for example, the JAVA and the J2ME small footprint JAVA standards.
- a platform-independent standard such as, for example, the JAVA and the J2ME small footprint JAVA standards.
- the agent is not limited to such implementations and could be assembled in any software structures with varying degree of complexity and difficulty to get all the features.
- Embodiments of the agent using a J2ME Connected Device Configuration with the Foundation Profile can enable a broad range of devices, from large system components with many resources down to small, embedded systems with limited resources. Many other embodiments are possible using variants of JAVA and other programming languages as required by the device in which the agent is to be embedded or which the agent is to represent.
- the J2ME environment is a preferred environment due to its ability to ensure the agent software remains substantially device independent and substantially reusable across device and product platforms.
- J2ME includes support for networked and distributed systems, embedded security capabilities, and support
- the DMA provides the ability to hide multiple, disparate sources of data behind a common provider API. This further abstracts the details of the device from the software agent. In embodiments, four separate sources of data can be unified behind the common provider and CIM so that the services need not know the details the data sources. For example, EPSV, PWS, CAN Bus, and Web UI, data can be managed in this fashion.
- a set of tools can also be provided in embodiments that enable the provider layer and the CIM contained in the Device Model Agent to be easily customized for a given product or device. This encourages reuse and speeds release because programs adopting or maintaining the Device Model Agent need only be concerned with the mapping of CIM element to the source of data and not the management of the entire Device Model Agent.
- An enabling feature of the end-to-end architecture of the system components is the inclusion of, in embodiments, an appropriate abstraction of the communication methods employed between various distributed components.
- This abstraction is preferably applied to the physical connection mechanism, as well as to the protocol level up through session level.
- Such abstraction at both levels helps to hide the details of the communication method from the distributed components, allowing them to focus on the operation of the services and decoupling them from changes in the communication media or protocols. For example, this allows the system to use email over a wireless link or Web Services over a dedicated Ethernet link without the services themselves caring which is used.
- This type of abstraction is new to devices and provides several important benefits. It provides for flexibility in deployment of the system components for any given user. Information on the Quality of Service that can be expected from any given combination of physical and protocol, up through session layer, connections can be carried.
- the system can have a component on the host/back-office side that monitors the Quality of Service for various configurations to assess the effectiveness of a communication link for providing the quality of service required by a given service offered to a particular user. This is an element of the provisioning and self-monitoring portions of the overall end-to-end system.
- the communication abstraction also provides some fault tolerance. If one connection mechanism goes down for some reason, the communication module can detect that and replace the failed connection with another working one without the rest of the system knowing other than the fact that potentially a change in the quality of service has occurred.
- services can alternatively be “hardcoded” into a device or proxy. This means that many of the management functions associated with dynamic adding and deleting of services is not required. The embedded portion of the service that is to run at the device must be compliant with the web services transactions between distributed components. This enables the back-office to effectively treat “hardcoded” services the same way as full, dynamic services in the system.
- Hardcoded services can be enabled by back-office subscription. This enables the service provider to control the particular services enabled on any given device, which gives the service provider the flexibility to determine how the services offered will go to market based on business need. For example, the services can be part of a package, offered for free, be offered for a price, require renewal, be offered on a trial basis requiring another transaction for full service provision, etc.
- Hardcoded services preferably share a common underlying set of behaviors and specific extensions for their particular requirements.
- the services have components that work together, but run on the devices themselves in the embedded services platform, on the intelligent proxy, and/or in the back-office server. Though hardcoded, these services can be configured and managed by the service lifecycle management system in the supplier/service provider back-office.
- the types of standards embodiments preferably use include the Distributed Management Task Force (DMTF) Web Based Enterprise Management (WBEM) and Common Information Model (CIM).
- DMTF Distributed Management Task Force
- WBEM Web Based Enterprise Management
- CIM Common Information Model
- the CIM provides embodiments with device model and abstraction to enable services reuse.
- embodiments employ web services, XML, various versions of HTTP, and SSL.
- Embodiments can also use server side certificates from, for example, VeriSign, which enables communication across firewalls and the Internet.
- embodiments can employ, for example, Java 2 Micro Edition (J2ME), Embedded Virtual Machine from Insignia Corporation, Java 2 Enterprise Edition (J2EE), the BEA WebLogic 7.0 Application Server Technology Suite, and Oracle8i.
- Embodiments further enable the rapid addition and roll out of new services to already deployed systems. For example, say that soon after the launch of a new product a new diagnostic service is developed based on lessons learned form the first three months of its operation in the field. The exact nature and behavior of this service could not have been anticipated when the product was launched, so the diagnostic service would not have been included in the launched product. Embodiments allow such a diagnostic service to be added to installed devices at substantially any time.
- Embodiments contemplate the service model and internal specification of what a new “service bundle” should include.
- new code can be downloaded if needed to add a new capability to an existing device in the field.
- This feature can be used in conjunction with, according to embodiments, an embedded services platform on the devices that are designed to accept the new functionality easily.
- the new code for the new services can be reused across platforms because of the device independent abstraction provided by the embedded CIM in the DMA. For devices without such a platform, new code can still be added as, for example, a more specialized software download service for patches and upgrades in the field, but the code to enable those services will most likely be platform specific and therefore less reusable.
- This system of embodiments can offer diagnostics routines and other services in a way that is very flexible for the device platform.
- Such enabled devices look like every other DMA enabled device according to embodiments.
- all the services for the device family that run locally on the device internal platform can still communicate directly back to the supplier systems rather than through an intelligent proxy.
- Another variant in deployment is to fully embed the DMA into the product itself.
- This implementation is in a way very similar to the Example 1 implementation in that they are both DMA enabled platforms.
- the small footprint DMA services platform is embedded into the product and communicates with both a Print Station Interface Platform (PSIP) and with an embedded device controller.
- PSIP Print Station Interface Platform
- the limited resources required by the small footprint system is acceptable to that product and development and integration of the required interface components is relatively easy.
- the reusable DMA is a “drop-in” to systems that already have a JVM.
- the small footprint DMA is not a drain on the system resources and can greatly speed the enablement of such platforms.
- the service is automated meter reads.
- This service focuses on acquiring the monthly or quarterly meter reads typically received via phone calls, faxes, emails, or web entry without a human in the loop. This can increase both the accuracy and timeliness of the reads, save time for users, and enable suppliers to improve invoicing and billing.
- an intelligent proxy can be employed, which can facilitate the participation of all SNMP enabled products.
- This used in conjunction with devices that are DMA enabled but not fully SNMP compliant, means broad coverage can be achieved rapidly. Again, the abstractions and the system modularity in this case are significant.
- the back-office system doesn't need to know which way the devices have contacted the supplier (directly or through a proxy); all it needs is the device's serial number and it can then request meter reads when they are due. This decoupling of the way devices are enabled to participate in the services and the requests made by the back-office service provider is an advantage in providing deployment flexibility.
- a reporting system, a remote monitoring service, and other remote services are combined to assemble a set of tools to support more testing in the field.
- the underlying systems and data collection services can be complementary to data collection systems that rely on human observation and reporting. Together, the combination of systems provides a much greater, integrated set of knowledge upon which engineering teams can base product problem resolution activities.
- the common model for data collected from devices in the field creates a mechanism for deploying reporting tools and basic performance reporting that can be used across platforms.
- One of the basic principles in embodiments is that the devices themselves should take an active role in their own lifecycles and support. This works in a number of trouble or status reporting situations. It may even work with an embedded diagnostic agent in the device that can monitor system performance and make software or configuration changes automatically in order to keep the system running well in the field.
- an embedded diagnostic agent in the device that can monitor system performance and make software or configuration changes automatically in order to keep the system running well in the field.
- many problems that users experience are related to user problems and operational errors as much as they are related to device failures.
- marking machines are complex electromechanical systems, they cannot always be repaired remotely.
- a remote UI and a human to human support system are combined in embodiments.
- Support automation solutions can be complementary parts of a premium service and support offering. It automates data collection and remote monitoring as well as offers many remote services described above. The combination also provides an excellent way to work directly with the device operators via a shared UI to help them when additional training, problem resolution, and software tweaks are required.
- FIG. 41 Some exemplary options for the communication link between the devices in user sites and the back-office are shown in FIG. 41. There are three primary options labeled A, B and C. Notice that only options A and C complete the connectivity between the devices and the supplier back-office on their own. Option B needs to connect to A or C to complete the link back to the supplier.
- All connectivity options preferably reuse the same back-office infrastructure even though they may enter the supplier via different mechanisms.
- Option A Wireless connectivity via LAN and Internet. This is the option of least development investment and least operation expense. In the short-term this is especially important while the value of the services are being proven and resources need to be focused on initial services development and delivery —not additional ways to connect to devices. It does not, however, address unconnected devices that will initially be left out of the services if only this option is pursued. For the time being each service will need to consider how to manually include non-connected devices in the offerings.
- Option B Local Option C: Long Distance + Available to all network devices in Use wireless connectivity will Technology exists for both sites with Internet access. eventually be available in cellular and two-way pager No additional user or supplier cost printers options. for use of LAN and Internet Can be purchased off the shelf Phone line can be added regardless from several companies or of printer / stand-alone option optimized specifically for supplier from standard technologies available. Potentially good answer for unconnected devices if leverage supplier's existing pager / cellular service plans. User feedback has been positive for this option for unconnected devices without any costs being passed on to them. ⁇ Some additional traffic on users Wireless capability not yet Two-way pager and cellular network available in non-connected add-on components costly. Unconnected systems not covered printers yet.
- LAN option Wireless access points for about networked devices
- Phone line option is added expense connectivity to rest of network that are also connected to enable and operate may not be present wirelessly to another Phone line connectivity has proven Local wireless still requires network. to be difficult to maintain. either A or C to be present to Bandwidth limited vs. wired complete the link to supplier.
- connectivity Need for wireless may be Need for wireless may be temporary as more devices temporary as more devices become connected. become connected. Add-on boxes are likely to require unique communication interfaces to connect the box to each type of printer.
- the next preferred method of connecting is Option C—Long-distance wireless via cellular or 2-way pager technology.
- the system can work in this configuration seamlessly with wired devices, and having capability available would enable some user problems to be solved when they come up.
- Option B Local-wireless connectivity. This method can be used depending on how the local wireless connectivity technologies integrate into our user's environments and printers specifically.
- FIGS. 1 and 2 A supporting end-to-end infrastructure for connecting devices in user sites back into legacy systems and business processes is required.
- the end-to-end system shown in FIGS. 1 and 2 is an initial exemplary embodiment of an end-to-end infrastructure. It supports the basic dual-mode of device participation (direct and via a services proxy), uses the initial service communication and subscription models, and employs a common entry point for services data and actions via an edge server hosted, for example, in the supplier environment.
- the edge host can be partitioned in a manner suitable for additional embodiments, but can also be physically hosted on one system, minimizing start up costs while penetration and adoption ramps up.
- Enabling Technology Evolution Infrastructure Evolution High-end devices can act Edge Host focuses on service as services proxies for provisioning and transaction other devices they find management within their environment Supplier maintains common if the users chooses DataMart where CIM data from Device can participate all devices is stored and is in a combination of accessible by a variety services directly or of internal supplier through proxies. functions. Secure communication In addition to sending data initiated by either to the DataMart, data/events devices or supplier can are routed based on be deployed services subscription and services that require high needs directly to the service level of service sponsors guarantees. The physical split between CWW can communicate the Edge Host, database, and with new devices service specific via the CIM protocol vs.
- Authentication /Authorization only SNMP of devices and communication Device can participate is handled centrally via is services via wireless supplier systems. connectivity directly Provisioning and software/ from them to supplier. tools for services to define the business rules which describe how devices need to be configured to participate are established and used to deploy new services quickly.
- the CS Platform 115 can take the form of an embedded system that connects locally to the IOT through one or more of several existing interfaces, unifies the view of that data and functionality, and provides a local UI for operation, management of functionality locally, and the services platform 124 and APIs for remote connectivity and device-centric services.
- the CS Platform 115 is a product embodiment of both the DMA 120 and the embedded services layer 141 enabled by the services platform 124 in the Device-Centric Services framework.
- the CS Platform 115 can preferably take the form of a networked, embedded personal computer. Additionally, the add-on component can take the form of a headless box. In whatever particular form, the add-on component 115 is connected to the IOT via at least one physical interface.
- the UI for the CS Platform 115 is available at any browser on the local network and is served by an embedded web server 130 in the CS Platform 115 . In a preferred embodiment the user would use the browser on their DFE as the local UI for the CS Platform 115 .
- the CS Platform 115 is preferably networked and configured, just as any browser is configured, to know the local network proxies, firewall passwords, DNS server IP addresses, and so forth, so that it can connect to the edge server 410 which is available on the Internet 400 . When running, the CS Platform 115 will use this connection to check for messages and instructions and will send required data in support of subscribed services 140 as well.
- the edge server 410 manages the queues, messages, services, and transactions associated with the end-to-end operation of the device services.
- the CS Platform 115 is a low cost, embedded personal computer based platform with a motherboard 701 , and an embedded software operating system 704 , such as Linux, though other operating systems could be used.
- the add-on component 115 can be customized with hardware, such as an auxiliary input/output and static memory board 702 , but such customizations are preferably minimal to keep costs down.
- the component 115 is designed to enable the internal hardware platform to change over time to follow the minimum generic personal computer value curve which can reduce the cost of the platform by 2 ⁇ 3.
- Memory such as compact flash memory, for example, can be used as an internal storage medium 703 , which has improved reliability over hard disk drives.
- compact flash memory also lowers the cost of upgrading the CS Platform 115 if new services 140 to be deployed require additional storage resources, yet the compact flash memory appears to the system as a normal hard disk drive. Further, the use of standard personal computer technology in the add-on component 115 enables rapid revision to follow cost curves and trends and also ensures that standard add-on technology (for example a web camera) is compatible with the platform.
- connection paths between the CS Platform add-on component 115 and the IOT of a device include Electronic Partner (EPSV) 712 - 714 , a Fuji Xerox protocol and interface; RS422 and/or RS232 serial port 715 , 716 ; PWS 717 - 718 , the connection used by the customer service engineers to connect their service laptops to devices; CAN bus connection 719 - 721 ; and USB (not shown). Additional interfaces, such as a proprietary interface to the digital front end, could also be monitored to provide additional data for services and system management activities. Other connections fall within the scope of embodiments, as well, especially since the CS Platform 115 is preferably designed in such a way as to not be limited to these connections.
- a router 730 is preferably included and responsible for managing the multiple information sources and handling preemption of some activities given another connection becoming active. Communication is thus mediated in such a way as to allow communication to occur without data corruption problems.
- An embedded software system preferably provides the flexible components in support of both locally hosted functions, such as the diagnostics routines described here, and services that can be dynamically added and configured.
- Embodiments thus contemplate a system component based on the Device-Centric Services platform and embedding the DMA 120 , and an embedded JVM and web server to enable the CS Platform 115 to act as a local enabler for the system to actively participate in device-centric services.
- the embedded DMA 120 enables services 140 to be offered directly from the device 110 regardless of its digital front end and/or ability to run the DMA 120 on its own. This enables the device 110 to participate actively in services offerings via the DCS services model.
- the add-on component 115 also provides a programmatic interface for new services 140 to be built around the system, enabling rapid and robust solutions integration with the product. Further, the inclusion of a web server 130 in the add-on component 115 allows web services transactions and services directly between the CS Platform 115 as an interface for the IOT and remote service offerings.
- a customized IOT diagnostics offering 740 geared towards a trained user rather than the customer service engineer provides easy to use, globalized Uls for predefined diagnostics already offered by the IOT.
- the diagnostic routines can, for example, optimize toner density levels and obtain consistent image quality (MaxSetup 741 ).
- Other services 742 that can be offered include Belt Edge Learn, a routine that learns the edge of a new intermediate belt to improve lateral registration and belt steering performance.
- the purpose of Belt Edge Learn is to track the belt movement using the two Belt Edge Sensors. Using data received from these Sensors, the IOT automatically adjusts using the Belt Tracking Roll/Motor/Sensor to ensure that the Belt rotates without any inboard/outboard movement.
- More services can include RegiCon, a set-up routine that sets up the complete image on image registration system found in the IOT, and Halftone, a set-up routine to adjust the halftone densities printed by the system.
- Printing a halftone pattern places a user-definable level of constant tone over the whole page.
- the halftone pattern itself is used to diagnose problems, as almost every image quality defect will show up in a halftone pattern.
- the CS Platform add-on 115 preferably employs a web based UI through an embedded web server. This saves hardware cost on the CS Platform 115 itself and instead uses the monitor, keyboard and mouse hardware associated with the digital front end of the device 110 , which is almost always present and networked. It is also accessible from any other networked PC with a suitable browser on the local network. Such a UI offers increased ease of use and extendibility for new services and capability over time. The cost of providing a GUI just for this application would be prohibitive.
- the web based UI can include, in embodiments, context sensitive help and links to a call center and other support sites, making the system much easier to use.
- the UI can be available at any connected browser on the user's LAN, including hardwired networked personal computers. Further, wirelessly connected personal computers or handhelds with compatible browsers could also be used as a UI if a wireless access point is connected to the CS Platform 115 directly or installed on the user's network.
- the Device-Centric services add-on component 115 of embodiments preferably comes equipped with several services pre-loaded and authorized, though this need not be the case.
- the CS Platform follows the Device-Centric Services model for subscribed service offerings. The PDT has made the decision to enable a basic set of services. Additionally, the component is preferably enabled for software download and remote upgrade of the CS Platform firmware via notification from remote site.
- the system through the synchronization service, will preferably periodically check in with the remote DCS host 310 or 410 to see if new transactions are waiting for it.
- One of those could be that new software is available for the system. If so, the user can be notified via an upgrade status screen available from the administration tab.
- the user also has the option of manually checking for updates via a refresh status button on a software upgrade screen. If an upgrade is available, the user has the option to accept it. If accepted, the software download process automatically downloads the required updates, installs them, saves the older version, and reboots the system.
- the component 115 provides secure, encrypted communication back to the supplier in support of eService offerings. Diagnostic routines of embodiments, even though completely local in operation, are treated as services. They can then be controlled via the services subscription model used for all services. This allows the functionality of the CS Platform to be effectively turned-off when it becomes necessary to do so.
- An initial set of services can preferably be offered to the user by the system.
- Such an initial offering can include, for example, Automated Billing, Automated Supplies Replenishment, and Remote Monitoring.
- Automated Billing is preferably a subscribed service that on demand or automatically reports the required billing meter to the supplier via the Device-centric services infrastructure.
- Automated Supplies Replenishment is preferably a subscribed service that tracks toner usage, area coverage, and toner bottle change events in order to supply the supplier with the information necessary to ensure the timely and accurate delivery of meter supplies to the user's site without human intervention.
- Remote monitoring is preferably a service that periodically gathers up a configurable set of data found in the system, models it in a standard fashion, and publishes it back to the supplier.
- Examples of the type of data found in this service include billing meters, IOT faults, media path jams, image area coverage, media usage (weight, size, and type), feature usage, toner status, simplex/duplex quantities, media tray usage, reduction and enlargement, copy modes, and High-Frequency Service Items status.
- An additional set of services can be embedded in the system to ensure proper system operation.
- DMA Housekeeping Service Health Monitor, DMA to IOT communication status Monitor, and Services Synchronization Service, a service that periodically checks back with the remote portions of the DCS system to see if there are new instructions or activities the DMA should be doing.
- the add-on component 115 employs in embodiments standard, secure web data transmission technologies and certificates. For example, VeriSign certificates, RSA encryption, SSL, and related technologies can be employed. Additionally, the add-on component 115 can provide a detailed transaction log allowing the user to inspect all the messages sent from the device. All transactions sent from the CS platform 115 can be logged in XML form before they are packaged for transmission and encrypted. This provides another layer of inspection capability by the user to increase confidence in the supplier's statements that we sending only what we say we are.
- Three levels of authorization can be invoked before data is sent to the edge host 410 , in embodiments. It is expected that contractual agreements will state that data will be sent automatically and the user will have the ability to inspect the transmission logs. Options are designed into the system to accommodate multiple levels of authorization for users who require different agreements to be made.
- the levels can include Audit and Log, in which records of all transactions are kept in the transaction Log; Simple Notification, in which a user representative is notified via on screen message, email or some other mechanism when a transmission to the back-office is accomplished; and Approval Before Sending, in which a queue of messages to the back-office 300 is maintained and the user representative is notified when the queue is not empty.
- the user representative can inspect the messages if desired and can then OK the sending of the data.
- the default authorization level is configurable, though the preferred shipped default level is Audit and Log. Previous assisted self-help tools and even the diagnostics access on the IOT itself had one password for all functionality. There was no way for the previous system to accommodate multiple people roles and manage passwords accordingly.
- the multiple roles enabled can include Technical Key Operator (TKO), Customer Service Engineer (CSE), and System Administrator (SA).
- TKO Technical Key Operator
- CSE Customer Service Engineer
- SA System Administrator
- a system for configuring the access for any given role is provided via the web based GUI.
- Passwords are preferably initially set to common passwords individualized for each role.
- the system of embodiments contemplates allowing the SA to configure his or her own password and manage the passwords of the TK); enabling networked role based password management using standard IT industry processes, protocols, and procedures, and enabling remotely authenticated login and password management for any or all roles.
- Remote login may be especially attractive for CSEs who want to use their same password on any CS Platform 115 that they visit.
- Authentication for remote login can be password only, a combination of password and token, or any other suitable method. This would be limited by the network connectivity of the CS Platform to the remote host site and a back-up (or local) common CSE or user role password would need to be supplied.
- the platform even can include a process for remotely resetting local passwords that are forgotten.
- the SA calls the help desk and is successfully authenticated as who they say they are.
- the Help desk places an order to the CS Platform (identified by IOT serial number) to have it reset its SA password.
- the SA is told to manually press the SYNC button, causing the CS Platform to check in with the Edge Host 410 , receive the order to reset the SA password, and complete the operation. If all else fails a CS Platform Factory Reset procedure can be followed which will reset all the passwords to default configuration.
- New software services 140 can be added to the CS Platform add-on component through the normal DCS service subscription and activation processes. Subscribed services can be automatically managed and installed by the DMA 120 and the DCS end-to-end system 1 . This enables the CS Platform 115 to offer new services over time. New software upgrades can be offered through the remote software upgrade feature of the CS Platform. This enables more significant upgrades of the CS Platform 115 to be performed with user approval without the need for a tech rep to visit the user's site. This increases the frequency at which system upgrades can be deployed because cost is significantly reduced.
- New hardware can be added with the appropriate services added remotely to the platform because of the above features and the use of COTS technology for most of the system hardware and software.
- An example of a new service requiring hardware extensions would be web camera based support for users.
- the CS Platform 115 can offer a service for those subscribed that allows them to get better remote support on the phone because they can snap and send photos of the problems they are having to a help desk or call center.
- Embodiments contemplate installation of the CS Platform on a network connected personal computer on the same subnet as the CS platform 115 .
- the install process uses a combination of standard networking utilities and LED indications found on the back of the CS Platform to walk the installer through the process. Since the CS Platform 115 is preferably a headless embedded system, the install process can be tricky. The steps listed here are one possible way to do the install, though others are possible. The combination of feedback on the command screen and LEDs on the device provide a robust process for the installation.
- the component 115 is initially in power-on standby (block 801 ) and is powered on by the user (block 802 ).
- a status LED or the like blinks to indicate that the component 115 is booting, then becomes steady on when the component 115 is ready (block 803 ).
- the user reads the MAC address of the component 115 (block 804 ), opens a command window on the UI (block 805 ), and enters a command with the MAC address and other information (block 806 ). The user can then ping the component 115 (block 807 ) to test it, then wait for an indication of completion (block 808 ), such as one or more LEDs in a steady on state.
- the user then goes to the component's web server 130 via a browser (block 809 ), logs on as the administrator (block 810 ), and configures network information as required (block 811 ) to enable the component 115 to communicate with the edge host 410 .
- the component 115 reboots, during which the IOT should be powered down (block 813 ). Once both have completed their reboot, installation and setup are complete (block 813 ).
- the CS Platform can be configured in multiple ways for network connectivity, including use of a fixed IP address and use of DHCP to acquire an IP address.
- a fixed address is preferred for most users and has the advantage of making it easy to point a browser to the CS Platform U 1 when ready.
- DHCP is a very easy to install alternative, but would require a device domain name for the CS Platform and DNS services connection.
- One possible way to provide an automatic domain name is to combine the IOT serial number with the last two digits of the MAC address. Other combinations of readily available information known to the user and the CS Platform by default are possible.
- the CS Platform is configured for the network just as any browser would be configured. This can be done manually via form fill-in on the CS Platform UI. It can also be done through a look-up to see the setting already found in the web browser platform if the OS provides that capability. This would provide the base-line settings and the user then has the ability to customize or correct them as necessary.
- a Test Configuration button can be provided that immediately tries to contact the supplier edge server 410 to ensure that the settings are correct before the user leaves the network administration page.
- Users of the CS Platform 115 may lose a bookmark to the CS Platform Web Page and a way needs to be provided for users to find that web page again easily. If DHCP was used to configure the system, then the user can simply follow instructions to determine the default or hard coded domain name of the CS Platform.
- a discovery tool can also be provided that is installed and runs on the DFE or a networked personal computer in the user's environment and will find and display all CS Platforms that are running. This discovery tool could also be downloaded from the supplier web site. A link to the tool could be made available from the CS Platform UI so the tool can be downloaded and saved in preparation for CS Platform IP address loss. The tool could also come stored locally on the CS Platform with an option to save it locally on the DFE during install.
- the router manages simultaneous access methods to the CS Platform.
- the CS Platform router is preferably compatible with the supplier gateway and DMA requirements and with devices 110 in the field.
- the router preferably provides direct connectivity between the Local PWS port and the IOT diagnostic (serial) port.
- the router of embodiments also provides network connectivity for a network client through, for example, the IOT diagnostic (serial) port, and can support network pathways to the IOT CAN Bus, to the EP Service for various devices 110 , and mediates all (except EP) communications traffic and priorities. Priorities are enabled to allow the smooth transition of operational modes.
- a priority for Application Session for DCU Software Upgrade For example, a priority for Application Session for DCU Software Upgrade, another for Local PWS Port IOT Diagnostic Session at the IOT Serial port3, and another for other Network Sessions.
- an “open” Local PWS session is preferably not pre-empted, and a Local PWS session request may preferably interrupt a network diagnostic application session. Any interruption should be graceful.
- Preemption of a Network DCU software upgrade session is preferably not be permissible, though an EP and/or CAN Bus session should preferably be permitted at any time as long as only one CAN session is permitted at any one time.
- the DMA EP Gateway server/client client preferably has exclusive access to the EP port, and DCU V2.0 preferably supports a pathway for local PWS transactions over the network.
- the Communication Controller can provide, for example, the contents of local CSE diagnostic session over the network by generating a START_DIAG_SESSION event (Consumer of this event is DMA Push Event Provider), generating END_DIAG_SESSION event (Consumer of this event is DMA Push Event Provider), delivering each message between LOCAL_PWS_PORT and IOT_SERIAL communication ports as PWS_MESSAGE EVENT to DMA Push Event Provider.
- the Communication Controller can support a local CSE diagnostic connection through the Local PWS port to the IOT serial port by providing a method to communicate its presence to the PWS connected to the system, for example by utilizing the RS232 signal designated as the CTS (Clear To Send) signal.
- the CTS signal is preferably held at logic level HIGH at the DCU.
- the DSR (Data Signal Ready) signal in the RS232 interface can control the diagnostic mode of the IOT.
- the DCU will preserve or as necessary ‘create’ this control. If the IOT is in the diagnostic mode and is powered off it will power up in the diagnostics mode when the DSR signal to the IOT has been set HIGH.
- the PSW controls the DSR signal.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Economics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Operations Research (AREA)
- Physics & Mathematics (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Abstract
Description
- This application claims priority to U.S. Provisional Patent Application No. 60/319,622, filed Oct. 16, 2002, and U.S. Provisional Patent Applications Nos. 60/319,623, 60/319,624, and 60/319,625, filed Oct. 17, 2002.
- This application is related to U.S. Provisional Patent Application No. 60/319,623, filed Oct. 17, 2002, now U.S. patent application Ser. No. ______, filed herewith, by Naveen Sharma, et al (Attorney Docket No. D/A2485); U.S. patent application Ser. No. ______, filed herewith, by Naveen Sharma, et al (Attorney Docket No. D/A2485Q); U.S. Provisional Patent Application No. 60/319,624, filed Oct. 17, 2002, now U.S. patent application Ser. No. ______, filed herewith, by Michael R. Furst, et al (Attorney Docket No. D/A2486); U.S. patent application Ser. No. ______, filed herewith, by Michael R. Furst, et al (Attorney Docket No. D/A2486Q); U.S. Provisional Patent Application No. 60/319,625, filed Oct. 17, 2002, now U.S. patent application Ser. No. ______, filed herewith, by Ronald M. Rockwell (Attorney Docket No. D/A2487); and U.S. patent application Ser. No. ______, filed herewith, by Ronald M. Rockwell (Attorney Docket D/A2487Q); the subject matter of which are incorporated by reference.
- Embodiments relate to electroreprographic marking machines, facsimile machines, scanning devices, multifunction devices, and the like. Particularly, embodiments relate to the implementation and distribution of services such devices can offer users.
- Installation of a marking machine or other business device is only the first step in the majority of its lifecycle. Most devices are involved in ongoing business processes between the product owners (users), the manufacturer of the product, and/or third party suppliers. Companies that manufacture marking devices typically include products and services in support of users' documents and hope the users will use and live with the offerings for quite a while. This post-sale period presents an opportunity for building a strong and mutually beneficial, long-term relationship between the manufacturer and the users. The post-sale relationship can be defined not only by what the devices do for users, but how they do it, how manufacturers support them, how manufacturers treats the users, and how easy it is to own and use the devices overall. Understanding this, embodiments addresses users' complementary needs to receive services in support of the devices they use: post-sale lifecycles, break-fix needs, and integrated business processes are addressed in various embodiments. These processes range from break-fix service (repairs), to ongoing supply of consumables and supplies, to product upgrades, enhancements, and integration into solutions and other offerings. Traditionally, these post-sale processes were manual in nature and required the device owner/user to play an active role in relaying limited information to manufacturers and suppliers at the time of need.
- Many electroreprographic marking machines, facsimile machines, scanning devices, multifunction devices, and the like provide services to assist with such processes that users must learn how to use or to avoid. Some devices also require meter reads and other types of maintenance that tend to irritate users. In the case of meter reads, users may have to read the meter on a monthly basis and communicate the results to a supplier via, for example, fax or phone. Additionally, users must manually check supplies of paper, toner, and other materials and place orders for new materials. Sometimes the number of services offered by a device can bewilder a user, leading the user to believe that the device is too complex to learn. Further, to avoid down time and other inconveniences, users often would rather make their own small repairs than call for a repair and wait for service to arrive and repair their device.
- With the advent of modems, high-end products in user or user sites were connected back to manufacturers via phone lines changing this interaction model. The arrival of ubiquitous Internet connectivity and the proliferation of network connected products presents new opportunities to bring a more flexible and powerful approach to the integration of devices with post sale business processes. While network connectivity removes some of the drawbacks of phone line connectivity, systems described to date still carry many of the limitations that were associated with the interaction models developed for these early systems.
- Disadvantages of current systems include tight coupling of communication method and system architecture, one-size fits all deployment and integration strategies, and typically no support for devices already deployed. Systems that do offer support for devices already deployed typically are inconsistent between how already deployed devices and new devices are handled. Additionally, systems typically do not include an ability for rapid upgrade, extension, customization, and evolution of features, processes, and workflows and are often limited to basic business processes, failing to provide external services and solutions APIs in a consistent fashion. Generally, and almost across the board, systems treat the device as a simple repository of information, rather than an active participant in the services enabled. Devices must continue to have their mainline feature sets enhanced to stay competitive. In document systems, for example, speeds, feeds, image quality, and document workflows are typically characteristics that are enhanced to render devices competitive. However, increased post-sale interaction between devices, users, and suppliers, and the ability to integrate products into solutions and services and vice versa are becoming points of distinction between devices in the marketplace. In the near future, devices' success and value will likely be measured by the ability of devices to actively participate in their post-sale lifecycles, their ability to seamlessly integrate with solutions offerings, and their capacity for customization and extension based on user needs and requirements. The results of such device abilities are improved ease of use for the user, more effective support from manufacturers, and better overall user satisfaction
- A general industry trend for several years has been to take advantage of the increasing embedded computation and connectivity found in marking devices by offering remote services to increase user satisfaction and reduce operating expenses. This trend towards connected intelligent products started with remote services implementations on servers and other mission critical information technology (IT) related hardware and has become increasing prevalent in a variety of other industries, including marking devices. These remote services provide a win-win value proposition for both manufacturers and users. When implemented properly, these services allow for large cost reductions for the manufacturer, as well as a richer post sale experience for the user.
- This transition will be driven by several coincident factors and needs. Competitive pressures and the need for improved internal business processes will require new ways of interacting with products in the field, as well as a shift in where responsibility for service and support resides. Manufacturers and users alike will prefer to be able to configure and add new features/services to products rapidly to solve immediate problems and to rapidly deploy new features. Simplifying and speeding this process will prolong the lives and enhance the value of deployed devices and will help keep users happy and productive. Manufacturers need to be able to provide these capabilities for new devices and those already deployed, but manufacturers cannot afford to be best in breed to everyone; devices must be able to easily incorporate third party or competitive elements. One size does not fit all, and multiple deployment configurations are necessary that give the manufacturer the ability to configure an appropriate solution for an individual user's needs. The manufacturer must also be able to make solutions behave consistently across multiple configurations so that they are manageable and supportable, and so the user remains in control.
- Studies centered on determining user preference and need for these types of services conclusively point toward the need for new capabilities in offerings that will enhance the way users live with marking devices, billing systems, and supply chain. The studies also indicate that users desire these services and are willing to work with manufacturers to overcome security hurdles to implement them. In particular, the studies found that for nearly one third of users, these remote services would be likely to make users more loyal to a given machine brand at the time of next purchase. Most users would be willing to pay to acquire remote services capabilities on their machines are very or somewhat comfortable with sending data to services providers via the Internet, as long as they had some level of control over the data shared, and showed particular interest in directed self-repair, automated downloading of software, and remote supplies/services analyses and predictions.
- In addition, an analysis of remote solutions state of the art shows that all major players in the marking device manufacture and remote solutions market offer some degree of remote service functionality and are placing increased emphasis on expanding these capabilities. In the offset printing market, integrating remote services into presses and peripherals is considered a cost of doing business.
- Services offered to users prior to the instant system were assembled and managed end-to-end within specific product families. This required product teams to invest in developing, not only the product itself, but also the infrastructure, services, and back-office connections necessary to get the job done. This effort was often very difficult to sustain long-term and was often duplicated across product families.
- Users' experiences can be greatly enhanced by simplifying the users' relationships with devices, such as, for example, marking devices. Embodiments can automate current, manually-performed and/or non-uniform business processes, as well as providing new workflows to address evolving user requirements. This will be accomplished by, for example, employing embodiments to enable devices to be active participants in their life cycles and value added services while keeping the users in control. Embodiments do this using standards architecture, such as Distributed Management Task Force and Common Information Model (CIM) based standards, to allow services to be written once for all devices employing and/or compatible with embodiments and to enable easy modular additions of new services on a product by product basis.
- To achieve these ends, embodiments provide a common service model, services that work with a multitude of disparate devices, and flexibility in physical, logical, and operational configurations. Devices take on an active role in providing users with enhanced post sale experiences. Embodiments can enjoy seamless integration into back-office processes of both users and manufacturers.
- More particularly, embodiments comprise a flexible end-to-end system for connecting devices to solutions offerings. Many deployment options in various physical locations and configurations are possible to allow broadest device coverage and rapid deployment of capability for both machines in field and new products, while insulating device changes from back-office changes.
- The system of embodiments can be reused across all compatible platforms, freeing individual platforms from the need to reinvent all back-office systems. Each platform team need only enable their product through one of the ways mentioned above and contemplated by embodiments, such as by embedding the DMA of embodiments and/or by complying with specific services transactions protocols.
- An agent software component embedded into devices, add-on modules, and device proxies provides a common device model, common information management (CIM) application programming interface (API), and an environment in which device services can run. A common abstraction of a communication mechanism allows the system to be independent of the physical transport linking nodes. A service model supports services that run close to the device and their lifecycle, which includes the methods and processes for effective management and customization of services and solutions. As a result, services that are once written to the agent are capable of running on any device, add-on module, or proxy that includes the agent. This yields a system that enables devices and device proxies to be deployed and work together seamlessly from the point of view of the services, as well as policy-based provisioning for device-based services with both user and supplier inputs. The embedded service agent takes an active roll in solutions offerings and works in coordination with distributed solutions and/or a network-accessible server to provide required functionality. The server provides a clearing house for messages that must traverse the system and provides management functionality necessary to connect and customize distributed services at multiple levels of granularity.
- In addition to increased user satisfaction and loyalty, embodiments can create financial benefits. Embodiments can provide cost savings from reduced service engineer usage through increased user self-help, remote diagnostics, and prognostics. In embodiments including automated meter reads, reduced collection process infrastructure, better contract enforcement, and reduced reserves against inaccuracies can provide additional cost savings. Further, embodiments participating in automated supplies ordering can enable decreased inventories through increased accuracy of tracking consumables at user sites, in part due to more timely, accurate, and applicable measures. Additional cost savings could be realized in terms of eliminated phone time due to fewer call-in orders and disputes. Finally, embodiments can contribute to an increase in revenue from new services since so many users would be willing to pay a fee for the services offered by embodiments.
- Embodiments respond to user need and interest by including, for example, a new class of remote services. These services will capitalize on the increased connectivity of devices in the user environment, and utilize embedded computations within the devices themselves to make devices active participants in simplifying user work processes. The platform enables a standards-based solution that can be used to modularly implement remote service offerings in a cross-platform manner that all use a common back-office integration and work processes. Specific examples of the types of services that can be offered in embodiments include: automated meter reads, automated supplies ordering, productivity reporting, software download, assisted user self-help, remote diagnostics, and prognostics.
- Embodiments include a class of services that exist in support of the devices (printers, scanners, repositories, and even other services and solutions) and their lifecycles making them easier to own, use, support, purchase, and upgrade. Market research has shown, that these services increase the value of devices to users and can potentially also increase their user satisfaction over the life of the product. This in turn should translate into higher user loyalty and consideration from our users when making new purchases.
- These services, in embodiments, make use of new device capabilities including embedded device intelligence, take advantage of the increasing networked population, and exploit information technology advances enabling devices to take a more active role in their post-sale life cycles enabling automated and expanded feature sets.
- Embodiments provide the underlying set of components and their interconnections that enable suppliers to deliver these types of post sale services to users in an effective and efficient manner. The high-level goals defined for the platform have been used to drive the architecture and development of initial components and services. The detailed attributes of each support the four major goals for the platform. The major components of this system all work together behind the scenes to make the services offered behave seamlessly for users.
- Embodiments provide for automated reporting of meter reads via phone, fax, or computer network. Additionally, embodiments automatically monitor supplies, warning users when supplies are low and allowing automated ordering of supplies then and in subsequent similar situations. Additionally, the services a device offers can be tailored to the users' particular needs, but can later be augmented or reduced as required by the user via automated service subscription, downloading, and installation offered by embodiments. Further, embodiments walk users through any operation they wish to perform, including small repairs and replacements of user replaceable units. An additional advantage of embodiments is the ability to manage assets of multiple devices from a central application.
- FIG. 1 is a schematic illustration of the overall architecture of embodiments.
- FIG. 2 is an another schematic illustration of the overall architecture of embodiments.
- FIG. 3 is a schematic illustration of a method of service subscription and deployment according to embodiments.
- FIG. 4 is a schematic illustration of a deployment option according to embodiments.
- FIG. 5 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 6 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 7 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 8 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 9 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 10 is a more detailed schematic illustration of the device model agent according to embodiments more detailed schematic illustration of the interaction between devices, the device model agent, services proxies, and the services host according to embodiments.
- FIG. 11 is a more detailed schematic illustration of the interaction between devices, the device model agent, services proxies, and the services host according to embodiments.
- FIG. 12 is a schematic illustration of an additional deployment option according to embodiments.
- FIG. 13 is a schematic illustration of an additional deployment option according to embodiments with more emphasis on the Device Model Agent and its relationship to a device.
- FIG. 14 is a schematic illustration of an additional deployment option according to embodiments with more emphasis on the Device Model Agent and its relationship to a device from another perspective.
- FIG. 15 is a schematic flow chart of a method of operation of a service manager of the Device Model Agent according to embodiments.
- FIG. 16 is a schematic illustration of a CS Platform add-on component according to embodiments.
- FIG. 17 is another schematic illustration of a CS Platform add-on component according to embodiments.
- FIG. 18 is a schematic illustration of a wireless deployment scheme of a CS Platform add-on component according to embodiments.
- FIG. 19 is a schematic illustration of a method of setting up a CS Platform add-on component according to embodiments.
- FIG. 20 is a schematic illustration of a provisioning server according to embodiments.
- FIG. 21 is a more schematic illustration of a CS Platform add-on component according to embodiments.
- For a general understanding of the present invention, reference is made to the drawings. In the drawings, like reference numerals have been used throughout to designate identical elements.
- Embodiments provide a
system 1 composed of several types of distributed software and hardware components that ensure physical and logical system design flexibility and responsibility of the components. Embodiments employ an architecture including, for example,devices 110 in the user/user environment 100, anasset management system 200 that can be in the user's network orenvironment 100, and aservices host 310 that providesservices 320 to which devices can subscribe. System management and services are provided in a system where devices are active participants in both their own services and lifecycle needs as well as those services and lifecycles in which they are only a part. - Using the Device Model Task Force (DMTF) Common Information Model (CIM) as a base, service management is added to the active behavior of a Common Device Model Agent (CDMA)120. See particularly, for example, FIGS. 1 and 10. Each
device 110 is preferably represented to the services host 310 by aCDMA 120 that communicates the status and configuration (part of 111) of itsdevice 110,services 140 offered, and other information (additional parts of 111, for example) to the services host 310 using a common transaction language, such as DMTF CIM, for example. The DMA also provides aservices environment 124 that is a runtime environment forservices 140 on the device in which it resides, providing device-independence for the services offered by the services host 310. Thus, aparticular service 140 can be written once and run on a wide variety ofdevices 110. This allows One to Many configurations, which can be enabled, required, and utilized as necessary. For example, embodiments can include device proxies, including simple proxies that include only behavior, and proxied device models, as will be expanded upon below. Also, embodiments can include devices that communicate directly with the services host. - The
CDMA 120 includes theservices environment 124, aCIM API 123, a CIMOM 125 andservice manager 126 in thecore DMA 122, and acommon provider API 121. Thecommon provider API 121 communicates with device-specific provider APIs 112 of thedevice 110 and retrievesinformation 111 about the device, including, for example, its configuration, status, and supplies levels. Thecommon provider API 121 then makes such information available to theCIMOM 125 andservice manager 126 in thecore DMA 122, andservices 140 running in theservices environment 124. Thus, in embodiments, theDMA 120 can reside between a services layer 141 (the collection of running services 140) and device-specific APIs 112 and can communicate directly with the services host 310. In such a case, theDMA 120 must be connected to a communications medium, such as a telephone line or computer network, to enable communications with the services host 310. - Partly as a result of the use of the
DMA 120, thesystem 1 in embodiments achieves substantial communication medium independence.Devices 110 can communicate with the services host 310 and or service proxy via network, land phone line, cellular communication, packet radio, pager based, Bluetooth™, IEEE 802.11, or any other suitable communications scheme. Such communications can be device initiated, host initiated, can be monitored and/or audited, and can use user preference, service offerings, and overall quality of service to determine which selections are appropriate for a particular scenario. Theservices 140 can be independent of device configuration; specifics of service content can be provided by the back-office orsupplier 300, with service subscriptions being issued and validated by back-office business processes, allowing rapid introduction of new services. - Embodiments thus include an end-to-
end system 1 assembled from many components using a unique combination of modularity, distributed computation, service models, and transactions. Embodiments employ an overall system architecture that supports rapid and flexible deployment of services in a modular fashion. Advantageously, this architecture employs abstraction of functionality and identification of system elements, common interfaces, and messaging models for communication between them. For device services, there are four main entities that can work together in a consistent and flexible manner: the devices themselves; management and service applications in the user's environment; back-office servers specializing in service management and service configuration; and business process integration servers and the business processes surrounding those services. - FIG. 1 shows a schematic representation of major components that can comprise the platform represented by embodiments. A small footprint embedded
service platform 140 andintelligent agents 122 combined into theDMA 120 can be deployed and integrated withdevices 110. Intelligent proxies fordevices 110, enabling group management and participation in services, can be included in the platform, either as standalone applications or as part of other applications. In addition, such intelligent proxies can enable legacy devices that are not themselves already enabled to interface with aspects of embodiments. A medium independent communications and applications infrastructure connected to a computer network or other communications network, such as the Internet and supplier intranet, is employed that can securely and robustly connect fielded devices and products to the supplier and its internal systems. Additionally, embodiments include a set of industry standard web services technologies integrated with value-added extensions to enable those services. Embodiments thus provide set of services that run in and on an end-to-end system that support devices. -
Devices 110 are typically physically located inuser sites 100, though embodiments can accommodatedevices 110 on other sites as well, and can be distributed around the world. A variety ofdevices 110 ranging from low-end products to high-end systems can be included. Embodiments usedevices 110 that provide, for example, three main enablers in this system.Devices 110 provide a Common Device Interface (CDI) and a Common Information Model (CIM) 123 to enable easier integration with services by hiding device specific differences behind the interface. The CDI can be implemented in theCDMA 120 as theCommon Provider API 121. This enables service reuse and greatly reduces the complexity of thesystem 1. The CDI is specified via a Distributed Management Task Force (DMTF) CIM with service-provider and/or manufacturer specific extensions for services and service management. TheCIM 123 can also be based on the DMTF CIM with specific extensions better suited to devices with services, including diagnostics extensions, that can be provided by service-providers and/or manufacturers. -
Devices 110 in embodiments of theinventive system 1 provide, for example, an embeddedservice platform 124 allowingservices 140 to be delivered and run close to thedevice 110. The embeddedservice platform 140 also provides for local management of services, viaservice manager 126, and the ability to accept newly deployedservices 140 asynchronously with software releases for the hosting platform. This reduces system complexity and speeds deployment of new or refined services to the field. Preferably, in embodiments theDMA 120 provides the embeddedservices platform 124, though other systems could provide the platform. The DMA is preferably a software module that enables the embedded computational power, data, and functions of the device to be accessed and used in services that are deployed in a common fashion. - These components will typically be distributed across the user's
environment 100 as well as at thesupplier 300. Together, they provide a flexible end-to-end system 1 for connecting products (such asdevices 110 and services 140) to post-sale solutions offerings (additional services 140). Thesystem 1, in embodiments, is designed to provide an architecture in support of a series of deployment options in various physical locations and configurations. Preferably, embodiments provide the broadest device coverage and most rapid deployment of capability for machines in the field and new products in such a way that isolates changes at thedevice 110 from changes at the back-office 300. Embodiments further provide a unique, value-added, agent software component, theDMA 120, embedded intodevices 110, add-onmodules 115, and/ordevice proxies 210 that provide thecommon device model 122,DMTF CIM API 123, and newdevice services environment 124. Additionally, embodiments can provide a common abstraction of the communication mechanism(s) that allows the system to be independent of any physical transport linking the nodes (devices to supplier systems, etc.), providing greater flexibility and deployment customization based on user requirements. The service model of embodiments supports services that run “close to the device” and their lifecycle, which includes methods and processes for effective management and customization of services and solutions. Services in embodiments once written for theDMA 120 can run on any such enableddevice 110 orproxy 220, and devices and device proxies can be deployed and work together seamlessly from the point of view of the services. Provisioning in embodiments can be accomplished on a policy basis for device based services based on both user and supplier supplied information, and services can be made available with rapidity. - The
DMA 120 in embodiments takes an active roll in solutions offerings and works in coordination with the distributed solutions. These distributeddevice agents 120 work together with aserver 310 at thesupplier 300 accessible over a network, such as the Internet or a telephone system. The server's role is to provide a clearinghouse for messages that must traverse the solution and to provide management functionality necessary to connect and customize the distributed services at multiple levels of granularity. - For
devices 110 already deployed that do not include this functionality, an option to add aphysical system component 115 to thedevice 110, internally or externally, that enables this functionality is provided by embodiments. To theinventive system 1, adevice 110 enabled in this fashion will look no different than adevice 110 with the capabilities embedded, as long as the add-oncomponent 115 has a rich interface to thedevice 110. For example, embodiments including such an add-oncomponent 115 can have the component mounted on the input-output terminal (IOT) of a marking machine, connected to the IOT via EPSV, PWS, and potentially CAN Bus interfaces, and connected to a network. This configuration gives the IOT the capability to participate indevice services 140. These add-oncomponents 115 can then be found in a one to one mapping with the device because of the need to access non-standard, or non-network accessible APIs and interfaces in order to offer the full range of device capabilities to the DMA and services platform. - In order to accommodate the fact that the input output terminal (IOT) may come from another manufacturer and that a user can choose from many digital front ends (DFEs), embodiments feature an add-on system component. This add-on component can be, for example, a low-cost, embedded personal computer platform running an operating system, such as Linux or Darwin, and a Java Virtual Machine, such as, for example, Insignia's Jeode™ Embedded Virtual Machine, within which runs the DMA services platform. This add-on component can connect directly to the IOT through an interface, such as EPSV and PWS. The device is then also connected the user's internal network.
- The devices management and
service applications 220 in the user's environment back-office servers specializing in service management and service configuration business process integration servers and the business processes surrounding those services. The schematic representation of these system level components and their interconnections are shown in FIG. 1. - Embodiments specifically relate to the role of devices in end-to-end system management and post sale application architecture and in offering services to users. The Device Model Agent (DMA)120, the device side technology module in Device Centric Services (DCS) platform, is the main focus of this invention. DMA is a thin, efficient applications/services execution environment. The DMA provides a flexible, extensible, dynamic services management system allowing e-services to be designed, added, and managed within system without modifying the platform itself. While this invention specifically describes the integration of benefits from DMA into document system devices, the concepts are equally applicable in other domains. The DMA runtime environment is a thin software interface layer that resides on a document system device between the Java runtime environment and embedded web server.
- The device model agent as described herein adds the following capabilities to document system devices. The unique combination of these capabilities enables several benefits related to system management application development, deployment, and maintenance.
- The
DMA 120 enables active participation in applications and services offerings, such as, for example, post-sale, system management, and other services. Thedevices 110 that embedDMA 120 can perform several computational tasks required in system management applications and services. In this architecture, anapplication server 200 installed, for example, in theuser environment 100 orsupplier 300back office server 310, and thetarget device 110 collaborate to complete system management offerings. As shown, for example, in FIGS. 10, 13, and 14, theDMA 120 provides aservice execution environment 124 where aservice 140 may run as a whole or be part of a system management application orhost system 320 running on an application server orhost system 310 of aservices supplier 300. - The DMA services preferably can monitor device events and take prescribed actions. The
DMA 120 can preferably publish data to subscribers/users upon occurrence of an event of interest and can preferably invoke methods, such as diagnostic routines, on thedevice 110 as directed by internal or external clients or users. This moves device specific processing closer to thedevice 110 from acentralized application server 320. The role of theapplications server 320 transforms from a compute platform for execution of applications/services to the management and configuration of applications/services 140. Thus,devices 110 become active participants in the process, as opposed to being passive data repositories in strict client/server architectures. - The
DMA 120 according to embodiments can also perform dynamic updates ofservices 140 and support components operating within the end-to-end DCS platform 1.Devices 110 that employ theDMA 120 can addnew service components 140 dynamically. It allows a user or application component already on thedevice 110 to request such additions to supportservices 140. It can also allow the addition or deletion of components as needed and without system or DMA recompilation or restart. In embodiments, thetarget device 110 itself initiates the additions of a new or upgraded service as a whole or supporting components for existing services. Thus, in thesystem 1 described herein, thedevice 110 can now be responsible for initiating the activity to maintain itself and system management services running on it. - Embodiments additionally recognize the need for an application/
services execution environment 124 to enable developers to work with consistent and standards-based tool set. TheDMA 120 enables the development of device independentpost-sale applications 140.Applications 140 written usingDMA 120 interfaces do not have to change to accommodate new or upgraded DMA enabled devices. While theDMA 120 implements a model-based approach espoused by DMTF for achieving device independence for applications/services, it adds to this implementation a new component called theservice manager 126. Theservice manager 126 is primarily responsible for controllingservice 140 lifecycle of eachservice 140 activated for the device. In addition, theservice manager 126 preferably manages theservices 140 and provides a programmatic interface (an API) for system management clients, local or remote, for control and management ofservices 140. - Operating within the end-to-
end DCS platform 1, DMA-enabled devices and DCS application servers allow services provisioning and management by an application server or hostedsystems 320 on aservices host 310 of thesupplier 300 or by a third-party service provider. The DMA-enableddevices 110 andapplication servers 320 collaborate to provide dynamic provisioning. Using this system, users can review a set of applications, select or customize one or more applications to fit their needs, and order the selected set. Subsequently, the applications can be installed, enabled, turned on, monitored, and/or managed. - In order to cover new and existing device base, the architecture of the
DMA 120 in embodiments allows its deployment in several ways: For example, according to embodiments as shown, for example, in FIGS. 4, 9, and 11, theDMA 120 can be embedded in anetworked device 110, such as a printer or multifunction device. In this embodiment, theDMA 120 becomes a web server side component. TheDMA 120 can, for example, use Java Servlets, a standard method for hosting service-components behind a web server. - Alternatively, the
DMA 120 can be embedded in a specialized hardware device or add-oncomponent 115 todevices 110 that are standalone, such as copiers, or for existing devices in field that are not able to run theDMA 120. Such add-oncomponents 115 are shown schematically in FIGS. 12, 16, and 17, and will be discussed in more detail below. - Another alternative configuration is for the
DMA 120 to be embedded in anetwork application 220, either as a single device proxy or multiple device proxy configurations. Such proxy configurations are illustrated, for example, in FIGS. 7, 8, and 11. - For any device manufacturer, post-sale applications can be important for continuing user loyalty. In case of the supplier of marking and/or multifunction devices, sale of a document system device is just the beginning of the user relationship. Continued service, support, supplies replenishment, and on-going maintenance become the main considerations that determine user retention rate. However, as mentioned earlier, the development, deployment, and management of post sale applications in a cost effective fashion itself poses several challenges. The complexity is driven by the presence of multiple stakeholders, including developers, device manufactures, service owners, and customers/users. As a platform, the
DMA 120 is preferably designed, according to embodiments, to bring all major stakeholders together and address the requirements of all stakeholders. - The
DMA 120 preferably constructs a layer of abstraction between devicespecific interfaces 111 and system management applications. See, for example, FIGS. 10, 13, and 14. The abstraction provides a common view of device data, event, and operations to system management applications. TheDMA 120 adopts a model-based approach to create device abstractions. The device models used for this purpose are based on industry standard efforts in DMTF (Distributed Management Task Force) consortium. An enhanced version of DMTF Common Information Model (CIM) is used as a basis. However, the implementation of common model with device interface is unique. Interactions between post-sale application clients and DMA are based in DMTF CIM Operations Over HTTP specification. - The
DMA 120 enhances a DMTF/CIM implementation by adding aservice manager component 126. Theservice manager 126 is responsible for loadingservices 140, maintaining a list ofservices 140 currently installed in the DMA-120, and management and lifecycle control ofservices 140. Theservice manager 126 preferably works as an automated process and can automatically look up and startservices 140 as a standalone component that can be accessed programmatically or through aDMTF CIM API 123. Theservice manager 126 can provide access toactive services 140 on thedevice 110, as well as management data for one or moreactive services 140. - The
DMA service manager 126 preferably supports core services that are started automatically when theservice manager 126 loads. Such core services preferably do not require provisioning support. Theservice manager 126 also preferably supports subscribedservices 140 that require enablement through a dynamic provisioning feature of theDMA 120. - FIG. 15 is a schematic flow diagram that illustrates the
service manager 126 startup and normal execution. When theDMA 120 boots, it starts the service manager (block 510). Theservice manager 126 then loads the core services (block 511) and checks with the dynamic services provisioning host (block 512). Theservice manager 126 further interprets and processes service configuration parameters (block 513) and loads and starts subscribed services 140 (block 514). Theservice manager 126 then monitors theservices 140 for management purposes (block 515) and interacts with a system management client as desired (block 516). - The
DMA 120 is preferably written using a substantially platform-independent language, such as, for example, Sun'sJava 2 Micro Edition (J2ME). The DMA is thus highly portable and can be used as a system component in any system configuration where Java is available. - Management and
services applications 200, according to embodiments, can be located in the user's environment. Someapplications 220 can enable the offering of device services by, in part, behaving as a services proxy fordevices 110 that are networked but not fully enabled to participate actively in device services by themselves as shown schematically in FIG. 7, for example. In other words, theapplications 220 can act as proxies for networked devices that do not have theDMA 120 or the software to support theservice offerings 140 directly. For example, some applications, such as Xerox® Corporation's CentreWare Web® (CWW), can act as device proxies for Simple Network Management Protocol (SNMP) enabled devices. To the extent that the SNMP agents in the devices deliver the required data and functionality to support the services being offered, this can be a good way to bring devices into the services fold. In such a case, the application, such as CWW, assumes the responsibility for hosting theservices 140 that run close to thedevice 110. - To the back-office or hosted
portion 300 of the end-to-end system 1, such as the services host 310, thedevice 110 looks nearly the same when proxied viaapplications 220 as it would if the device communicated with the services host 310 directly. The difference between proxied devices and direct devices is substantially no different than the differences associated with direct devices with different levels of firmware. The device capability variations can be managed on the back-end/services host 310 via a provisioning system for device-based services. The impact of these variations is that advanced services utilizing very specific capabilities of a given device become less portable; that is, services written for product specific sections of the CIM extensions will not be completely portable and may not be as compatible with other devices. However, services written to the Core and Common models will remain portable, and deployment issues will be managed by the provisioning system. - The
applications 220 can also behave as services proxies for devices that are not networked directly, but have an add-on connectivity option. Such a connectivity option can be hard wired, such as Ethernet, or wireless, such as Bluetooth™ or IEEE 802.11, and can be local or more expansive in its coverage. For example, a stand-alone copier with no network connection for printing can have a small wireless LAN connection has been added, such as an 802.11b or other wireless network. The proxy behaves in all the same ways as when a networked device without DMA is proxied, but the proxy now also includes the hardware required for the wireless access point used to communicate with the devices to which add-on connectivity has been attached. An example of such a system would be CWW installed on a server that is both physically networked on a LAN and also has a wireless access point attached. To the back-office edge host 310, thedevices 110 proxied in a wireless fashion look no different than those proxied on the LAN. - The
applications 220 can also enable consolidated management of services from a server in the user environment. Device proxies can provide, in embodiments, an aggregation and group management function for services associated with their proxied devices. This can, for example, be a graphical user interface (GUI) for a system administrator or user to look at the status of services on a set of devices. - The common device interface of services and their transactions to the back-office systems, such as services hosts310, can be an extension of the interface used on the devices themselves. This enables the services to work for both direct to device situations and situations in which devices use proxies. The API from a device directly communicating with the services host is supported, along with a limited set of specific device proxy extensions that deal with transactions and data related to the proxy. All transactions aimed at the devices should look the same.
- With reference to FIG. 2, additional portions of an exemplary embodiment are described. The hosted portion of the services, the services host(s)310, can be located off the user's
site facilities 300. A deviceservices edge host 410 handles the transaction and service management for the device services deployed to the field. This includes the management of message queues and provisioning of software modules and configuration parameters in support of the distributedservices 140. Theedge host 410 is also responsible for the host end of the security and service models employed by thedevice services system 1. - The
edge host 410 also provides connections to servicesponsor systems 310. This connects the external device services world to the internal (or third party) services world. The connections to each of the organizations sponsoring the services are maintained through the edge server and can be compliant with security rules and regulations of the entity maintaining the server and host. The edge host insulates thedevice 110 ordevice proxies 220 from having to have direct knowledge of the details of interaction with the back-office complexities of the services involved on the services host 310. This insulation is advantageous in deploying device services in a manageable and robust fashion. Preferably, embodiments present a common services API to the back-office sponsor organizations in order to standardize the basic operations. Specific services can extend and customize the content of the transactions for a given application. - With continued reference to FIG. 2, the
devices 110 anduser applications 220, such as CWW, can be located in the user'senvironment network distance connection mechanism 400. Well known web services, as well as future web services, comprise preferredcommunications mechanisms edge host 410, as well as between theedge host 410 andinternal services providers 310. Thesystem 1 is preferably built to meet basic IT industry and other standards for its ability to work with existing firewalls both on the user's side (firewall 160) and on the service provider side (firewall 360). No special configuration of the user'sfirewall 160 is required in order to make this system work properly. - The
service supply system 300 is preferably part of the basic supplier infrastructure to provide a robust, well-managed, 24×7 level of service and disaster recovery for all user systems to employ. As indicated above, anedge host 410 can handle the transaction and service management for the device services deployed to the field. This includes the management of message queues and provisioning of software modules and configuration parameters in support of the distributed services. It is also responsible for the host end of the security and service models employed by the device services system. In embodiments, the edge host also connects the external device services world to the internal (or third party) services world. The connections to each of the organizations sponsoring the services are maintained through an edge server and are preferably complaint with supplier security rules and regulations. - The
edge host 410 preferably, in embodiments, isolates the devices or device proxies from having to have direct knowledge of the details of interaction with the back-office complexities of the services involved. This isolation can assist in deploying device services in a manageable and robust fashion. A common services API is presented to the back-office sponsor organizations in order to standardize the basic operations. Specific services can extend and customize the content of the transactions for a given application. - Multiple Delivery Paths
- At the highest-level, the
system 1 is designed to enableservices 140 to operate directly between thedevices 110 and the back-office (supplier) 300 in some systems, or to be operating with the help of adevice proxy 220 in others. This ensures the broadest possible deployment as rapidly as possible because thedevice proxy 220 can quickly bring many legacy devices into the service offering very quickly while user slowly get new devices which are directly enabled themselves. Having both modes of operation is also important because some users will prefer to have a proxy act as a consolidator/clearing house for messages leaving their site rather than from each device independently. In other sites, users may not want to install a device proxy and therefore need the services to be enabled directly. In addition to having each path enabled, it is beneficial to have them work together, because in the end it is possible for users to have both scenarios in place at the same time. - Just as multiple paths can enhance deployment flexibility, it is beneficial to make those paths invisible from the standpoint of the services provider. Preferably, embodiments decouple the
devices 110 andproxies 220 from theback office systems 310 as much as possible. A strong abstraction and decoupling of these two halves makes it possible to deploy capability indevices 110 or the back-office 300 in a staged and independent fashion. In addition, if changes need to be made to systems on either end, the changes will not ripple throughout theoverall system 1 if proper abstractions are enabled, enhancing maintainability. - Referring again to FIG. 10, the abstractions throughout embodiments include, at the device level, an
abstract device model 122 embedded in theDMA 120. Preferably, theabstract device model 122 is built using the DMTF's CIM as a base. Thedevice model 122 andservices platform 124 both reside in theDMA 120, in embodiments. Common services point into the supplier'sdomain 300 regardless of the services offered. And at the back office/supplier level 300, embodiments use a common API for service sponsors to build and administer services from the supplier backoffice 300. The common API deals withdevices 110 all the same way, regardless of type or connection mechanism. - This architecture in embodiments provides flexible deployment options, such as deployment flexibility in terms of direct device communication to suppliers or communication via a proxy. In addition to that flexibility, the services themselves can be defined so that many of their parameters can be customized. This service customization can include, for example, the data that is sent as part of a remote monitoring service, the time of day or frequency at which meter reads are sent to the supplier. The exact configuration parameters can be specific to the service being offered.
- The platform of embodiments is designed to enable the configuration of services to be easily managed. The system allows for the configuration of the services to be specified at the individual device serial number, for all devices at a user's site, or for all machines owned by a user no matter where they are. This management, in embodiments, is done in the back office controlled by the service provider.
- An additional part of the flexible deployment options is the use, according to embodiments, of a subscription basis for the services available for devices, as illustrated schematically in FIG. 3. The subscription process can be controlled and managed, for example, by the individual service provider, and the services offered to any given device can be controlled by a combination of user desire and service provider authorization. Thus, not all devices, even of the same product family, need offer or have installed the same services at any point in time.
- There are some activities relevant to DCS. For example, Axeda, Embrace Networks, Questra, and Imaging Portals have been active on the services front. An example of their technological implementations is Embrace Networks' patent application, PreGrant Publication No. 2002-0133581 A1, which is incorporated by reference. However, the prior art lacks provisioning aspects, and there does not appear to be any consequential support for provisioning.
- While several companies, such as 4th pass, sell general purpose provisioning software, none of the prior art appears to encompass the aspects of the instant invention. For reference, Sun has a general listing of such provisioning software at http://java.sun.com/j2ee/provisioning/industry.html. Further, all appear to be pursuing the cellular industry as their target market.
- As mentioned above, global telecommunications companies are starting to deliver services over cell phones. To accomplish this, all use a Java standard called CLDC. This released standard describes how Java programs can be run on a small device such as a cellular phone and more importantly how modular programs called Midlets can be added at runtime to a CLDC Java environment.
- Although the standard defines the unit of provisioning and how it is to be accepted and integrated on the device side, it says nothing about the server aspects. Because of this, telecoms have either created their own provisioning server solution or purchased one from the provisioning vendors listed above. There is no way to inspect them for alternate solutions because of the competitive environment in this area.
- A second relevant standard is called OSGi. OSGi is a Java based, released standard which allows a collection of local, network connected devices to communicate with remote servers and download and run modular services. Compared to CLDC/Midlets, this standard has received much less support in industry.
- OSGi also sidesteps the server aspects of provisioning.
- A third standard is SyncML Device Management. SyncML is a released standard focused on the details of keeping mobile devices in synch with some server based sources. The focus in this standard is on things like calendars and appointments. In the last year, this synchronization protocol was extended with the Device Management effort to explicitly support the ability to change service settings on a mobile device and to be able to download services to it. SynchML sidesteps the server side of provisioning.
- A last standard is unnamed but is commonly referred to as JSR-124. In short, Java programmers use the Java Community Process (JCP) to create and standardize Java Specification Requests (JSRs) as additions and extensions to the Java language. JSR-124 is the J2EE Client Provisioning Specification. J2EE is a standard for using Java in high end, transaction processing. A large and growing market has been growing up around it. Effectively, JSR-124 tries to define a framework within which to express provisioning systems in. Almost all the provisioning startups and many of the telecom companies are members of the JSP. It tries to be common enough so that all provisioning systems can interact with a J2EE system in a standard way but loose enough so that vendors can create alternate, competitive solutions. The standard is in the public draft review stage.
- The definition and implementation of a common provisioning model based on a shared user service lifecycle is included in embodiments. A Provisioning Server (PS)310, the
DCS devices 110 that talk to it, and the supplier personnel that interact with it all preferably act according to a shared model for how the provisioning process works. A lifecycle model can be created that defines the roles and responsibilities for each actor that interacts with thePS 310. Based on roles and responsibilities, grammars and commands have been created to allow the actors to accomplish their role based goals. - The architecture and implementation of a
provisioning server 900 running, for example, in the services host 310 that meets all the requirements in this section is schematically illustrated, for example, in Table I and FIG. 20. Working from left to right in FIG. 20, the first major module is theService Consumer Interface 901. It is preferably responsible for all interactions with External Users andExternal Devices TABLE 1 Primary Roles & Actor Definitions Responsibilities Service Those organizations Use Service Developers to Sponsors within a supplier or develop and deploy other parties that required code for the PS support creation and and DCS device portion deployment of of the service services on PS 900 Create tie-ins between local IM systems and the PS 900 such that commands issued by the service sponsors are synchronized to local state of IM systems Direct PS 900 to enable and disable service for particular machine in synchronization with local IM Service Those that develop Develop code using DCS Developers code implementing a guidelines DCS based service Deploy code bundles making up service to the PS 900 Define service on PS by identifying relevant platforms and other parameter information about the service Policy and Those that define Develop the ‘rules’ that Preference ‘rules’ that define Setters control all aspects how default parameters of service deployment for a service should be configured how and whether parameters should be uniform for a site, customer, geographic unit, or other grouping derived from service parameter information and/or IM systems External DCS compatible Use the PS to be Devices machines located at notified of service life user sites accessible cycle changes (add, directly or through delete, modify, upgrade, local or remote proxy etc.) servers providing a Use the PS to send DCS interface requests for restores based on local catastrophic failure Inform PS of relevant machine configuration changes Inform PS of relevant events or state changes Internal Supplier organizations Send service related Users that participate in transactions to the execution of a PS and potentially to service other machines or other users Receive transactions from machines in likewise fashion External Non-supplier users Send service related Users that participate in transactions to the execution of a PS and potentially to service other machines or other users Receive transactions from machines in likewise fashion - The
Entity Management module 902 is a generic PS resource that preferably localizes and isolates entity information from the rest of theserver 900. The module holds information on entities such as machines, users, their preferences, and associated location information. For entity information that is not local, theEntity Management module 902 is the single point of contact with these other IM systems. Themodule 902 provides a seamless interface for local and network based information. - The order processing module (OPM)903 is responsible for directing the processing of orders from Service Sponsors as well as those created by the policy & preferences module (PPM) 904. The
OPM 903 interacts with required PS modules to achieve the order requirements. TheOPM 903 also preferably tracks the status of an order to be able to respond to inquiries from Sponsors. - The registration, authentication, & authorization module (RAAM)905 is responsible for maintaining the security of the system at all times. The
RAAM 905 preferably authorizes all users of the PS and authorizes their ability to execute specific transactions. It is responsible for correctly registering all users, both internal and external. TheRAAM 905 does this by working with theentity module 902 to obtain required information. TheRAAM 905 is also preferably responsible to work with the service consumer andorder processing modules - The service definitions module906 is responsible for maintaining all definitional information on all
services 140 provisioned by thePS 900. Version information, file composition, service inter relationships, product line support, are examples of the contained information. - The service
developer interface module 907 is responsible for supporting service developers in their work to develop, distribute, and update services. The serviceparticipant interface module 908 is responsible for interfacing with all users and directing service lifecycle and service transaction information to the right resources. - Embodiments apply soft computing techniques, such as, for example, rules and constraints, as a general solution to flexibly model, develop, and examine service policy. The provisioning decision itself is less important overall. That is, given a
device 110 that needs aservice 140, thePS 900 determines whether it is allowed, whether there is a bundle (the collection of code files that make up the service to be installed) that is compatible with thedevice 110 operating parameter information (model type, OS version, etc.), which of a plurality of bundles should be selected if there are a plurality, and what the parameter settings (if any) for theservice 140 should be. Generally, in embodiments, code can not be written that implements “business rules” that can be used to resolve the questions above. Coding would be required for every change of a rule, the rules would not be directly inspectable by policy makers, and it would assume that each question is separable from the others. Further, it assumes that there is a single policy maker that determines the answers for all the above questions. Thus, an alternate solution must be, and is, provided, in embodiments. - The introduction of an appropriate constraint or rule system provides advantageous benefits. Coding is dramatically reduced as the “rule” is entered at a higher level of abstraction. Additionally, the rules are inspectable by policy makers who may not be comfortable with computers or programming. Further, knowledge implemented as constraints and rules relating to each question can be more easily combined and separability doesn't need to be worried about. Constraints and rules use supports the reality of multiple policy makers that participate in the decisions of the above questions. Interfering rules and constraints based on differing groups participating in a value chain can more easily be identified and resolved.
- The ability of the
provisioning server 900 to use policy based knowledge to identify the correct bundle and parameters is advantageous in several situations. For example, this ability is preferably applied when thePS 900 has received an Add Service Request and needs to compute the answers to the questions above. Additionally, thePS 900 employs this ability when a Policy Maker for any service has made an update to the policy knowledge. ThePS 900 can compute the impact of that change, addition, or deletion to the existing relevant devices actively connected to thePS 900. Then thePS 900 can generate the necessary change requests to the impacteddevices 110 to achieve the goals of change and use the change in all future Add Service transactions. When thePS 900 is notified of a Configuration Change from adevice 110, thePS 900 decides whether the device'sservices 140 and/or parameters should be changed because of that change. If necessary, thePS 900 can generate change requests for thedevice 110 as required by the policy knowledge. - Policy Setters can define uniform service versions or parameter settings based on Internal or External Customer requirements through use of rules. This uniformity may be defined at a user level, a site level, a machine category, or any other relevant grouping
- To summarize, the service subscription and deployment method includes identification by a user or
user DMA 120 of a service offering 140 of interest and a request for activation of such service (block 501). During a scheduled check in with the edge host, or during a special connection for the purpose, theDMA 120 sends a message for thesupplier system 300 regarding the interest and requested activation. Thesupplier system 300 retrieves the message from theedge host 410 and applies business rule and work processes to determine user eligibility (block 502). If the user is approved, thesupplier system 300 notify theedge host 410 that the requestedservice 140 can be added (block 503). The next time theDMA 120 checks in with theedge host 410, it receives the message that theservice 140 can be added (block 504). TheDMA 120 then activates theservice 140, downloading and/or installing it if necessary (block 505). The new service is then deployed and running (block 506). - Sales of services can be done through a plurality of channels. This process is preferably owned by the sponsoring organization (the supplier of the service) and is done in whatever manner the sponsoring organization chooses. It can, for example, be done from the device if desired.
- Once the sponsoring organization is notified that a particular user would like a service to be enabled on a given device, embodiments provide that the sponsoring organization applies whatever business rules and billing/invoicing processes it requires to comply with an applicable business model for that particular service. If the sponsoring organization determines that the device can be permitted to provide the specified service to the user, the sponsoring organization uses a common services order/entry API on the edge server to officially place the order. This can, in embodiments, generate a message that can set deployment and configuration of the desired service into motion.
- Messages are preferably queued for delivery, and the process waits until delivery of the messages occurs. Once the requesting device or device proxy gets the order message, the systems are configured, additional software is downloaded if required, and the new services are started. The service sponsor preferably has the ability, via the system according to embodiments, to turn services on and off as needed based on whatever criteria the service sponsor determines is necessary. Services are preferably written to be device independent. The Common Information Model provided by the Device Model Agent provides a device independent representation of the common data and methods in embodiments. Services are configurable since all users do not have the same requirements. Having configurable services accommodates variation in requirements and operation that may be required. Services are dynamically loadable to enable rapid deployment of new services to users with devices already deployed in the field. And services have a lifecycle to enable management after they are initially deployed. Examples of lifecycle transactions include, but are not limited to, add service, delete service, modify service, sync services, device registration, and proxy registration.
- The
DMA 120 is defined, in embodiments, to enable the embedded computational power, data, and functions of thedevices 110 to be accessed and used inservices 140 that are deployed in a common fashion. An embeddedagent 122 andservice platform 124 enables embodiments to support local operation ofservices 140 that play into theoverall system 1. This provides the common connectivity, service manager, common data access and methods, and secure communication to the service provider/supplier in support of services offerings. - Given the system, components, methods, and embodiments described above, there are a number of ways that the system can be deployed. This deployment flexibility is a significant advantage of this system and has implications on the detailed designs of the components and behavior models that the system follows. All of these deployment options can be instantiated simultaneously by embodiments given the abstractions and modularity defined. It is possible that in many user installations more than one option can be deployed to ensure complete coverage. FIGS.4-9 and 11 show several exemplary embodiments representing possible deployment options for systems according to the invention.
- Deployment A, an exemplary embodiment seen in FIG. 4, is a preferred embodiment for smart devices as are currently shipped by some companies, such as Xerox® Corporation. It can limit the amount of infrastructure required of users to support deployment of
services 140 and provides the simplest implementation. It need not require additional hardware or software to be installed in the user's environment, thoughdevices 110 must be fitted with the functionality of theDMA 120, including theservices platform 124, if they are not already part of thedevices 110. This embodiment is not likely to address many machines already in the field unless the device software is upgraded or another method is employed to give the fielded devices the DMA and services platform. While communications between the device, via the DMA, and the back-office host are substantially independent of the physical medium, preferred embodiments employ the user's network and the user's Internet access to connect back to the supplier host system. Other communications schemes, such as, for example, local wireless, long distance wireless, telephone, wireless telephone, and satellite telephone can of course be used as well. - As seen in FIG. 4, each
device 110 includes itsrespective DMA 120 and runs itsown services 140 in itsown services layer 141 facilitated by theDMA 120. Management andother applications 220 can be employed on anothermachine 200 that can also be in the user'senvironment 100 or can be elsewhere. Thedevices 110 preferably useweb services 250, such as HTTP, HTTPS, and SOAP, to communicate with thesupplier 300 and aservices host 310 therein. The services host 310 includesservices 320 andhost systems 340 that can assess communications from the DMAs 120 and deployservices 140 when appropriate. - Deployment B, another exemplary embodiment seen in FIG. 5, enables already fielded devices and devices produced by third parties who do not have the required technologies embedded in them to support device services. While multiple devices can be handled in such a manner, this description will focus on one such device for simplicity. In this case, a relatively small add-on
component 115 is added to thedevice 110. The add-oncomponent 115 contains necessary software and theDMA 120, as well as one or more connections to thedevice 110 to enable the add-oncomponent 115 to gain access to the internal data and functions of thedevice 110. With the add-ondevice 115 attached, the device/add-on component combination looks like a completely enabled device, as in deployment A seen in FIG. 4, to the rest of the services infrastructure and back-office systems. This provides device services according to embodiments for legacy and third party production equipment. The add-oncomponent 115, with theDMA 120 and itsattendant services environment 124, then communicates with thesupplier 300 viaweb services 250 as in deployment A of FIG. 4. - Deployment C, a third exemplary embodiment seen in FIG. 6, uses a proxy configuration in which an
application 220 capable of acting as a proxy runs the services for at least some of thedevices 110.Devices 110 that do not themselves have the required software enablers embedded, such as theDMA 120 andservices platform 124. However, anapplication 220 acting as a services proxy for the devices can communicate with thedevices 110, such as, for example, via LAN, phone, wireless, or other communications media. The basic proxy implements theservices APIs 140 for a selected set ofservices 140, but preferably does not use thefull DMA 120 and standard dynamic services deployment method to thedevices 110 themselves since these features can not be supported with the legacy devices. This deployment is also limited by the richness of the connection between the simple proxy and the device: if data or a function can not be accessed remotely, then services that require them can not be deployed. - Deployment D, a fourth exemplary embodiment shown in FIG. 7, is a more advantageous form of proxy configuration. This embodiment enables devices without the required embedded software enablers (i.e. the DMA120), but that can communicate in other ways, such as, for example, via LAN, phone, or wireless, to participate in the services deployment system. The devices 10 communicate with one or
more applications 220 that act as a services proxy for thedevices 110. The services proxy is a DMA enabled proxy that can host aDMA 120 for eachdevice 110 communicating with the services proxy. Additionally, the services proxy can manage theDMAs 120 for thedevices 110 with which it communicates. This enables theservices 140 to run in substantially exactly the same way on the services proxy as they would if theservices 140 were running directly on thedevices 110 themselves. This also enables additional local applications to be written on the services proxy that can take advantage of theDMA 120 and the common information model representations of the data and functionality of each of the systems. This can greatly simplify applications since they can be hidden from the implementation specific to each device and only have to build to the common representation of data and methods in the CIM. This is the same advantage that the services gain when written against the CIM and DMA. Additionally, portions of the DMA that can manage multiple instances of the CIM and services can be instantiated once and used to manage the DMA proxy of multiple devices. That is, the full DMA need not be replicated for every proxied device, which can make this embodiment more efficient that just dropping all the DMAs for the connected devices onto one server. - Another aspect of the services proxy embodiments is that portions of the DMA that can manage multiple instances of the CIM and services can be instantiated once and used to manage the DMA proxy of multiple devices. Thus, the full DMA need not be replicated for every proxied device; rather, one DMA can be used for plural devices. This makes deployment more efficient than simply dropping one DMA for each device onto one server.
- In a particular version of deployments C & D, embodiments cover the deployment of a device proxy for a printer directly connected to a personal computer. The proxy can be hosted on a user's computer, and a printer, such as a printer connected via a parallel interface, is the device with which the proxy interacts. In embodiments, the proxy can also connect to the print driver for the directly connected printer as an additional source of data to populate the DMA or services interface. The computer can host the DMA and, to the extent supported by the direct connection to the device and the local instrumentation via print driver or other access mechanism, the directly connected printer looks networked from a services and systems management point of view.
- Deployment E, a fifth exemplary embodiment seen in FIG. 8, comprises a local variant of the exemplary embodiments seen in FIGS. 6 and 7. Services can be offered locally, that is, within a substantially self-contained site, in a fashion similar to Internet-spanning embodiments. Such an embodiment uses the abstraction of the
DMA 120 to enable more consistent management and service offering implementations tolocal devices 110. While this lacks the connection to back-office service providers 300, theservices 140 can be unique for a user or simply self-contained for security reasons. Management oflocal services 140 anddevices 110 can then be moved from a centralized locale for alldevices 110 to a more localized domain. Users can, for example, assume the role of supplier, if so desired, in such an embodiment by running the equivalent of a back-office on their intranets, including application servers, and, depending on user security requirements, edge hosts. This will increase the complexity of the maintenance and support of such a system if offered by a third party, but is a possibly useful configuration given the abstractions defined. - A further exemplary embodiment, Deployment F in FIG. 9, enables
multiple application servers 310 and/or multiple edge hosts 410 receiving communication fromenabled devices 110. Deployment F is an embodiment that an combine, for example, elements of deployments A, B, D, andE. The services 140 can be written such that they describe everything required for theservices 140 to check in in an appropriate fashion withappropriate application servers 310 via the appropriate edge hosts 410. In addition, the services host 310 to which theedge host 410 connects thedevices 110 is not limited to any particular services host orsupplier 300, but can connect to any suitable parties to offer services, as long as the services API presented by theedge host 410 allows such connection. - The Device Model Agent
- The Device Model Agent (DMA)120, as discussed above and as seen, for example, in the schematic illustration of FIG. 10, is an enabling component of the end-to-
end system 1 according to embodiments. TheDMA 120 can be embedded indevices 110, add-onmodules 115, and/or device/services proxies to provide acommon device model 122, aCIM API 123, and adevice services environment 124 in whichservices 140 can run. The DMA's role is to providedevices 110 with the capability to actively participate in business process and services that surround the devices throughout their lives. It combines aspects of the Common Information Model Object Manager (CIMOM), from the Distributed Management Task Force (DMTF), and a novel environment for the operation and management of embedded and dynamic services. The agent is responsible for local operation of services and the management of information represented in the CIM. The agent interacts with the device, services (both local and distributed across a networked environment), and other distributed system components. - The DMA provides the device independent CIM API as specified by the DMTF, but also provides a device independent Service API. As a software agent, the DMA can engage in autonomous and adaptive behaviors, either initiated locally or through interaction with other distributed components. The DMA can also, for example, react to events in the device and the environment, again either locally or distributed, and, in embodiments, can engage in self-management of services and actions. In a preferred exemplary embodiment, the device independence of the DMA is extended through the use of, for example, JAVA and the J2ME small footprint JAVA standards. Of course, the DMA is not limited to this particular implementation and could be assembled in any suitable software structures with varying degrees of complexity and difficulty to provide all features. This exemplary embodiment of the DMA advantageously uses the J2ME Connected Device Configuration with the Foundation Profile to enable the broadest range of devices from large system components with many resources to small systems with limited resources. Again, the Device Model Agent is not limited to this implementation, and many others are possible in variants of JAVA or other programming languages as required by the device in which it resides. The J2ME environment can ensure that the DMA software is device independent and reusable across device and product platforms. J2ME also offers support for networked and distributed systems, embedded security capabilities, and support for dynamic download and operation of code.
- Preferably, embodiments include extension of the device independence of the agent through the use of a platform-independent standard, such as, for example, the JAVA and the J2ME small footprint JAVA standards. Of course, the agent is not limited to such implementations and could be assembled in any software structures with varying degree of complexity and difficulty to get all the features. Embodiments of the agent using a J2ME Connected Device Configuration with the Foundation Profile can enable a broad range of devices, from large system components with many resources down to small, embedded systems with limited resources. Many other embodiments are possible using variants of JAVA and other programming languages as required by the device in which the agent is to be embedded or which the agent is to represent. The J2ME environment is a preferred environment due to its ability to ensure the agent software remains substantially device independent and substantially reusable across device and product platforms. In addition, J2ME includes support for networked and distributed systems, embedded security capabilities, and support for dynamic download and operation of code.
- In addition to the benefits described above, the DMA provides the ability to hide multiple, disparate sources of data behind a common provider API. This further abstracts the details of the device from the software agent. In embodiments, four separate sources of data can be unified behind the common provider and CIM so that the services need not know the details the data sources. For example, EPSV, PWS, CAN Bus, and Web UI, data can be managed in this fashion. A set of tools can also be provided in embodiments that enable the provider layer and the CIM contained in the Device Model Agent to be easily customized for a given product or device. This encourages reuse and speeds release because programs adopting or maintaining the Device Model Agent need only be concerned with the mapping of CIM element to the source of data and not the management of the entire Device Model Agent.
- An enabling feature of the end-to-end architecture of the system components is the inclusion of, in embodiments, an appropriate abstraction of the communication methods employed between various distributed components. This abstraction is preferably applied to the physical connection mechanism, as well as to the protocol level up through session level. Such abstraction at both levels helps to hide the details of the communication method from the distributed components, allowing them to focus on the operation of the services and decoupling them from changes in the communication media or protocols. For example, this allows the system to use email over a wireless link or Web Services over a dedicated Ethernet link without the services themselves caring which is used.
- This type of abstraction is new to devices and provides several important benefits. It provides for flexibility in deployment of the system components for any given user. Information on the Quality of Service that can be expected from any given combination of physical and protocol, up through session layer, connections can be carried. The system can have a component on the host/back-office side that monitors the Quality of Service for various configurations to assess the effectiveness of a communication link for providing the quality of service required by a given service offered to a particular user. This is an element of the provisioning and self-monitoring portions of the overall end-to-end system.
- The communication abstraction also provides some fault tolerance. If one connection mechanism goes down for some reason, the communication module can detect that and replace the failed connection with another working one without the rest of the system knowing other than the fact that potentially a change in the quality of service has occurred.
- In embodiments, services can alternatively be “hardcoded” into a device or proxy. This means that many of the management functions associated with dynamic adding and deleting of services is not required. The embedded portion of the service that is to run at the device must be compliant with the web services transactions between distributed components. This enables the back-office to effectively treat “hardcoded” services the same way as full, dynamic services in the system.
- Hardcoded services can be enabled by back-office subscription. This enables the service provider to control the particular services enabled on any given device, which gives the service provider the flexibility to determine how the services offered will go to market based on business need. For example, the services can be part of a package, offered for free, be offered for a price, require renewal, be offered on a trial basis requiring another transaction for full service provision, etc.
- Hardcoded services preferably share a common underlying set of behaviors and specific extensions for their particular requirements. Preferably, the services have components that work together, but run on the devices themselves in the embedded services platform, on the intelligent proxy, and/or in the back-office server. Though hardcoded, these services can be configured and managed by the service lifecycle management system in the supplier/service provider back-office.
- The types of standards embodiments preferably use include the Distributed Management Task Force (DMTF) Web Based Enterprise Management (WBEM) and Common Information Model (CIM). As described above, the CIM provides embodiments with device model and abstraction to enable services reuse. Additionally, embodiments employ web services, XML, various versions of HTTP, and SSL. Embodiments can also use server side certificates from, for example, VeriSign, which enables communication across firewalls and the Internet. To enable application environments in the device and in the back-office, embodiments can employ, for example,
Java 2 Micro Edition (J2ME), Embedded Virtual Machine from Insignia Corporation,Java 2 Enterprise Edition (J2EE), the BEA WebLogic 7.0 Application Server Technology Suite, and Oracle8i. Of course, these are only examples, and additional components can be used where appropriate. Further, it is likely that new components will be developed that are not currently foreseen and that can be added to the system of embodiments, which components fall within the scope of embodiments. The services provided, their lifecycles, and the extension of the DMTF CIM for specific products are examples of new technologies within embodiments. - Embodiments further enable the rapid addition and roll out of new services to already deployed systems. For example, say that soon after the launch of a new product a new diagnostic service is developed based on lessons learned form the first three months of its operation in the field. The exact nature and behavior of this service could not have been anticipated when the product was launched, so the diagnostic service would not have been included in the launched product. Embodiments allow such a diagnostic service to be added to installed devices at substantially any time.
- Embodiments contemplate the service model and internal specification of what a new “service bundle” should include. Thus, in addition to the permissions and configuration information for a service, new code can be downloaded if needed to add a new capability to an existing device in the field. This feature can be used in conjunction with, according to embodiments, an embedded services platform on the devices that are designed to accept the new functionality easily. In addition, when used in conjunction with the embedded services platform of embodiments, the new code for the new services can be reused across platforms because of the device independent abstraction provided by the embedded CIM in the DMA. For devices without such a platform, new code can still be added as, for example, a more specialized software download service for patches and upgrades in the field, but the code to enable those services will most likely be platform specific and therefore less reusable.
- This system of embodiments can offer diagnostics routines and other services in a way that is very flexible for the device platform. To the service provider in the back-office, such enabled devices look like every other DMA enabled device according to embodiments. In addition, all the services for the device family that run locally on the device internal platform can still communicate directly back to the supplier systems rather than through an intelligent proxy.
- Another variant in deployment is to fully embed the DMA into the product itself. This implementation is in a way very similar to the Example 1 implementation in that they are both DMA enabled platforms. For this example however, the small footprint DMA services platform is embedded into the product and communicates with both a Print Station Interface Platform (PSIP) and with an embedded device controller. The limited resources required by the small footprint system is acceptable to that product and development and integration of the required interface components is relatively easy.
- The reusable DMA is a “drop-in” to systems that already have a JVM. The small footprint DMA is not a drain on the system resources and can greatly speed the enablement of such platforms.
- Automated Meter Reads
- Another example of using the deployment flexibility built into the embodiments is seen by looking at the system from the perspective of an end-to-end service. In this case, the service is automated meter reads. This service focuses on acquiring the monthly or quarterly meter reads typically received via phone calls, faxes, emails, or web entry without a human in the loop. This can increase both the accuracy and timeliness of the reads, save time for users, and enable suppliers to improve invoicing and billing.
- Since the data required from the devices is small and is already largely available, an intelligent proxy can be employed, which can facilitate the participation of all SNMP enabled products. This, used in conjunction with devices that are DMA enabled but not fully SNMP compliant, means broad coverage can be achieved rapidly. Again, the abstractions and the system modularity in this case are significant. The back-office system doesn't need to know which way the devices have contacted the supplier (directly or through a proxy); all it needs is the device's serial number and it can then request meter reads when they are due. This decoupling of the way devices are enabled to participate in the services and the requests made by the back-office service provider is an advantage in providing deployment flexibility.
- Early Warning System
- In embodiments, a reporting system, a remote monitoring service, and other remote services are combined to assemble a set of tools to support more testing in the field. The underlying systems and data collection services can be complementary to data collection systems that rely on human observation and reporting. Together, the combination of systems provides a much greater, integrated set of knowledge upon which engineering teams can base product problem resolution activities. In addition, the common model for data collected from devices in the field creates a mechanism for deploying reporting tools and basic performance reporting that can be used across platforms.
- Premium Remote Assistance via Remote Control and Device Services
- One of the basic principles in embodiments is that the devices themselves should take an active role in their own lifecycles and support. This works in a number of trouble or status reporting situations. It may even work with an embedded diagnostic agent in the device that can monitor system performance and make software or configuration changes automatically in order to keep the system running well in the field. However, many problems that users experience are related to user problems and operational errors as much as they are related to device failures. In addition, as we all know, since marking machines are complex electromechanical systems, they cannot always be repaired remotely.
- To address the operational support needs of devices in the field and to support new ways of working with the operators on site, a remote UI and a human to human support system are combined in embodiments. Support automation solutions can be complementary parts of a premium service and support offering. It automates data collection and remote monitoring as well as offers many remote services described above. The combination also provides an excellent way to work directly with the device operators via a shared UI to help them when additional training, problem resolution, and software tweaks are required.
- Connectivity Trade-Offs:
- Some exemplary options for the communication link between the devices in user sites and the back-office are shown in FIG. 41. There are three primary options labeled A, B and C. Notice that only options A and C complete the connectivity between the devices and the supplier back-office on their own. Option B needs to connect to A or C to complete the link back to the supplier.
- A summary of the pluses and minuses of each option are in Table 2.
- All connectivity options preferably reuse the same back-office infrastructure even though they may enter the supplier via different mechanisms.
- All options are attractive because as a group they can provide additional flexibility for deployments that will meet a variety of user requirements. The preferred method of connecting, when feasible, is Option A—Wired connectivity via LAN and Internet. This is the option of least development investment and least operation expense. In the short-term this is especially important while the value of the services are being proven and resources need to be focused on initial services development and delivery —not additional ways to connect to devices. It does not, however, address unconnected devices that will initially be left out of the services if only this option is pursued. For the time being each service will need to consider how to manually include non-connected devices in the offerings.
TABLE 2 Wired Connectivity Wireless Connectivity Option A: Option B: Local Option C: Long Distance + Available to all network devices in Use wireless connectivity will Technology exists for both sites with Internet access. eventually be available in cellular and two-way pager No additional user or supplier cost printers options. for use of LAN and Internet Can be purchased off the shelf Phone line can be added regardless from several companies or of printer / stand-alone option optimized specifically for supplier from standard technologies available. Potentially good answer for unconnected devices if leverage supplier's existing pager / cellular service plans. User feedback has been positive for this option for unconnected devices without any costs being passed on to them. − Some additional traffic on users Wireless capability not yet Two-way pager and cellular network available in non-connected add-on components costly. Unconnected systems not covered printers yet. Users have security concerns by LAN option Wireless access points for about networked devices Phone line option is added expense connectivity to rest of network that are also connected to enable and operate may not be present wirelessly to another Phone line connectivity has proven Local wireless still requires network. to be difficult to maintain. either A or C to be present to Bandwidth limited vs. wired complete the link to supplier. connectivity Need for wireless may be Need for wireless may be temporary as more devices temporary as more devices become connected. become connected. Add-on boxes are likely to require unique communication interfaces to connect the box to each type of printer. - The next preferred method of connecting is Option C—Long-distance wireless via cellular or 2-way pager technology. The system can work in this configuration seamlessly with wired devices, and having capability available would enable some user problems to be solved when they come up. However, there are some challenges with deploying the wireless capability on a large scale over a large number of products. For example: developing a number of different add-on modules to be compatible with the very wide array of products in the field could be costly since few systems have the same interfaces to access detailed device data and operations. Additionally, the added expense of adding wireless connectivity and communications costs may be prohibitive until several services are available to use the connection. Simple, more easily deployable wireless configurations have inherent limitations on the number and types of services that can be offered, making it harder to justify the cost. Finally, users voiced concerns with networked systems that also had wireless connections since this is a way that suppliers/service providers or another party could bypass their firewalls and potentially access other resources on their network.
- Finally, Option B—Local-wireless connectivity. This method can be used depending on how the local wireless connectivity technologies integrate into our user's environments and printers specifically.
- Supporting End-to-End Infrastructure for Device Services
- A supporting end-to-end infrastructure for connecting devices in user sites back into legacy systems and business processes is required. The end-to-end system shown in FIGS. 1 and 2 is an initial exemplary embodiment of an end-to-end infrastructure. It supports the basic dual-mode of device participation (direct and via a services proxy), uses the initial service communication and subscription models, and employs a common entry point for services data and actions via an edge server hosted, for example, in the supplier environment. The edge host can be partitioned in a manner suitable for additional embodiments, but can also be physically hosted on one system, minimizing start up costs while penetration and adoption ramps up.
TABLE 3 A sample of the Technology and Infrastructure. Enabling Technology Evolution Infrastructure Evolution High-end devices can act Edge Host focuses on service as services proxies for provisioning and transaction other devices they find management within their environment Supplier maintains common if the users chooses DataMart where CIM data from Device can participate all devices is stored and is in a combination of accessible by a variety services directly or of internal supplier through proxies. functions. Secure communication In addition to sending data initiated by either to the DataMart, data/events devices or supplier can are routed based on be deployed services subscription and services that require high needs directly to the service level of service sponsors guarantees. The physical split between CWW can communicate the Edge Host, database, and with new devices service specific via the CIM protocol vs. Authentication /Authorization only SNMP of devices and communication Device can participate is handled centrally via is services via wireless supplier systems. connectivity directly Provisioning and software/ from them to supplier. tools for services to define the business rules which describe how devices need to be configured to participate are established and used to deploy new services quickly. - Each of the areas listed in Table 3 represent areas of technology development or areas where third party COTS systems need to be acquired and explored. They also represent areas where the full requirements for the technologies are not yet known.
- As described above, printing products not originally designed to support user assisted self-help programs, device-centric services, and/or remote monitoring for ECAT sometimes find that such offerings are important to speeding initial delivery and to continued success of the products. A need of such products is to receive daily (or at some other period) reports from devices in the field as to their state and how they have been used by the user. We have called this service Remote Monitoring. This is important as it allows the program team to identify problems earlier in the field and provides important information to enable, sales, marketing, and support to improve their outputs as well.
- One solution to this is to offer the Device-Centric Services (DCS) Device Model Agent (DMA)120 on the controller and connected locally to the IOT from there. The add-on component or Customer Services Platform (CS Platform) 115 is the solution to this need. The
CS Platform 115 can take the form of an embedded system that connects locally to the IOT through one or more of several existing interfaces, unifies the view of that data and functionality, and provides a local UI for operation, management of functionality locally, and theservices platform 124 and APIs for remote connectivity and device-centric services. TheCS Platform 115 is a product embodiment of both theDMA 120 and the embeddedservices layer 141 enabled by theservices platform 124 in the Device-Centric Services framework. - With reference to FIGS.12, 16-19 and 21, the
CS Platform 115 can preferably take the form of a networked, embedded personal computer. Additionally, the add-on component can take the form of a headless box. In whatever particular form, the add-oncomponent 115 is connected to the IOT via at least one physical interface. The UI for theCS Platform 115 is available at any browser on the local network and is served by an embeddedweb server 130 in theCS Platform 115. In a preferred embodiment the user would use the browser on their DFE as the local UI for theCS Platform 115. TheCS Platform 115 is preferably networked and configured, just as any browser is configured, to know the local network proxies, firewall passwords, DNS server IP addresses, and so forth, so that it can connect to theedge server 410 which is available on theInternet 400. When running, theCS Platform 115 will use this connection to check for messages and instructions and will send required data in support of subscribedservices 140 as well. Theedge server 410 manages the queues, messages, services, and transactions associated with the end-to-end operation of the device services. - Preferably, the
CS Platform 115 is a low cost, embedded personal computer based platform with amotherboard 701, and an embeddedsoftware operating system 704, such as Linux, though other operating systems could be used. The add-oncomponent 115 can be customized with hardware, such as an auxiliary input/output andstatic memory board 702, but such customizations are preferably minimal to keep costs down. Thecomponent 115 is designed to enable the internal hardware platform to change over time to follow the minimum generic personal computer value curve which can reduce the cost of the platform by ⅔. Memory, such as compact flash memory, for example, can be used as aninternal storage medium 703, which has improved reliability over hard disk drives. The use of compact flash memory also lowers the cost of upgrading theCS Platform 115 ifnew services 140 to be deployed require additional storage resources, yet the compact flash memory appears to the system as a normal hard disk drive. Further, the use of standard personal computer technology in the add-oncomponent 115 enables rapid revision to follow cost curves and trends and also ensures that standard add-on technology (for example a web camera) is compatible with the platform. - Examples of connection paths between the CS Platform add-on
component 115 and the IOT of a device include Electronic Partner (EPSV) 712-714, a Fuji Xerox protocol and interface; RS422 and/or RS232serial port CS Platform 115 is preferably designed in such a way as to not be limited to these connections. - A
router 730 is preferably included and responsible for managing the multiple information sources and handling preemption of some activities given another connection becoming active. Communication is thus mediated in such a way as to allow communication to occur without data corruption problems. - An embedded software system preferably provides the flexible components in support of both locally hosted functions, such as the diagnostics routines described here, and services that can be dynamically added and configured. Embodiments thus contemplate a system component based on the Device-Centric Services platform and embedding the
DMA 120, and an embedded JVM and web server to enable theCS Platform 115 to act as a local enabler for the system to actively participate in device-centric services. - The embedded
DMA 120 enablesservices 140 to be offered directly from thedevice 110 regardless of its digital front end and/or ability to run theDMA 120 on its own. This enables thedevice 110 to participate actively in services offerings via the DCS services model. The add-oncomponent 115 also provides a programmatic interface fornew services 140 to be built around the system, enabling rapid and robust solutions integration with the product. Further, the inclusion of aweb server 130 in the add-oncomponent 115 allows web services transactions and services directly between theCS Platform 115 as an interface for the IOT and remote service offerings. - A customized IOT diagnostics offering740 geared towards a trained user rather than the customer service engineer provides easy to use, globalized Uls for predefined diagnostics already offered by the IOT. The diagnostic routines can, for example, optimize toner density levels and obtain consistent image quality (MaxSetup 741).
Other services 742 that can be offered include Belt Edge Learn, a routine that learns the edge of a new intermediate belt to improve lateral registration and belt steering performance. The purpose of Belt Edge Learn is to track the belt movement using the two Belt Edge Sensors. Using data received from these Sensors, the IOT automatically adjusts using the Belt Tracking Roll/Motor/Sensor to ensure that the Belt rotates without any inboard/outboard movement. More services can include RegiCon, a set-up routine that sets up the complete image on image registration system found in the IOT, and Halftone, a set-up routine to adjust the halftone densities printed by the system. Printing a halftone pattern places a user-definable level of constant tone over the whole page. The halftone pattern itself is used to diagnose problems, as almost every image quality defect will show up in a halftone pattern. - The CS Platform add-on115 preferably employs a web based UI through an embedded web server. This saves hardware cost on the
CS Platform 115 itself and instead uses the monitor, keyboard and mouse hardware associated with the digital front end of thedevice 110, which is almost always present and networked. It is also accessible from any other networked PC with a suitable browser on the local network. Such a UI offers increased ease of use and extendibility for new services and capability over time. The cost of providing a GUI just for this application would be prohibitive. The web based UI can include, in embodiments, context sensitive help and links to a call center and other support sites, making the system much easier to use. The UI can be available at any connected browser on the user's LAN, including hardwired networked personal computers. Further, wirelessly connected personal computers or handhelds with compatible browsers could also be used as a UI if a wireless access point is connected to theCS Platform 115 directly or installed on the user's network. - The Device-Centric services add-on
component 115 of embodiments preferably comes equipped with several services pre-loaded and authorized, though this need not be the case. The CS Platform follows the Device-Centric Services model for subscribed service offerings. The PDT has made the decision to enable a basic set of services. Additionally, the component is preferably enabled for software download and remote upgrade of the CS Platform firmware via notification from remote site. - The system, through the synchronization service, will preferably periodically check in with the
remote DCS host - The
component 115 provides secure, encrypted communication back to the supplier in support of eService offerings. Diagnostic routines of embodiments, even though completely local in operation, are treated as services. They can then be controlled via the services subscription model used for all services. This allows the functionality of the CS Platform to be effectively turned-off when it becomes necessary to do so. - An initial set of services can preferably be offered to the user by the system. Such an initial offering can include, for example, Automated Billing, Automated Supplies Replenishment, and Remote Monitoring. Automated Billing is preferably a subscribed service that on demand or automatically reports the required billing meter to the supplier via the Device-centric services infrastructure. Automated Supplies Replenishment, as the name suggests, is preferably a subscribed service that tracks toner usage, area coverage, and toner bottle change events in order to supply the supplier with the information necessary to ensure the timely and accurate delivery of meter supplies to the user's site without human intervention. Remote monitoring is preferably a service that periodically gathers up a configurable set of data found in the system, models it in a standard fashion, and publishes it back to the supplier. Examples of the type of data found in this service include billing meters, IOT faults, media path jams, image area coverage, media usage (weight, size, and type), feature usage, toner status, simplex/duplex quantities, media tray usage, reduction and enlargement, copy modes, and High-Frequency Service Items status.
- An additional set of services can be embedded in the system to ensure proper system operation. For example, DMA Housekeeping Service, Health Monitor, DMA to IOT communication status Monitor, and Services Synchronization Service, a service that periodically checks back with the remote portions of the DCS system to see if there are new instructions or activities the DMA should be doing.
- To ensure security, the add-on
component 115 employs in embodiments standard, secure web data transmission technologies and certificates. For example, VeriSign certificates, RSA encryption, SSL, and related technologies can be employed. Additionally, the add-oncomponent 115 can provide a detailed transaction log allowing the user to inspect all the messages sent from the device. All transactions sent from theCS platform 115 can be logged in XML form before they are packaged for transmission and encrypted. This provides another layer of inspection capability by the user to increase confidence in the supplier's statements that we sending only what we say we are. - Three levels of authorization can be invoked before data is sent to the
edge host 410, in embodiments. It is expected that contractual agreements will state that data will be sent automatically and the user will have the ability to inspect the transmission logs. Options are designed into the system to accommodate multiple levels of authorization for users who require different agreements to be made. The levels can include Audit and Log, in which records of all transactions are kept in the transaction Log; Simple Notification, in which a user representative is notified via on screen message, email or some other mechanism when a transmission to the back-office is accomplished; and Approval Before Sending, in which a queue of messages to the back-office 300 is maintained and the user representative is notified when the queue is not empty. In Approval Before Sending, the user representative can inspect the messages if desired and can then OK the sending of the data. The default authorization level is configurable, though the preferred shipped default level is Audit and Log. Previous assisted self-help tools and even the diagnostics access on the IOT itself had one password for all functionality. There was no way for the previous system to accommodate multiple people roles and manage passwords accordingly. - In embodiments, the multiple roles enabled can include Technical Key Operator (TKO), Customer Service Engineer (CSE), and System Administrator (SA). A system for configuring the access for any given role is provided via the web based GUI. Passwords are preferably initially set to common passwords individualized for each role. The system of embodiments contemplates allowing the SA to configure his or her own password and manage the passwords of the TK); enabling networked role based password management using standard IT industry processes, protocols, and procedures, and enabling remotely authenticated login and password management for any or all roles. Remote login may be especially attractive for CSEs who want to use their same password on any
CS Platform 115 that they visit. Authentication for remote login can be password only, a combination of password and token, or any other suitable method. This would be limited by the network connectivity of the CS Platform to the remote host site and a back-up (or local) common CSE or user role password would need to be supplied. - The platform even can include a process for remotely resetting local passwords that are forgotten. The SA calls the help desk and is successfully authenticated as who they say they are. The Help desk places an order to the CS Platform (identified by IOT serial number) to have it reset its SA password. The SA is told to manually press the SYNC button, causing the CS Platform to check in with the
Edge Host 410, receive the order to reset the SA password, and complete the operation. If all else fails a CS Platform Factory Reset procedure can be followed which will reset all the passwords to default configuration. -
New software services 140 can be added to the CS Platform add-on component through the normal DCS service subscription and activation processes. Subscribed services can be automatically managed and installed by theDMA 120 and the DCS end-to-end system 1. This enables theCS Platform 115 to offer new services over time. New software upgrades can be offered through the remote software upgrade feature of the CS Platform. This enables more significant upgrades of theCS Platform 115 to be performed with user approval without the need for a tech rep to visit the user's site. This increases the frequency at which system upgrades can be deployed because cost is significantly reduced. - New hardware can be added with the appropriate services added remotely to the platform because of the above features and the use of COTS technology for most of the system hardware and software. An example of a new service requiring hardware extensions would be web camera based support for users. With the addition of a low cost USB web cam, the
CS Platform 115 can offer a service for those subscribed that allows them to get better remote support on the phone because they can snap and send photos of the problems they are having to a help desk or call center. - Embodiments contemplate installation of the CS Platform on a network connected personal computer on the same subnet as the
CS platform 115. The install process, a schematic illustration of which is shown in FIG. 19, uses a combination of standard networking utilities and LED indications found on the back of the CS Platform to walk the installer through the process. Since theCS Platform 115 is preferably a headless embedded system, the install process can be tricky. The steps listed here are one possible way to do the install, though others are possible. The combination of feedback on the command screen and LEDs on the device provide a robust process for the installation. Thecomponent 115 is initially in power-on standby (block 801) and is powered on by the user (block 802). Preferably, a status LED or the like blinks to indicate that thecomponent 115 is booting, then becomes steady on when thecomponent 115 is ready (block 803). In embodiments, the user reads the MAC address of the component 115 (block 804), opens a command window on the UI (block 805), and enters a command with the MAC address and other information (block 806). The user can then ping the component 115 (block 807) to test it, then wait for an indication of completion (block 808), such as one or more LEDs in a steady on state. The user then goes to the component'sweb server 130 via a browser (block 809), logs on as the administrator (block 810), and configures network information as required (block 811) to enable thecomponent 115 to communicate with theedge host 410. Thecomponent 115 reboots, during which the IOT should be powered down (block 813). Once both have completed their reboot, installation and setup are complete (block 813). - The CS Platform can be configured in multiple ways for network connectivity, including use of a fixed IP address and use of DHCP to acquire an IP address. A fixed address is preferred for most users and has the advantage of making it easy to point a browser to the CS Platform U1 when ready. DHCP is a very easy to install alternative, but would require a device domain name for the CS Platform and DNS services connection. One possible way to provide an automatic domain name is to combine the IOT serial number with the last two digits of the MAC address. Other combinations of readily available information known to the user and the CS Platform by default are possible.
- The CS Platform is configured for the network just as any browser would be configured. This can be done manually via form fill-in on the CS Platform UI. It can also be done through a look-up to see the setting already found in the web browser platform if the OS provides that capability. This would provide the base-line settings and the user then has the ability to customize or correct them as necessary. Once configured, a Test Configuration button can be provided that immediately tries to contact the
supplier edge server 410 to ensure that the settings are correct before the user leaves the network administration page. - Users of the
CS Platform 115 may lose a bookmark to the CS Platform Web Page and a way needs to be provided for users to find that web page again easily. If DHCP was used to configure the system, then the user can simply follow instructions to determine the default or hard coded domain name of the CS Platform. A discovery tool can also be provided that is installed and runs on the DFE or a networked personal computer in the user's environment and will find and display all CS Platforms that are running. This discovery tool could also be downloaded from the supplier web site. A link to the tool could be made available from the CS Platform UI so the tool can be downloaded and saved in preparation for CS Platform IP address loss. The tool could also come stored locally on the CS Platform with an option to save it locally on the DFE during install. - As mentioned above, the router manages simultaneous access methods to the CS Platform. The CS Platform router is preferably compatible with the supplier gateway and DMA requirements and with
devices 110 in the field. The router preferably provides direct connectivity between the Local PWS port and the IOT diagnostic (serial) port. The router of embodiments also provides network connectivity for a network client through, for example, the IOT diagnostic (serial) port, and can support network pathways to the IOT CAN Bus, to the EP Service forvarious devices 110, and mediates all (except EP) communications traffic and priorities. Priorities are enabled to allow the smooth transition of operational modes. For example, a priority for Application Session for DCU Software Upgrade, another for Local PWS Port IOT Diagnostic Session at the IOT Serial port3, and another for other Network Sessions. Under normal system operation, an “open” Local PWS session is preferably not pre-empted, and a Local PWS session request may preferably interrupt a network diagnostic application session. Any interruption should be graceful. Preemption of a Network DCU software upgrade session is preferably not be permissible, though an EP and/or CAN Bus session should preferably be permitted at any time as long as only one CAN session is permitted at any one time. The DMA EP Gateway server/client client preferably has exclusive access to the EP port, and DCU V2.0 preferably supports a pathway for local PWS transactions over the network. - In support of DCU v2.0, the Communication Controller can provide, for example, the contents of local CSE diagnostic session over the network by generating a START_DIAG_SESSION event (Consumer of this event is DMA Push Event Provider), generating END_DIAG_SESSION event (Consumer of this event is DMA Push Event Provider), delivering each message between LOCAL_PWS_PORT and IOT_SERIAL communication ports as PWS_MESSAGE EVENT to DMA Push Event Provider.
- In further support of DCU v2.0, the Communication Controller can support a local CSE diagnostic connection through the Local PWS port to the IOT serial port by providing a method to communicate its presence to the PWS connected to the system, for example by utilizing the RS232 signal designated as the CTS (Clear To Send) signal. The CTS signal is preferably held at logic level HIGH at the DCU.
- The DSR (Data Signal Ready) signal in the RS232 interface can control the diagnostic mode of the IOT. The DCU will preserve or as necessary ‘create’ this control. If the IOT is in the diagnostic mode and is powered off it will power up in the diagnostics mode when the DSR signal to the IOT has been set HIGH. The PSW controls the DSR signal.
- While particular embodiments have been described, alternatives, modifications, variations, improvements, and substantial equivalents that are or may be presently unforeseen may arise to applicants or others skilled in the art. Accordingly, the appended claims as filed and as they may be amended are intended to embrace all such alternatives, modifications variations, improvements, and substantial equivalents.
Claims (25)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/686,751 US20040125403A1 (en) | 2002-10-16 | 2003-10-16 | Method and apparatus for enabling distributed subscription services, supplies maintenance, and device-independent service implementation |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US31962202P | 2002-10-16 | 2002-10-16 | |
US31962502P | 2002-10-17 | 2002-10-17 | |
US31962302P | 2002-10-17 | 2002-10-17 | |
US31962402P | 2002-10-17 | 2002-10-17 | |
US10/686,751 US20040125403A1 (en) | 2002-10-16 | 2003-10-16 | Method and apparatus for enabling distributed subscription services, supplies maintenance, and device-independent service implementation |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040125403A1 true US20040125403A1 (en) | 2004-07-01 |
Family
ID=32046064
Family Applications (8)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/687,244 Expired - Fee Related US7647392B2 (en) | 2002-10-16 | 2003-10-16 | Device model agent |
US10/686,824 Abandoned US20040111709A1 (en) | 2002-10-16 | 2003-10-16 | Method for low cost embedded platform for device-side distributed services enablement |
US10/686,751 Abandoned US20040125403A1 (en) | 2002-10-16 | 2003-10-16 | Method and apparatus for enabling distributed subscription services, supplies maintenance, and device-independent service implementation |
US10/687,142 Expired - Fee Related US8154741B2 (en) | 2002-10-16 | 2003-10-16 | Apparatus for low cost embedded platform for device-side, distributed services enablement |
US10/686,843 Abandoned US20040111699A1 (en) | 2002-10-16 | 2003-10-16 | Integrated server platform for the autonomous provisioning of device services |
US10/686,844 Active 2027-04-20 US7734749B2 (en) | 2002-10-16 | 2003-10-16 | Device model agent |
US10/686,842 Expired - Fee Related US7644145B2 (en) | 2002-10-16 | 2003-10-16 | Integrated server platform for the autonomous provisioning of device services |
US13/334,917 Expired - Fee Related US8194275B2 (en) | 2002-10-16 | 2011-12-22 | Apparatus for low cost embedded platform for device-side, distributed services enablement |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/687,244 Expired - Fee Related US7647392B2 (en) | 2002-10-16 | 2003-10-16 | Device model agent |
US10/686,824 Abandoned US20040111709A1 (en) | 2002-10-16 | 2003-10-16 | Method for low cost embedded platform for device-side distributed services enablement |
Family Applications After (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/687,142 Expired - Fee Related US8154741B2 (en) | 2002-10-16 | 2003-10-16 | Apparatus for low cost embedded platform for device-side, distributed services enablement |
US10/686,843 Abandoned US20040111699A1 (en) | 2002-10-16 | 2003-10-16 | Integrated server platform for the autonomous provisioning of device services |
US10/686,844 Active 2027-04-20 US7734749B2 (en) | 2002-10-16 | 2003-10-16 | Device model agent |
US10/686,842 Expired - Fee Related US7644145B2 (en) | 2002-10-16 | 2003-10-16 | Integrated server platform for the autonomous provisioning of device services |
US13/334,917 Expired - Fee Related US8194275B2 (en) | 2002-10-16 | 2011-12-22 | Apparatus for low cost embedded platform for device-side, distributed services enablement |
Country Status (4)
Country | Link |
---|---|
US (8) | US7647392B2 (en) |
EP (1) | EP1411456A3 (en) |
CN (1) | CN1527232A (en) |
BR (1) | BR0304946A (en) |
Cited By (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040111315A1 (en) * | 2002-10-16 | 2004-06-10 | Xerox Corporation | Device model agent |
US20050152380A1 (en) * | 2004-01-08 | 2005-07-14 | Samsung Electronics Co., Ltd. | Apparatus and method for sharing services on a network |
US20050253887A1 (en) * | 2004-05-12 | 2005-11-17 | Garrana Henry N | Print cartridge ordering system |
US20060048220A1 (en) * | 2004-08-24 | 2006-03-02 | Jahromi Babak G | Securely inspecting electronic messages |
US20060077428A1 (en) * | 2004-10-08 | 2006-04-13 | Sharp Laboratories Of America, Inc. | Methods and systems for displaying content on an imaging device |
US20060077464A1 (en) * | 2004-10-08 | 2006-04-13 | Rono Mathieson | Methods and systems for imaging device document management |
US20060077413A1 (en) * | 2004-10-08 | 2006-04-13 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device job management |
US20060077447A1 (en) * | 2004-10-08 | 2006-04-13 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device notification access control |
US20080069121A1 (en) * | 2004-06-15 | 2008-03-20 | Koninklijke Philips Electronics, N.V. | Gateway For A Local Network System |
US20080091408A1 (en) * | 2006-10-06 | 2008-04-17 | Xerox Corporation | Navigation system for text |
US20080294423A1 (en) * | 2007-05-23 | 2008-11-27 | Xerox Corporation | Informing troubleshooting sessions with device data |
US20080310875A1 (en) * | 2007-06-15 | 2008-12-18 | Shahana Rahman | Machine integrated semi-automated service credit for a metered device |
US7684074B2 (en) | 2004-10-08 | 2010-03-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device metadata management |
US7738808B2 (en) | 2004-10-08 | 2010-06-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device concurrent account use with remote authorization |
US7797303B2 (en) | 2006-02-15 | 2010-09-14 | Xerox Corporation | Natural language processing for developing queries |
US7826081B2 (en) | 2004-10-08 | 2010-11-02 | Sharp Laboratories Of America, Inc. | Methods and systems for receiving localized display elements at an imaging device |
US20100281473A1 (en) * | 2009-04-29 | 2010-11-04 | Microsoft Corporation | Automated software deployment triggered by state differences in distributed systems |
US7870185B2 (en) | 2004-10-08 | 2011-01-11 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device event notification administration |
US7873718B2 (en) | 2004-10-08 | 2011-01-18 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting server recovery |
US7873553B2 (en) | 2004-10-08 | 2011-01-18 | Sharp Laboratories Of America, Inc. | Methods and systems for authorizing imaging device concurrent account use |
US7920101B2 (en) | 2004-10-08 | 2011-04-05 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device display standardization |
US7934217B2 (en) | 2004-10-08 | 2011-04-26 | Sharp Laboratories Of America, Inc. | Methods and systems for providing remote file structure access to an imaging device |
US7941743B2 (en) | 2004-10-08 | 2011-05-10 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device form field management |
US7966396B2 (en) | 2004-10-08 | 2011-06-21 | Sharp Laboratories Of America, Inc. | Methods and systems for administrating imaging device event notification |
US7970813B2 (en) * | 2004-10-08 | 2011-06-28 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device event notification administration and subscription |
US7969596B2 (en) | 2004-10-08 | 2011-06-28 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device document translation |
US7978618B2 (en) | 2004-10-08 | 2011-07-12 | Sharp Laboratories Of America, Inc. | Methods and systems for user interface customization |
US8001586B2 (en) | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential management and authentication |
US8001587B2 (en) | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential management |
US8001183B2 (en) * | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device related event notification |
US8006293B2 (en) | 2004-10-08 | 2011-08-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential acceptance |
US8006292B2 (en) | 2004-10-08 | 2011-08-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential submission and consolidation |
US8015234B2 (en) | 2004-10-08 | 2011-09-06 | Sharp Laboratories Of America, Inc. | Methods and systems for administering imaging device notification access control |
US8018610B2 (en) | 2004-10-08 | 2011-09-13 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device remote application interaction |
US8024792B2 (en) | 2004-10-08 | 2011-09-20 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential submission |
US8023130B2 (en) | 2004-10-08 | 2011-09-20 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting data maintenance |
US8032579B2 (en) * | 2004-10-08 | 2011-10-04 | Sharp Laboratories Of America, Inc. | Methods and systems for obtaining imaging device notification access control |
US8035831B2 (en) | 2004-10-08 | 2011-10-11 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device remote form management |
US8051140B2 (en) | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device control |
US8051125B2 (en) * | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for obtaining imaging device event notification subscription |
US8049677B2 (en) | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device display element localization |
US8060921B2 (en) | 2004-10-08 | 2011-11-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential authentication and communication |
US8060930B2 (en) | 2004-10-08 | 2011-11-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential receipt and authentication |
US8065384B2 (en) | 2004-10-08 | 2011-11-22 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device event notification subscription |
US8115946B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and sytems for imaging device job definition |
US8115945B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device job configuration management |
US8115944B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and systems for local configuration-based imaging device accounting |
US8115947B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and systems for providing remote, descriptor-related data to an imaging device |
US8120799B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for accessing remote, descriptor-related data at an imaging device |
US8120797B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for transmitting content to an imaging device |
US8120798B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for providing access to remote, descriptor-related data at an imaging device |
WO2012044994A1 (en) * | 2010-10-01 | 2012-04-05 | Electronics For Imaging, Inc. | Automated printer's dashboard |
US8156424B2 (en) | 2004-10-08 | 2012-04-10 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device dynamic document creation and organization |
US8160969B2 (en) | 2007-09-10 | 2012-04-17 | Lexmark International, Inc. | System and method for ordering consumables |
US8171404B2 (en) | 2004-10-08 | 2012-05-01 | Sharp Laboratories Of America, Inc. | Methods and systems for disassembly and reassembly of examination documents |
US8213034B2 (en) | 2004-10-08 | 2012-07-03 | Sharp Laboratories Of America, Inc. | Methods and systems for providing remote file structure access on an imaging device |
US8230328B2 (en) | 2004-10-08 | 2012-07-24 | Sharp Laboratories Of America, Inc. | Methods and systems for distributing localized display elements to an imaging device |
US8237946B2 (en) | 2004-10-08 | 2012-08-07 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting server redundancy |
US8345272B2 (en) | 2006-09-28 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Methods and systems for third-party control of remote imaging jobs |
US8384925B2 (en) | 2004-10-08 | 2013-02-26 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting data management |
US8428484B2 (en) | 2005-03-04 | 2013-04-23 | Sharp Laboratories Of America, Inc. | Methods and systems for peripheral accounting |
US8532960B2 (en) | 2010-09-28 | 2013-09-10 | Microsoft Corporation | Remotely collecting and managing diagnostic information |
US20130267172A1 (en) * | 2012-04-07 | 2013-10-10 | Samsung Electronics Co., Ltd. | Method and system for transfering data between plurality of devices |
US8788373B2 (en) | 2010-09-28 | 2014-07-22 | Xerox Corporation | Call center integrated printing device consumable cabinet device service |
US8893977B2 (en) | 2010-04-08 | 2014-11-25 | Access Business Group International Llc | Point of sale inductive systems and methods |
WO2019018672A1 (en) * | 2017-07-19 | 2019-01-24 | Ceasa Group, Llc | SYNDICATED INTERNET OF THINGS (IoT) DATA SYSTEMS AND METHODS ENABLING ENHANCED IoT SUPPLIER AND APPLICATION INDEPENDENT DEVICE FUNCTIONALITY AND SERVICES |
US20210377256A1 (en) * | 2020-05-29 | 2021-12-02 | Kyocera Document Solutions Inc. | Systems, apparatus, and computer program products for management of certificates for third party applications accessing printing kiosks |
Families Citing this family (337)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7606898B1 (en) | 2000-10-24 | 2009-10-20 | Microsoft Corporation | System and method for distributed management of shared computers |
US20050223392A1 (en) * | 2000-12-01 | 2005-10-06 | Cox Burke D | Method and system for integration of software applications |
US7213232B1 (en) * | 2001-06-07 | 2007-05-01 | 12 Technologies, Inc. | System and method for configuring software using a business modeling tool |
US7487233B2 (en) * | 2001-12-05 | 2009-02-03 | Canon Kabushiki Kaisha | Device access based on centralized authentication |
AU2003207495A1 (en) | 2002-01-08 | 2003-07-24 | Seven Networks, Inc. | Connection architecture for a mobile network |
US7558847B2 (en) | 2002-09-13 | 2009-07-07 | Intelliden, Inc. | System and method for mapping between and controlling different device abstractions |
FI115083B (en) * | 2002-11-21 | 2005-02-28 | Nokia Corp | Prioritizing control objects |
US7853563B2 (en) | 2005-08-01 | 2010-12-14 | Seven Networks, Inc. | Universal data aggregation |
US7917468B2 (en) | 2005-08-01 | 2011-03-29 | Seven Networks, Inc. | Linking of personal information management data |
US8468126B2 (en) | 2005-08-01 | 2013-06-18 | Seven Networks, Inc. | Publishing data in an information community |
US7912902B2 (en) * | 2003-02-13 | 2011-03-22 | Telcordia Licensing Company, Llc | Application service peering and aggregation |
US7689676B2 (en) | 2003-03-06 | 2010-03-30 | Microsoft Corporation | Model-based policy application |
US8122106B2 (en) * | 2003-03-06 | 2012-02-21 | Microsoft Corporation | Integrating design, deployment, and management phases for systems |
US7890543B2 (en) | 2003-03-06 | 2011-02-15 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
US7092703B1 (en) | 2003-03-24 | 2006-08-15 | Sprint Spectrum L.P. | Method and system for accessing a universal message handler on a mobile device |
US7779408B1 (en) | 2003-03-24 | 2010-08-17 | Sprint Spectrum L.P. | Method and system for downloading and managing portable applications on a mobile device |
US7568202B1 (en) * | 2003-03-24 | 2009-07-28 | Sprint Spectrum L.P. | Method and system for exchanging data between portable applications for mobile devices |
US7079839B1 (en) | 2003-03-24 | 2006-07-18 | Sprint Spectrum L.P. | Method and system for push launching applications with context on a mobile device |
US20040237081A1 (en) * | 2003-05-19 | 2004-11-25 | Homiller Daniel P. | Methods and apparatus for generating upgraded software from initial software and software upgrade packages |
US7617324B2 (en) * | 2003-06-20 | 2009-11-10 | Sun Microsystems, Inc | Protocol method for provisioning services |
US20050015340A1 (en) * | 2003-06-27 | 2005-01-20 | Oracle International Corporation | Method and apparatus for supporting service enablers via service request handholding |
US7937460B2 (en) * | 2003-07-11 | 2011-05-03 | Computer Associates Think, Inc. | System and method for providing service level management |
JP2005050318A (en) * | 2003-07-16 | 2005-02-24 | Ricoh Co Ltd | Workflow management apparatus, method, and program, and storage medium |
US7171454B2 (en) * | 2003-08-13 | 2007-01-30 | Siemens Energy & Automation, Inc. | Method for providing real-time production information using in-situ web services embedded in electronic production equipment |
US7734293B2 (en) * | 2003-10-29 | 2010-06-08 | Martin Zilliacus | Mapping wireless proximity identificator to subscriber identity for hotspot based wireless services for mobile terminals |
US20050108358A1 (en) * | 2003-11-03 | 2005-05-19 | Jarvis Daniel C. | Web enabled peripheral device, method of using a web enabled peripheral device, and method of manufacturing and supporting a web enabled peripheral device |
US20070180127A1 (en) * | 2003-11-11 | 2007-08-02 | Nokia Corporation | Preconfigured syncml profile categories |
KR100599583B1 (en) * | 2003-12-26 | 2006-07-13 | 한국전자통신연구원 | Apparatus and Method for Managing Network Devices by Updating Remote Service Objects Dynamically |
US7610372B2 (en) * | 2004-01-27 | 2009-10-27 | Ricoh Company, Ltd. | Method and system for managing vendor and model information in a multi-protocol remote monitoring system |
CA2463006A1 (en) * | 2004-01-27 | 2005-07-27 | Wrapped Apps Corporation | On demand provisioning of web applications |
US7509658B2 (en) * | 2004-01-30 | 2009-03-24 | Research In Motion Limited | System and method for adaptable provisioning of generic application content |
US8387039B2 (en) * | 2004-01-30 | 2013-02-26 | Research In Motion Limited | System and method for customized provisioning of application content |
US9176719B2 (en) * | 2004-02-26 | 2015-11-03 | International Business Machines Corporation | Resolving prerequisites for a client device in an open service gateway initiative (OSGI) framework |
US7778422B2 (en) | 2004-02-27 | 2010-08-17 | Microsoft Corporation | Security associations for devices |
US8862570B1 (en) * | 2004-03-02 | 2014-10-14 | Rockstar Consortium Us Lp | Method and apparatus for open management of multi-media services |
US7478396B2 (en) * | 2004-03-22 | 2009-01-13 | International Business Machines Corporation | Tunable engine, method and program product for resolving prerequisites for client devices in an open service gateway initiative (OSGi) framework |
US7249283B2 (en) * | 2004-03-22 | 2007-07-24 | Xerox Corporation | Dynamic control system diagnostics for modular architectures |
US8914518B2 (en) * | 2004-04-23 | 2014-12-16 | International Business Machines Corporation | Intermediary for satisfying a service requirement established by a service provider |
US20050246529A1 (en) | 2004-04-30 | 2005-11-03 | Microsoft Corporation | Isolated persistent identity storage for authentication of computing devies |
US9038082B2 (en) * | 2004-05-28 | 2015-05-19 | Oracle International Corporation | Resource abstraction via enabler and metadata |
US9565297B2 (en) | 2004-05-28 | 2017-02-07 | Oracle International Corporation | True convergence with end to end identity management |
US9245236B2 (en) | 2006-02-16 | 2016-01-26 | Oracle International Corporation | Factorization of concerns to build a SDP (service delivery platform) |
US8966498B2 (en) * | 2008-01-24 | 2015-02-24 | Oracle International Corporation | Integrating operational and business support systems with a service delivery platform |
FR2871588A1 (en) * | 2004-06-09 | 2005-12-16 | Inventel Sa | METHOD AND MODULE FOR DYNAMIC HOSTING OF SOFTWARE APPLICATIONS IN A GATEWAY BETWEEN AN OPERATOR NETWORK AND A LOCAL NETWORK |
US20060004832A1 (en) * | 2004-06-10 | 2006-01-05 | Langsford Richard G | Enterprise infrastructure management appliance |
US8392545B2 (en) * | 2004-07-01 | 2013-03-05 | Nokia Corporation | Device management system |
US8073960B2 (en) * | 2004-07-01 | 2011-12-06 | Nokia Corporation | Arranging management operations in management system |
US20060031449A1 (en) * | 2004-07-01 | 2006-02-09 | Mika Hallamaa | Selection of management method |
US7490153B1 (en) * | 2004-07-23 | 2009-02-10 | International Business Machines Corporation | Smart nodes for providing interoperability among a plurality of web services in a chain and dynamically orchestrating associated processes |
WO2006010241A1 (en) * | 2004-07-30 | 2006-02-02 | Research In Motion Limited | System and method for providing a communications client on a host device |
EP1658744A4 (en) * | 2004-07-30 | 2006-09-27 | Research In Motion Ltd | Method and system for coordinating device setting between a communications client and its host device |
WO2006010255A2 (en) * | 2004-07-30 | 2006-02-02 | Research In Motion Limited | Method and apparatus for provisioning a communications client on a host device |
US20060031390A1 (en) * | 2004-08-09 | 2006-02-09 | Tetsuro Motoyama | System and method to evaluate a service contract covering a monitored device by integrating device, user, and account information |
KR100582888B1 (en) * | 2004-09-22 | 2006-05-25 | 삼성전자주식회사 | Image forming apparatus and host computer capable of sharing terminology, and method for sharing terminology, and terminology sharing system |
US8010082B2 (en) | 2004-10-20 | 2011-08-30 | Seven Networks, Inc. | Flexible billing architecture |
US7441271B2 (en) | 2004-10-20 | 2008-10-21 | Seven Networks | Method and apparatus for intercepting events in a communication system |
US7706781B2 (en) | 2004-11-22 | 2010-04-27 | Seven Networks International Oy | Data security in a mobile e-mail service |
FI117152B (en) * | 2004-12-03 | 2006-06-30 | Seven Networks Internat Oy | E-mail service provisioning method for mobile terminal, involves using domain part and further parameters to generate new parameter set in list of setting parameter sets, if provisioning of e-mail service is successful |
EP1817883A4 (en) * | 2004-12-03 | 2011-12-21 | Seven Networks Internat Oy | Provisioning of e-mail settings for a mobile terminal |
US20060168216A1 (en) * | 2004-12-09 | 2006-07-27 | Alexander Wolf-Reber | Digital management system and method for managing access rights in such a management system |
US7469276B2 (en) * | 2004-12-27 | 2008-12-23 | International Business Machines Corporation | Service offering for the delivery of information with continuing improvement |
US8291063B2 (en) * | 2005-03-04 | 2012-10-16 | Netapp, Inc. | Method and apparatus for communicating between an agent and a remote management module in a processing system |
US7752633B1 (en) | 2005-03-14 | 2010-07-06 | Seven Networks, Inc. | Cross-platform event engine |
US20060235664A1 (en) * | 2005-04-15 | 2006-10-19 | Microsoft Corporation | Model-based capacity planning |
US7797147B2 (en) * | 2005-04-15 | 2010-09-14 | Microsoft Corporation | Model-based system monitoring |
US8489728B2 (en) * | 2005-04-15 | 2013-07-16 | Microsoft Corporation | Model-based system monitoring |
US7802144B2 (en) * | 2005-04-15 | 2010-09-21 | Microsoft Corporation | Model-based system monitoring |
US8438633B1 (en) | 2005-04-21 | 2013-05-07 | Seven Networks, Inc. | Flexible real-time inbox access |
US7796742B1 (en) | 2005-04-21 | 2010-09-14 | Seven Networks, Inc. | Systems and methods for simplified provisioning |
DE102005026887A1 (en) * | 2005-06-10 | 2006-12-14 | OCé PRINTING SYSTEMS GMBH | Method and device for generating a document |
WO2006136660A1 (en) | 2005-06-21 | 2006-12-28 | Seven Networks International Oy | Maintaining an ip connection in a mobile network |
US8549513B2 (en) | 2005-06-29 | 2013-10-01 | Microsoft Corporation | Model-based virtual system provisioning |
US20070006294A1 (en) * | 2005-06-30 | 2007-01-04 | Hunter G K | Secure flow control for a data flow in a computer and data flow in a computer network |
US7788352B2 (en) * | 2005-07-14 | 2010-08-31 | Yahoo! Inc. | System and method for servicing a user device |
US8112549B2 (en) * | 2005-07-14 | 2012-02-07 | Yahoo! Inc. | Alert mechanism for notifying multiple user devices sharing a connected-data-set |
US20070014243A1 (en) * | 2005-07-14 | 2007-01-18 | Yahoo! Inc. | System and method for provisioning a user device |
US8417782B2 (en) * | 2005-07-14 | 2013-04-09 | Yahoo! Inc. | Universal calendar event handling |
US7726556B2 (en) * | 2005-07-22 | 2010-06-01 | Xerox Corporation | Method for reconciliation of metered machine bills |
US8069166B2 (en) | 2005-08-01 | 2011-11-29 | Seven Networks, Inc. | Managing user-to-user contact with inferred presence information |
US20070067499A1 (en) * | 2005-09-08 | 2007-03-22 | Honeywell International Inc. | Systems and methods for satellite payload application development |
US20070067488A1 (en) * | 2005-09-16 | 2007-03-22 | Ebay Inc. | System and method for transferring data |
JP2007104160A (en) * | 2005-10-03 | 2007-04-19 | Sony Corp | Communication system, apparatus, method and program |
US8218566B2 (en) * | 2005-10-07 | 2012-07-10 | Hewlett-Packard Development Company, L.P. | Systems and methods for making serial ports of existing computers available over a network |
US20070094400A1 (en) * | 2005-10-20 | 2007-04-26 | Childress Rhonda L | Software installation within a federation |
US8417640B2 (en) * | 2005-10-31 | 2013-04-09 | Research In Motion Limited | Secure license key method and system |
US7941309B2 (en) | 2005-11-02 | 2011-05-10 | Microsoft Corporation | Modeling IT operations/policies |
US20070124411A1 (en) * | 2005-11-18 | 2007-05-31 | Dandekar Shree A | Centralized third party software and services upgrading and authorization |
US7845012B2 (en) * | 2005-11-18 | 2010-11-30 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method of intelligent agent identification for vehicle diagnostics |
JP2007156927A (en) * | 2005-12-06 | 2007-06-21 | Matsushita Electric Ind Co Ltd | Feeding device and receiving device |
US20070169083A1 (en) * | 2005-12-12 | 2007-07-19 | Penubolu Shyam P | Method for secure in-service software upgrades |
US7693936B2 (en) * | 2005-12-29 | 2010-04-06 | Microsoft Corporation | Messaging schema for services interaction on prepaid and subscription system |
US9390405B2 (en) | 2006-01-05 | 2016-07-12 | International Business Machines Corporation | System and method for providing profile enhancement using scheduling information |
US7769395B2 (en) | 2006-06-20 | 2010-08-03 | Seven Networks, Inc. | Location-based operations and messaging |
US20070238526A1 (en) * | 2006-03-31 | 2007-10-11 | Chandranmenon Girish P | Methods and devices for exchanging messages in an always-on network |
US8423408B1 (en) | 2006-04-17 | 2013-04-16 | Sprint Communications Company L.P. | Dynamic advertising content distribution and placement systems and methods |
US8060285B2 (en) * | 2006-04-26 | 2011-11-15 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method of intelligent agent management using an overseer agent for use in vehicle diagnostics |
US8645514B2 (en) * | 2006-05-08 | 2014-02-04 | Xerox Corporation | Method and system for collaborative self-organization of devices |
US7233879B1 (en) * | 2006-05-09 | 2007-06-19 | Toyota Technical Center Usa, Inc. | System and method of agent self-repair within an intelligent agent system |
US9001691B2 (en) | 2006-05-10 | 2015-04-07 | Applied Voice & Speech Technologies, Inc. | Messaging systems and methods |
US8914493B2 (en) * | 2008-03-10 | 2014-12-16 | Oracle International Corporation | Presence-based event driven architecture |
US10410237B1 (en) | 2006-06-26 | 2019-09-10 | Sprint Communications Company L.P. | Inventory management integrating subscriber and targeting data |
US7729825B2 (en) * | 2006-06-29 | 2010-06-01 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method of intelligent agent management using an agent interface for use in vehicle diagnostics |
US8442858B1 (en) | 2006-07-21 | 2013-05-14 | Sprint Communications Company L.P. | Subscriber data insertion into advertisement requests |
US8448163B2 (en) * | 2006-08-15 | 2013-05-21 | International Business Machines Corporation | Deploying J2EE web applications in an OSGI environment |
US20080091819A1 (en) * | 2006-10-11 | 2008-04-17 | Chongguan Yang | Ethernet Ping Watchdog |
US10664851B1 (en) | 2006-11-08 | 2020-05-26 | Sprint Communications Company, L.P. | Behavioral analysis engine for profiling wireless subscribers |
US10068261B1 (en) | 2006-11-09 | 2018-09-04 | Sprint Communications Company L.P. | In-flight campaign optimization |
US7773979B1 (en) * | 2006-11-14 | 2010-08-10 | Sprint Communication Company L.P. | System and method for integration of non-java device into a java-based mobile service oriented architecture |
US8127306B2 (en) * | 2006-12-18 | 2012-02-28 | Ricoh Company, Ltd. | Integrating eventing in a web service application of a multi-functional peripheral |
US8112766B2 (en) * | 2006-12-21 | 2012-02-07 | Ricoh Company, Ltd. | Multi-threaded device and facility manager |
US8321546B2 (en) * | 2007-01-10 | 2012-11-27 | Ricoh Company, Ltd. | Integrating discovery functionality within a device and facility manager |
US8326673B1 (en) * | 2006-12-28 | 2012-12-04 | Sprint Communications Company L.P. | Carrier data based product inventory management and marketing |
US8645148B2 (en) * | 2006-12-29 | 2014-02-04 | The Boeing Company | Methods and apparatus providing an E-enabled ground architecture |
US8739148B2 (en) * | 2007-02-09 | 2014-05-27 | Elster Electricity, Llc | Automated meter reading system |
US20080209400A1 (en) * | 2007-02-27 | 2008-08-28 | Kevin Christopher Parker | Approach for versioning of services and service contracts |
US8065675B2 (en) * | 2007-03-21 | 2011-11-22 | Yahoo! Inc. | In-page installer |
US20080270911A1 (en) * | 2007-04-24 | 2008-10-30 | Nehal Dantwala | System and method to develop a custom application for a multi-function peripheral (mfp) |
US8448193B2 (en) * | 2007-04-27 | 2013-05-21 | Ricoh Company, Ltd. | Image forming device, information processing method, and information processing program |
US8359636B2 (en) | 2007-05-10 | 2013-01-22 | Broadcom Corporation | Method and system for modeling options for opaque management data for a user and/or an owner |
US8132166B2 (en) * | 2007-05-14 | 2012-03-06 | Red Hat, Inc. | Methods and systems for provisioning software |
US8805425B2 (en) | 2007-06-01 | 2014-08-12 | Seven Networks, Inc. | Integrated messaging |
US8693494B2 (en) | 2007-06-01 | 2014-04-08 | Seven Networks, Inc. | Polling |
US8239876B2 (en) * | 2007-06-12 | 2012-08-07 | Ricoh Company, Ltd. | Efficient web services application status self-control system on image-forming device |
US8561058B2 (en) | 2007-06-20 | 2013-10-15 | Red Hat, Inc. | Methods and systems for dynamically generating installation configuration files for software |
US8464247B2 (en) | 2007-06-21 | 2013-06-11 | Red Hat, Inc. | Methods and systems for dynamically generating installation configuration files for software |
US7809525B2 (en) * | 2007-07-31 | 2010-10-05 | International Business Machines Corporation | Automatic configuration of robotic transaction playback through analysis of previously collected traffic patterns |
US8832679B2 (en) * | 2007-08-28 | 2014-09-09 | Red Hat, Inc. | Registration process for determining compatibility with 32-bit or 64-bit software |
US9652210B2 (en) | 2007-08-28 | 2017-05-16 | Red Hat, Inc. | Provisioning a device with multiple bit-size versions of a software component |
US8423955B2 (en) * | 2007-08-31 | 2013-04-16 | Red Hat, Inc. | Method and apparatus for supporting multiple business process languages in BPM |
US9058571B2 (en) * | 2007-08-31 | 2015-06-16 | Red Hat, Inc. | Tool for automated transformation of a business process definition into a web application package |
US8825713B2 (en) | 2007-09-12 | 2014-09-02 | Red Hat, Inc. | BPM system portable across databases |
US8914804B2 (en) * | 2007-09-12 | 2014-12-16 | Red Hat, Inc. | Handling queues associated with web services of business processes |
JP5211602B2 (en) * | 2007-09-14 | 2013-06-12 | 株式会社リコー | Network device, service providing method, and service providing program |
US8453164B2 (en) * | 2007-09-27 | 2013-05-28 | Ricoh Company, Ltd. | Method and apparatus for reduction of event notification within a web service application of a multi-functional peripheral |
US8326979B2 (en) * | 2007-11-22 | 2012-12-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and device for agile computing |
US8954952B2 (en) * | 2007-11-30 | 2015-02-10 | Red Hat, Inc. | Portable business process deployment model across different application servers |
US9300723B2 (en) | 2007-12-07 | 2016-03-29 | Display Technologies, Llc | Enabling social interactive wireless communications |
US8671195B2 (en) * | 2007-12-07 | 2014-03-11 | Leigh Rothschild | Digital media communication protocol |
US8364181B2 (en) | 2007-12-10 | 2013-01-29 | Seven Networks, Inc. | Electronic-mail filtering for mobile devices |
US9002828B2 (en) | 2007-12-13 | 2015-04-07 | Seven Networks, Inc. | Predictive content delivery |
US8793305B2 (en) | 2007-12-13 | 2014-07-29 | Seven Networks, Inc. | Content delivery to a mobile device from a content service |
US8107921B2 (en) | 2008-01-11 | 2012-01-31 | Seven Networks, Inc. | Mobile virtual network operator |
KR101453956B1 (en) * | 2008-01-14 | 2014-10-24 | 삼성전자주식회사 | Device using embedded browser agent and method thereof |
US9654515B2 (en) | 2008-01-23 | 2017-05-16 | Oracle International Corporation | Service oriented architecture-based SCIM platform |
US8862657B2 (en) | 2008-01-25 | 2014-10-14 | Seven Networks, Inc. | Policy based content service |
US20090193338A1 (en) | 2008-01-28 | 2009-07-30 | Trevor Fiatal | Reducing network and battery consumption during content delivery and playback |
JP5127490B2 (en) * | 2008-02-07 | 2013-01-23 | キヤノン株式会社 | Image forming apparatus, remote update verification method and program for image forming apparatus |
CN101539877A (en) * | 2008-03-17 | 2009-09-23 | 鸿富锦精密工业(深圳)有限公司 | Embedded device testing system and testing method thereof |
US8719792B2 (en) * | 2008-03-24 | 2014-05-06 | International Business Machines Corporation | Correcting job control language job errors |
US7769596B1 (en) * | 2008-04-16 | 2010-08-03 | Sprint Communications Company, L.P. | Intelligent service traffic management |
US8347319B2 (en) * | 2008-05-22 | 2013-01-01 | Microsoft Corporation | Device display object infrastructure |
US8713177B2 (en) | 2008-05-30 | 2014-04-29 | Red Hat, Inc. | Remote management of networked systems using secure modular platform |
US8787947B2 (en) | 2008-06-18 | 2014-07-22 | Seven Networks, Inc. | Application discovery on mobile devices |
US8078158B2 (en) | 2008-06-26 | 2011-12-13 | Seven Networks, Inc. | Provisioning applications for a mobile device |
US9100297B2 (en) * | 2008-08-20 | 2015-08-04 | Red Hat, Inc. | Registering new machines in a software provisioning environment |
US8930512B2 (en) * | 2008-08-21 | 2015-01-06 | Red Hat, Inc. | Providing remote software provisioning to machines |
US10819530B2 (en) | 2008-08-21 | 2020-10-27 | Oracle International Corporation | Charging enabler |
US9477570B2 (en) | 2008-08-26 | 2016-10-25 | Red Hat, Inc. | Monitoring software provisioning |
US8838827B2 (en) | 2008-08-26 | 2014-09-16 | Red Hat, Inc. | Locating a provisioning server |
US20100058327A1 (en) * | 2008-08-28 | 2010-03-04 | Dehaan Michael Paul | Methods and systems for providing customized actions related to software provisioning |
US8413115B1 (en) * | 2008-08-28 | 2013-04-02 | Raytheon Company | Specifying integration points of a system-of-systems |
US8793683B2 (en) | 2008-08-28 | 2014-07-29 | Red Hat, Inc. | Importing software distributions in a software provisioning environment |
US9111118B2 (en) | 2008-08-29 | 2015-08-18 | Red Hat, Inc. | Managing access in a software provisioning environment |
US9021470B2 (en) | 2008-08-29 | 2015-04-28 | Red Hat, Inc. | Software provisioning in multiple network configuration environment |
US9164749B2 (en) | 2008-08-29 | 2015-10-20 | Red Hat, Inc. | Differential software provisioning on virtual machines having different configurations |
US8103776B2 (en) * | 2008-08-29 | 2012-01-24 | Red Hat, Inc. | Systems and methods for storage allocation in provisioning of virtual machines |
US9952845B2 (en) * | 2008-08-29 | 2018-04-24 | Red Hat, Inc. | Provisioning machines having virtual storage resources |
US8244836B2 (en) * | 2008-08-29 | 2012-08-14 | Red Hat, Inc. | Methods and systems for assigning provisioning servers in a software provisioning environment |
US8527578B2 (en) * | 2008-08-29 | 2013-09-03 | Red Hat, Inc. | Methods and systems for centrally managing multiple provisioning servers |
US8041671B2 (en) * | 2008-09-02 | 2011-10-18 | International Business Machines Corporation | Method and system for providing a homogeneous view of a distributed common information model (CIM) within a heterogeneous virtual system environment |
US8612968B2 (en) | 2008-09-26 | 2013-12-17 | Red Hat, Inc. | Methods and systems for managing network connections associated with provisioning objects in a software provisioning environment |
US8326972B2 (en) * | 2008-09-26 | 2012-12-04 | Red Hat, Inc. | Methods and systems for managing network connections in a software provisioning environment |
US8909759B2 (en) | 2008-10-10 | 2014-12-09 | Seven Networks, Inc. | Bandwidth measurement |
US8914481B2 (en) * | 2008-10-24 | 2014-12-16 | Novell, Inc. | Spontaneous resource management |
US8661129B2 (en) * | 2008-11-05 | 2014-02-25 | Xerox Corporation | System and method for decentralized job scheduling and distributed execution in a network of multifunction devices |
WO2010058241A1 (en) * | 2008-11-24 | 2010-05-27 | Abb Research Ltd. | A system and a method for providing control and automation services |
US8898305B2 (en) * | 2008-11-25 | 2014-11-25 | Red Hat, Inc. | Providing power management services in a software provisioning environment |
US9124497B2 (en) * | 2008-11-26 | 2015-09-01 | Red Hat, Inc. | Supporting multiple name servers in a software provisioning environment |
US8832256B2 (en) * | 2008-11-28 | 2014-09-09 | Red Hat, Inc. | Providing a rescue Environment in a software provisioning environment |
US8782204B2 (en) | 2008-11-28 | 2014-07-15 | Red Hat, Inc. | Monitoring hardware resources in a software provisioning environment |
US8775578B2 (en) * | 2008-11-28 | 2014-07-08 | Red Hat, Inc. | Providing hardware updates in a software environment |
US8327338B2 (en) * | 2009-01-15 | 2012-12-04 | International Business Machines Corporation | Overlay identification of data processing target structure |
US8402123B2 (en) | 2009-02-24 | 2013-03-19 | Red Hat, Inc. | Systems and methods for inventorying un-provisioned systems in a software provisioning environment |
US9727320B2 (en) | 2009-02-25 | 2017-08-08 | Red Hat, Inc. | Configuration of provisioning servers in virtualized systems |
US8892700B2 (en) * | 2009-02-26 | 2014-11-18 | Red Hat, Inc. | Collecting and altering firmware configurations of target machines in a software provisioning environment |
US8413259B2 (en) * | 2009-02-26 | 2013-04-02 | Red Hat, Inc. | Methods and systems for secure gated file deployment associated with provisioning |
US8572587B2 (en) | 2009-02-27 | 2013-10-29 | Red Hat, Inc. | Systems and methods for providing a library of virtual images in a software provisioning environment |
US9411570B2 (en) * | 2009-02-27 | 2016-08-09 | Red Hat, Inc. | Integrating software provisioning and configuration management |
US8135989B2 (en) * | 2009-02-27 | 2012-03-13 | Red Hat, Inc. | Systems and methods for interrogating diagnostic target using remotely loaded image |
US9940208B2 (en) | 2009-02-27 | 2018-04-10 | Red Hat, Inc. | Generating reverse installation file for network restoration |
US8667096B2 (en) | 2009-02-27 | 2014-03-04 | Red Hat, Inc. | Automatically generating system restoration order for network recovery |
US8640122B2 (en) * | 2009-02-27 | 2014-01-28 | Red Hat, Inc. | Systems and methods for abstracting software content management in a software provisioning environment |
US8990368B2 (en) | 2009-02-27 | 2015-03-24 | Red Hat, Inc. | Discovery of network software relationships |
US9558195B2 (en) * | 2009-02-27 | 2017-01-31 | Red Hat, Inc. | Depopulation of user data from network |
US8417926B2 (en) | 2009-03-31 | 2013-04-09 | Red Hat, Inc. | Systems and methods for providing configuration management services from a provisioning server |
US8281312B2 (en) * | 2009-05-18 | 2012-10-02 | Xerox Corporation | System and method providing for resource exclusivity guarantees in a network of multifunctional devices with preemptive scheduling capabilities |
US9250672B2 (en) | 2009-05-27 | 2016-02-02 | Red Hat, Inc. | Cloning target machines in a software provisioning environment |
US9134987B2 (en) | 2009-05-29 | 2015-09-15 | Red Hat, Inc. | Retiring target machines by a provisioning server |
US8879547B2 (en) * | 2009-06-02 | 2014-11-04 | Oracle International Corporation | Telephony application services |
US9047155B2 (en) * | 2009-06-30 | 2015-06-02 | Red Hat, Inc. | Message-based installation management using message bus |
US20110131135A1 (en) * | 2009-08-25 | 2011-06-02 | Mark Carlson | Online warranty history storage access |
US8478812B2 (en) * | 2009-09-29 | 2013-07-02 | Core Wireless S.A.R.L. | Method and apparatus for providing device compatibility information |
US20110125913A1 (en) * | 2009-11-20 | 2011-05-26 | Oracle International Corporation | Interface for Communication Session Continuation |
US9269060B2 (en) | 2009-11-20 | 2016-02-23 | Oracle International Corporation | Methods and systems for generating metadata describing dependencies for composable elements |
US10133485B2 (en) * | 2009-11-30 | 2018-11-20 | Red Hat, Inc. | Integrating storage resources from storage area network in machine provisioning platform |
US8825819B2 (en) * | 2009-11-30 | 2014-09-02 | Red Hat, Inc. | Mounting specified storage resources from storage area network in machine provisioning platform |
US8264702B2 (en) * | 2009-12-04 | 2012-09-11 | Xerox Corporation | Method and system for determining root cause of problems in members of a fleet of multi-function devices |
US9509790B2 (en) | 2009-12-16 | 2016-11-29 | Oracle International Corporation | Global presence |
US9503407B2 (en) | 2009-12-16 | 2016-11-22 | Oracle International Corporation | Message forwarding |
US20110185349A1 (en) * | 2010-01-28 | 2011-07-28 | Empower Electronics, Inc. | Lamp ballast configured to operate in a self-forming network |
US9043731B2 (en) | 2010-03-30 | 2015-05-26 | Seven Networks, Inc. | 3D mobile user interface with configurable workspace management |
US8448023B2 (en) | 2010-04-30 | 2013-05-21 | Honeywell International Inc. | Approach for data integrity in an embedded device environment |
CN101945005B (en) * | 2010-05-19 | 2013-12-04 | 奈杰信息科技(上海)有限公司 | Wireless radio-frequency identification system implementation platform |
US8607200B2 (en) * | 2010-06-01 | 2013-12-10 | Red Hat, Inc. | Executing a web application at different stages in the application life cycle |
US20120036209A1 (en) * | 2010-07-08 | 2012-02-09 | National Field, LLC | Hierarchical social network system |
JP5482530B2 (en) * | 2010-07-16 | 2014-05-07 | 株式会社リコー | Device management system, device management apparatus, and device management method |
PL3407673T3 (en) | 2010-07-26 | 2020-05-18 | Seven Networks, Llc | Mobile network traffic coordination across multiple applications |
US8838783B2 (en) | 2010-07-26 | 2014-09-16 | Seven Networks, Inc. | Distributed caching for resource and mobile network traffic management |
GB2495877B (en) | 2010-07-26 | 2013-10-02 | Seven Networks Inc | Distributed implementation of dynamic wireless traffic policy |
CA2857458A1 (en) | 2010-07-26 | 2012-02-09 | Michael Luna | Mobile application traffic optimization |
US8565963B2 (en) | 2010-09-23 | 2013-10-22 | Xerox Corporation | Method and system for remotely tracking vehicle-centric data and user-centric data |
JP5811708B2 (en) * | 2010-09-30 | 2015-11-11 | ブラザー工業株式会社 | Image processing system, image processing method, relay device, and relay program. |
JP5803452B2 (en) | 2010-09-30 | 2015-11-04 | ブラザー工業株式会社 | Image processing system, image processing method, relay device, and relay program |
US9330196B2 (en) | 2010-11-01 | 2016-05-03 | Seven Networks, Llc | Wireless traffic management system cache optimization using http headers |
US8484314B2 (en) | 2010-11-01 | 2013-07-09 | Seven Networks, Inc. | Distributed caching in a wireless network of content delivered for a mobile application over a long-held request |
US9060032B2 (en) | 2010-11-01 | 2015-06-16 | Seven Networks, Inc. | Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic |
US8204953B2 (en) | 2010-11-01 | 2012-06-19 | Seven Networks, Inc. | Distributed system for cache defeat detection and caching of content addressed by identifiers intended to defeat cache |
CN103620576B (en) | 2010-11-01 | 2016-11-09 | 七网络公司 | It is applicable to the caching of mobile applications behavior and network condition |
US8843153B2 (en) | 2010-11-01 | 2014-09-23 | Seven Networks, Inc. | Mobile traffic categorization and policy for network use optimization while preserving user experience |
US8166164B1 (en) | 2010-11-01 | 2012-04-24 | Seven Networks, Inc. | Application and network-based long poll request detection and cacheability assessment therefor |
WO2012060995A2 (en) | 2010-11-01 | 2012-05-10 | Michael Luna | Distributed caching in a wireless network of content delivered for a mobile application over a long-held request |
WO2012061430A2 (en) | 2010-11-01 | 2012-05-10 | Michael Luna | Distributed management of keep-alive message signaling for mobile network resource conservation and optimization |
US9674379B2 (en) * | 2010-11-04 | 2017-06-06 | Brother Kogyo Kabushiki Kaisha | Relay apparatus, communication apparatus, and control methods of relay apparatus |
JP5598269B2 (en) | 2010-11-08 | 2014-10-01 | ブラザー工業株式会社 | COMMUNICATION DEVICE, COMMUNICATION DEVICE CONTROL PROGRAM, AND RELAY DEVICE |
JP5906677B2 (en) | 2010-11-08 | 2016-04-20 | ブラザー工業株式会社 | COMMUNICATION SYSTEM, COMMUNICATION DEVICE, RELAY DEVICE CONTROL PROGRAM, AND RELAY DEVICE CONTROL METHOD |
EP3422775A1 (en) | 2010-11-22 | 2019-01-02 | Seven Networks, LLC | Optimization of resource polling intervals to satisfy mobile device requests |
WO2012071283A1 (en) | 2010-11-22 | 2012-05-31 | Michael Luna | Aligning data transfer to optimize connections established for transmission over a wireless network |
US9325662B2 (en) | 2011-01-07 | 2016-04-26 | Seven Networks, Llc | System and method for reduction of mobile network traffic used for domain name system (DNS) queries |
US9207928B2 (en) * | 2011-01-17 | 2015-12-08 | Bladelogic, Inc. | Computer-readable medium, apparatus, and methods of automatic capability installation |
US8713372B2 (en) | 2011-03-31 | 2014-04-29 | Xerox Corporation | Method and system for updating device management application meter read logic |
US8554692B2 (en) | 2011-03-31 | 2013-10-08 | Xerox Corporation | System and method to validate consumables installed in a printing system |
WO2012145533A2 (en) | 2011-04-19 | 2012-10-26 | Seven Networks, Inc. | Shared resource and virtual resource management in a networked environment |
EP2556441B8 (en) | 2011-04-27 | 2015-11-25 | Seven Networks, LLC | System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief |
EP2702500B1 (en) | 2011-04-27 | 2017-07-19 | Seven Networks, LLC | Detecting and preserving state for satisfying application requests in a distributed proxy and cache system |
SG10201506089VA (en) * | 2011-06-29 | 2015-09-29 | Freestyle Technology Pty Ltd | Systems, methods, and/or apparatus for enabling communication between devices using different communication protocols |
WO2013015995A1 (en) | 2011-07-27 | 2013-01-31 | Seven Networks, Inc. | Automatic generation and distribution of policy information regarding malicious mobile traffic in a wireless network |
WO2012119405A1 (en) * | 2011-08-22 | 2012-09-13 | 华为技术有限公司 | Method for registering cim provider in cim system and cimom |
EP2587397A1 (en) * | 2011-10-28 | 2013-05-01 | Telefonaktiebolaget LM Ericsson (publ) | Browser device access proxy |
WO2013086225A1 (en) | 2011-12-06 | 2013-06-13 | Seven Networks, Inc. | A mobile device and method to utilize the failover mechanisms for fault tolerance provided for mobile traffic management and network/device resource conservation |
US8918503B2 (en) | 2011-12-06 | 2014-12-23 | Seven Networks, Inc. | Optimization of mobile traffic directed to private networks and operator configurability thereof |
GB2498064A (en) | 2011-12-07 | 2013-07-03 | Seven Networks Inc | Distributed content caching mechanism using a network operator proxy |
WO2013086447A1 (en) | 2011-12-07 | 2013-06-13 | Seven Networks, Inc. | Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol |
WO2013090834A1 (en) | 2011-12-14 | 2013-06-20 | Seven Networks, Inc. | Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic |
US8861354B2 (en) | 2011-12-14 | 2014-10-14 | Seven Networks, Inc. | Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization |
US9021021B2 (en) | 2011-12-14 | 2015-04-28 | Seven Networks, Inc. | Mobile network reporting and usage analytics system and method aggregated using a distributed traffic optimization system |
GB2499306B (en) | 2012-01-05 | 2014-10-22 | Seven Networks Inc | Managing user interaction with an application on a mobile device |
US9203864B2 (en) | 2012-02-02 | 2015-12-01 | Seven Networks, Llc | Dynamic categorization of applications for network access in a mobile network |
US9326189B2 (en) | 2012-02-03 | 2016-04-26 | Seven Networks, Llc | User as an end point for profiling and optimizing the delivery of content and data in a wireless network |
US8812695B2 (en) | 2012-04-09 | 2014-08-19 | Seven Networks, Inc. | Method and system for management of a virtual network connection without heartbeat messages |
WO2013155208A1 (en) | 2012-04-10 | 2013-10-17 | Seven Networks, Inc. | Intelligent customer service/call center services enhanced using real-time and historical mobile application and traffic-related statistics collected by a distributed caching system in a mobile network |
EP2842044A4 (en) * | 2012-04-26 | 2015-10-07 | Hewlett Packard Development Co | Platform runtime abstraction |
EP2677719A1 (en) * | 2012-06-19 | 2013-12-25 | Alcatel Lucent | A method for interfacing a communication terminal with networked objects |
WO2014011216A1 (en) | 2012-07-13 | 2014-01-16 | Seven Networks, Inc. | Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications |
US9170845B2 (en) * | 2012-08-28 | 2015-10-27 | Vce Company, Llc | Deployed application factory reset |
CN110251839A (en) | 2012-09-10 | 2019-09-20 | 真皮光子公司 | The medical device of dermatology |
US9161258B2 (en) | 2012-10-24 | 2015-10-13 | Seven Networks, Llc | Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion |
US20140177497A1 (en) | 2012-12-20 | 2014-06-26 | Seven Networks, Inc. | Management of mobile device radio state promotion and demotion |
WO2014100754A1 (en) * | 2012-12-20 | 2014-06-26 | Robert Hunter | Methods and systems for a power firewall |
US9241314B2 (en) | 2013-01-23 | 2016-01-19 | Seven Networks, Llc | Mobile device with application or context aware fast dormancy |
US8874761B2 (en) | 2013-01-25 | 2014-10-28 | Seven Networks, Inc. | Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols |
US8750123B1 (en) | 2013-03-11 | 2014-06-10 | Seven Networks, Inc. | Mobile device equipped with mobile network congestion recognition to make intelligent decisions regarding connecting to an operator network |
US9747554B2 (en) | 2013-05-24 | 2017-08-29 | Qualcomm Incorporated | Learning device with continuous configuration capability |
US20140351182A1 (en) * | 2013-05-24 | 2014-11-27 | Qualcomm Incorporated | Modifying Learning Capabilities of Learning Devices |
US9679491B2 (en) * | 2013-05-24 | 2017-06-13 | Qualcomm Incorporated | Signaling device for teaching learning devices |
US10405173B1 (en) | 2013-06-05 | 2019-09-03 | Sprint Communications Company L.P. | Method and systems of collecting and segmenting device sensor data while in transit via a network |
US9578382B2 (en) * | 2013-06-26 | 2017-02-21 | Google Inc. | Subscribable channel collections |
US9065765B2 (en) | 2013-07-22 | 2015-06-23 | Seven Networks, Inc. | Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network |
WO2015013936A1 (en) * | 2013-07-31 | 2015-02-05 | 华为技术有限公司 | Associated plugin management method, device and system |
US9319379B1 (en) | 2013-08-01 | 2016-04-19 | Sprint Communications Company L.P. | Methods and systems of generating a unique mobile device identifier |
USD747800S1 (en) | 2013-09-10 | 2016-01-19 | Dermal Photonics Corporation | Dermatological medical device |
US9374335B2 (en) | 2013-09-11 | 2016-06-21 | Sprint Communications Company L.P. | System and method for distributing messages to particular mobile devices |
US9590938B1 (en) | 2013-09-11 | 2017-03-07 | Sprint Communications Company L.P. | System and method for identifying a mobile device with near real time visualization to action |
US9922347B1 (en) | 2013-11-27 | 2018-03-20 | Sprint Communications Company L.P. | Ad management using ads cached on a mobile electronic device |
US9734515B1 (en) | 2014-01-09 | 2017-08-15 | Sprint Communications Company L.P. | Ad management using ads cached on a mobile electronic device |
US9836771B1 (en) | 2014-01-21 | 2017-12-05 | Sprint Communications Company L.P. | Client mediation and integration to advertisement gateway |
US10055757B1 (en) | 2014-01-21 | 2018-08-21 | Sprint Communications Company L.P. | IP address hashing in advertisement gateway |
US10013707B1 (en) | 2014-01-21 | 2018-07-03 | Sprint Communications Company L.P. | Address modification for advertisement mediation |
US9984395B1 (en) | 2014-01-21 | 2018-05-29 | Sprint Communications Company L.P. | Advertisement mediation of supply-demand communications |
US9160724B2 (en) | 2014-01-27 | 2015-10-13 | Canon Kabushiki Kaisha | Devices, systems, and methods for device provisioning |
US20150254651A1 (en) * | 2014-03-05 | 2015-09-10 | Vodafone Ip Licensing Limited | Optimizing financial transactions network flow |
US20150278772A1 (en) * | 2014-03-27 | 2015-10-01 | Roland Eckl | Supporting a Post-Installation Deployment of Components of Equipment |
US9508090B1 (en) | 2014-09-24 | 2016-11-29 | Sprint Communications Company L.P. | End user participation in mobile advertisement |
US9818133B1 (en) | 2014-10-20 | 2017-11-14 | Sprint Communications Company L.P. | Method for consumer profile consolidation using mobile network identification |
US10079797B2 (en) | 2014-10-29 | 2018-09-18 | Vmware, Inc. | Methods, systems and apparatus to remotely start a virtual machine |
US9467545B1 (en) * | 2014-11-10 | 2016-10-11 | GoneBusy, Inc. | Specifically programmed computer-implemented engine systems for real-time on-demand discovery of available time slots across programmed schedule objects and methods of use thereof |
US10606859B2 (en) | 2014-11-24 | 2020-03-31 | Asana, Inc. | Client side system and method for search backed calendar user interface |
US11172273B2 (en) | 2015-08-10 | 2021-11-09 | Delta Energy & Communications, Inc. | Transformer monitor, communications and data collection device |
WO2017027682A1 (en) | 2015-08-11 | 2017-02-16 | Delta Energy & Communications, Inc. | Enhanced reality system for visualizing, evaluating, diagnosing, optimizing and servicing smart grids and incorporated components |
CN107921799B (en) * | 2015-08-18 | 2020-06-23 | 惠普发展公司,有限责任合伙企业 | Printer arrangement for use with printed materials |
WO2017041093A1 (en) | 2015-09-03 | 2017-03-09 | Delta Energy & Communications, Inc. | System and method for determination and remediation of energy diversion in a smart grid network |
US10637678B2 (en) | 2015-09-24 | 2020-04-28 | Intel Corporation | Facilitating portable, reusable, and shareable internet of things (IoT)-based services and resources |
US10904083B2 (en) | 2015-09-25 | 2021-01-26 | Intel Corporation | IOT service modeling with layered abstraction for reusability of applications and resources |
MX2018004053A (en) | 2015-10-02 | 2018-12-17 | Delta Energy & Communications Inc | Supplemental and alternative digital data delivery and receipt mesh network realized through the placement of enhanced transformer mounted monitoring devices. |
US10476597B2 (en) | 2015-10-22 | 2019-11-12 | Delta Energy & Communications, Inc. | Data transfer facilitation across a distributed mesh network using light and optical based technology |
US9961572B2 (en) | 2015-10-22 | 2018-05-01 | Delta Energy & Communications, Inc. | Augmentation, expansion and self-healing of a geographically distributed mesh network using unmanned aerial vehicle (UAV) technology |
US9866637B2 (en) | 2016-01-11 | 2018-01-09 | Equinix, Inc. | Distributed edge processing of internet of things device data in co-location facilities |
AU2017207319B2 (en) | 2016-01-11 | 2018-05-24 | Equinix, Inc. | Architecture for data center infrastructure monitoring |
MX2018010238A (en) | 2016-02-24 | 2019-06-06 | Delta Energy & Communications Inc | Distributed 802.11s mesh network using transformer module hardware for the capture and transmission of data. |
JP6711110B2 (en) * | 2016-04-26 | 2020-06-17 | 富士ゼロックス株式会社 | Image forming device |
US10652633B2 (en) | 2016-08-15 | 2020-05-12 | Delta Energy & Communications, Inc. | Integrated solutions of Internet of Things and smart grid network pertaining to communication, data and asset serialization, and data modeling algorithms |
CA2943131C (en) * | 2016-09-26 | 2020-01-14 | The Toronto-Dominion Bank | Automatic provisioning of services to network-connected devices |
US9654599B1 (en) | 2016-10-06 | 2017-05-16 | Brian Wheeler | Automatic concurrent installation refresh of a large number of distributed heterogeneous reconfigurable computing devices upon a booting event |
US10425242B2 (en) | 2016-10-14 | 2019-09-24 | Microsoft Technology Licensing, Llc | IoT provisioning service |
US10798216B2 (en) | 2016-10-15 | 2020-10-06 | Microsoft Technology Licensing, Llc | Automatic provisioning of IoT devices |
TWI659635B (en) * | 2016-11-01 | 2019-05-11 | 財團法人資訊工業策進會 | System and method for service matching of instant message software |
US10637868B2 (en) * | 2016-11-16 | 2020-04-28 | The Boeing Company | Common authorization management service |
US10904173B2 (en) | 2017-06-09 | 2021-01-26 | Equinix, Inc. | Near real-time messaging service for data center infrastructure monitoring data |
CN107241274B (en) * | 2017-06-29 | 2023-04-25 | 厦门锐谷通信设备有限公司 | Internet of things integrated service wireless router and system |
JP7098892B2 (en) * | 2017-08-18 | 2022-07-12 | セイコーエプソン株式会社 | Browsing control server and browsing control method |
US10819556B1 (en) | 2017-10-16 | 2020-10-27 | Equinix, Inc. | Data center agent for data center infrastructure monitoring data access and translation |
US20190245935A1 (en) * | 2018-02-07 | 2019-08-08 | The Nielsen Company (Us), Llc | Methods and apparatus to create opportunistic network of iot collaboration agents to collect data from mobile devices |
US10613735B1 (en) | 2018-04-04 | 2020-04-07 | Asana, Inc. | Systems and methods for preloading an amount of content based on user scrolling |
US11405357B2 (en) * | 2018-04-27 | 2022-08-02 | Cloudflare, Inc. | Protecting internet of things (IoT) devices at the network level |
CN108804788B (en) * | 2018-05-25 | 2022-06-17 | 浙江工业大学 | Web service evolution method based on data cell model |
US11496356B2 (en) * | 2018-08-13 | 2022-11-08 | Microsoft Technology Licensing, Llc | Device lifecycle management via a central identity service |
US11132638B2 (en) * | 2018-08-31 | 2021-09-28 | Oracle International Corporation | Product predictions and shipments using IoT connected devices |
US10956845B1 (en) * | 2018-12-06 | 2021-03-23 | Asana, Inc. | Systems and methods for generating prioritization models and predicting workflow prioritizations |
US11568366B1 (en) | 2018-12-18 | 2023-01-31 | Asana, Inc. | Systems and methods for generating status requests for units of work |
US11782737B2 (en) | 2019-01-08 | 2023-10-10 | Asana, Inc. | Systems and methods for determining and presenting a graphical user interface including template metrics |
US10764072B2 (en) | 2019-01-23 | 2020-09-01 | Verizon Patent And Licensing Inc. | Systems and methods for configuring a private multi-access edge computing environment |
US10938826B2 (en) * | 2019-05-24 | 2021-03-02 | International Business Machines Corporation | Intelligent device security |
CN110751303B (en) * | 2019-10-30 | 2023-04-25 | 南宁市指搜信息技术有限公司 | Intelligent device full life cycle monitoring query system based on cloud computing |
US11341445B1 (en) | 2019-11-14 | 2022-05-24 | Asana, Inc. | Systems and methods to measure and visualize threshold of user workload |
US11455601B1 (en) | 2020-06-29 | 2022-09-27 | Asana, Inc. | Systems and methods to measure and visualize workload for completing individual units of work |
US11733988B2 (en) * | 2021-01-20 | 2023-08-22 | Microsoft Technology Licensing, Llc | Application deployment for applications offered by multiple deployment sources |
US12093859B1 (en) | 2021-06-02 | 2024-09-17 | Asana, Inc. | Systems and methods to measure and visualize workload for individual users |
US20230222471A1 (en) * | 2022-01-07 | 2023-07-13 | Dell Products L.P. | System and method for subscription based solution implementation |
Citations (78)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4959860A (en) * | 1989-02-07 | 1990-09-25 | Compaq Computer Corporation | Power-on password functions for computer system |
US5220674A (en) * | 1987-07-17 | 1993-06-15 | Digital Equipment Corporation | Local area print server for requesting and storing required resource data and forwarding printer status message to selected destination |
US5305199A (en) * | 1992-10-28 | 1994-04-19 | Xerox Corporation | Consumable supplies monitoring/ordering system for reprographic equipment |
US5384620A (en) * | 1992-08-31 | 1995-01-24 | Xerox Corporation | Scheduling page parameter variations for discrete job elements |
US5574848A (en) * | 1993-08-24 | 1996-11-12 | National Semiconductor Corporation | Can interface selecting one of two distinct fault recovery method after counting a predetermined number of recessive bits or good can frames |
US5612884A (en) * | 1989-03-23 | 1997-03-18 | F.M.E. Corporation | Remote meter operation |
US5887216A (en) * | 1997-03-19 | 1999-03-23 | Ricoh Company, Ltd. | Method and system to diagnos a business office device based on operating parameters set by a user |
US5893008A (en) * | 1998-04-06 | 1999-04-06 | Xerox Corporation | Photoreceptor parking deletion detector |
US6167448A (en) * | 1998-06-11 | 2000-12-26 | Compaq Computer Corporation | Management event notification system using event notification messages written using a markup language |
US6233409B1 (en) * | 1999-10-01 | 2001-05-15 | Hewlett-Packard Company | Redundant reorder prevention for replaceable printer components |
US6317748B1 (en) * | 1998-05-08 | 2001-11-13 | Microsoft Corporation | Management information to object mapping and correlator |
US20020049839A1 (en) * | 2000-10-24 | 2002-04-25 | Tetsuya Miida | System, method, apparatus and program for collecting and providing information |
US20020069112A1 (en) * | 2000-12-04 | 2002-06-06 | International Business Machines Corporation | Service alert agent for a computer system |
US20020072998A1 (en) * | 2000-12-08 | 2002-06-13 | Haines Robert E. | Consumable order-assistance system for computer peripheral devices within a centralized network environment and method for replenishing consumable components |
US6427168B1 (en) * | 1999-07-26 | 2002-07-30 | Microsoft Corporation | Architecture for system monitoring using high-performance providers |
US20020113989A1 (en) * | 2001-01-11 | 2002-08-22 | Ferlitsch Andrew Rodney | Methods and systems for print-processor modified printing |
US20020133581A1 (en) * | 2001-03-16 | 2002-09-19 | Embrace Networks, Inc. | System and method to manage network-enabled embedded devices operating under various protocols |
US20020143924A1 (en) * | 1999-12-27 | 2002-10-03 | Fujitsu Limited | Printer, control method, and computer readable recording medium which stores printer control program |
US20020140966A1 (en) * | 2001-04-02 | 2002-10-03 | Meade William K. | Systems and methods for managing software updates for printing systems |
US20020143819A1 (en) * | 2000-05-31 | 2002-10-03 | Cheng Han | Web service syndication system |
US6463078B1 (en) * | 1998-07-22 | 2002-10-08 | Microsoft Corporation | Method for switching protocols transparently in multi-user applications |
US20020147611A1 (en) * | 2000-05-22 | 2002-10-10 | Greene William S. | Method and system for realizing a rendezvous service in a management operations center implemented in a global ecosystem of interrelated services |
US20020165805A1 (en) * | 2001-05-02 | 2002-11-07 | International Business Machines Corporation | Method and system for managing parts requirements processes |
US20020184300A1 (en) * | 2001-06-05 | 2002-12-05 | Schmeling Garth F. | Device management system and method |
US20030004784A1 (en) * | 2001-06-29 | 2003-01-02 | International Business Machines Corporation | Methods and apparatus for automatic replenishment of inventory using embedded sensor system and electronic marketplace |
US20030004832A1 (en) * | 2001-06-13 | 2003-01-02 | Haruo Kamimoto | Consumable-supplies purchase order method and system, customer equipment, and purchase order processing apparatus |
US20030005091A1 (en) * | 2001-06-29 | 2003-01-02 | International Business Machines Corporation | Method and apparatus for improved monitoring in a distributed computing system |
US20030014650A1 (en) * | 2001-07-06 | 2003-01-16 | Michael Freed | Load balancing secure sockets layer accelerator |
US20030033445A1 (en) * | 2001-08-08 | 2003-02-13 | Simpson Shell S. | Imaging extension |
US20030051041A1 (en) * | 2001-08-07 | 2003-03-13 | Tatara Systems, Inc. | Method and apparatus for integrating billing and authentication functions in local area and wide area wireless data networks |
US20030061104A1 (en) * | 2000-03-16 | 2003-03-27 | Thomson Robert W. | Internet based warranty and repair service |
US20030132963A1 (en) * | 2002-01-14 | 2003-07-17 | International Business Machines Corporation | System and method for mapping management objects to console neutral user interface |
US6596858B2 (en) * | 1998-03-23 | 2003-07-22 | Reliable Biopharmaceutical, Inc. | Process for the production of 2-halo-6-aminopurine derivatives |
US20030177183A1 (en) * | 2002-03-15 | 2003-09-18 | Microsoft Corporation | Time-window-constrained multicast using connection scheduling |
US6631407B1 (en) * | 1999-04-01 | 2003-10-07 | Seiko Epson Corporation | Device management network system, management server, and computer readable medium |
US20030204480A1 (en) * | 2002-04-30 | 2003-10-30 | Matthias Heinrichs | Inventory management |
US20040015559A1 (en) * | 2001-07-19 | 2004-01-22 | Tim Goldstein | Apparatus and method for providing customer service |
US20040068454A1 (en) * | 2002-10-03 | 2004-04-08 | Jacobus Greg C. | Managing procurement risk |
US20040111315A1 (en) * | 2002-10-16 | 2004-06-10 | Xerox Corporation | Device model agent |
US6782345B1 (en) * | 2000-10-03 | 2004-08-24 | Xerox Corporation | Systems and methods for diagnosing electronic systems |
US6871163B2 (en) * | 2002-05-31 | 2005-03-22 | Sap Aktiengesellschaft | Behavior-based adaptation of computer systems |
US20050155042A1 (en) * | 2001-07-02 | 2005-07-14 | Michael Kolb | Component-based system for distributed applications |
US6922684B1 (en) * | 2000-08-31 | 2005-07-26 | Ncr Corporation | Analytical-decision support system for improving management of quality and cost of a product |
US6931546B1 (en) * | 2000-01-28 | 2005-08-16 | Network Associates, Inc. | System and method for providing application services with controlled access into privileged processes |
US6947161B2 (en) * | 2001-05-16 | 2005-09-20 | Hewlett-Packard Development Company, L.P. | Systems and methods for automatic status tracking of automatically ordered replaceable components for printing devices |
US6947903B1 (en) * | 1999-08-06 | 2005-09-20 | Elcommerce.Com.Inc. | Method and system for monitoring a supply-chain |
US6947949B2 (en) * | 2001-03-26 | 2005-09-20 | Canon Kabushiki Kaisha | Apparatus and method for managing application in incorporated equipment |
US6965928B1 (en) * | 2001-03-09 | 2005-11-15 | Networks Associates Technology, Inc. | System and method for remote maintenance of handheld computers |
US20050262202A1 (en) * | 2001-10-15 | 2005-11-24 | Tetsuro Motoyama | Method and system of remote monitoring and support of devices, including handling Email messages having message types specified within the Email message |
US6970885B1 (en) * | 1999-10-05 | 2005-11-29 | General Electric Company | Method and system for enabling training of field service personnel and field service of machines |
US6970902B1 (en) * | 2001-05-24 | 2005-11-29 | Cisco Technology, Inc. | Method and apparatus for providing a distributed service in a network |
US6976262B1 (en) * | 1999-06-14 | 2005-12-13 | Sun Microsystems, Inc. | Web-based enterprise management with multiple repository capability |
US6982804B2 (en) * | 2001-10-31 | 2006-01-03 | Hewlett-Packard Development Company, L.P. | Intelligent printer settings |
US20060015570A1 (en) * | 2004-06-30 | 2006-01-19 | Netscaler, Inc. | Method and device for performing integrated caching in a data communication network |
US7003560B1 (en) * | 1999-11-03 | 2006-02-21 | Accenture Llp | Data warehouse computing system |
US7013092B2 (en) * | 1999-09-16 | 2006-03-14 | Xerox Corporation | Supply ordering apparatus |
US7043738B2 (en) * | 2002-03-05 | 2006-05-09 | Sun Microsystems, Inc. | Method and apparatus for managing a data imaging system using CIM providers in a distributed computer system |
US7065740B2 (en) * | 2001-08-24 | 2006-06-20 | Microsoft Corporation | System and method to automate the management of computer services and programmable devices |
US7096194B2 (en) * | 2000-04-13 | 2006-08-22 | Blake Johnson | Dynamic determination of ownership interest based on contribution |
US7111304B2 (en) * | 2002-05-21 | 2006-09-19 | Sun Microsystems, Inc. | Method, system, and program for accessing information from devices |
US7123608B1 (en) * | 1999-09-10 | 2006-10-17 | Array Telecom Corporation | Method, system, and computer program product for managing database servers and service |
US7152039B1 (en) * | 2000-06-29 | 2006-12-19 | Oracle International Corporation | Methods and systems for customer lifecycle definition and categorization |
US20070055746A1 (en) * | 2001-07-18 | 2007-03-08 | Oran David R | System for dynamically tracking the location of network devices to enable emergency services |
US7200601B1 (en) * | 2002-07-31 | 2007-04-03 | Bellsouth Intellectual Property Corporation | Computer-readable medium and data structure for communicating technical architecture standards to vendors |
US7213046B2 (en) * | 2001-07-31 | 2007-05-01 | International Business Machines Corporation | System and method for providing efficient and secure data exchange using strip information elements |
US7213231B1 (en) * | 2001-01-11 | 2007-05-01 | Cisco Technology, Inc. | Cross-spectrum application model for dynamic computing environments in software lifecycle |
US7219124B2 (en) * | 2000-08-01 | 2007-05-15 | Qwest Communications International Inc. | Provisioning system and method for auto-discovering customer premises equipment in activating xDSL |
US7239413B2 (en) * | 2002-10-29 | 2007-07-03 | Hewlett-Packard Development Company, L.P. | Printer replaceable component |
US7240109B2 (en) * | 2002-06-27 | 2007-07-03 | Sun Microsystems, Inc. | Remote services system service module interface |
US7254601B2 (en) * | 2001-12-20 | 2007-08-07 | Questra Corporation | Method and apparatus for managing intelligent assets in a distributed environment |
US7260623B2 (en) * | 2002-06-27 | 2007-08-21 | Sun Microsystems, Inc. | Remote services system communication module |
US7287085B1 (en) * | 2000-05-17 | 2007-10-23 | Ricoh Company, Ltd. | Method and system of remote diagnostic, control and information collection using a dynamic linked library of multiple formats and multiple protocols with intelligent formatter |
US7337242B1 (en) * | 2002-02-11 | 2008-02-26 | Ricoh Company, Limited | Method and apparatus utilizing communication means hierarchy to configure or monitor an interface device |
US7392307B2 (en) * | 2001-02-14 | 2008-06-24 | Ricoh Co., Ltd. | Method and system of remote diagnostic, control and information collection using a shared resource |
US7463373B2 (en) * | 1998-11-09 | 2008-12-09 | Silverbrook Research Pty Ltd | Controller for an inkjet printer |
US7487112B2 (en) * | 2000-06-29 | 2009-02-03 | Barnes Jr Melvin L | System, method, and computer program product for providing location based services and mobile e-commerce |
US7528980B2 (en) * | 1999-10-15 | 2009-05-05 | Ricoh Company, Ltd. | Printer controller and system having a DMA data transmission |
US7533333B2 (en) * | 2001-02-14 | 2009-05-12 | Ricoh Co., Ltd. | Object-oriented method and system of remote diagnostic, control and information collection using multiple formats and multiple protocols |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6359695B1 (en) * | 1992-02-26 | 2002-03-19 | Canon Kabushiki Kaisha | Repeated image forming apparatus with neighboring image boundary gradiation correction |
JP3305454B2 (en) * | 1993-10-01 | 2002-07-22 | キヤノン株式会社 | Image forming system |
MX9502264A (en) * | 1994-06-03 | 1997-02-28 | Xerox Corp | Printer comsumables and service management system. |
CN101059754B (en) * | 1996-05-14 | 2010-08-18 | 株式会社理光 | Java printer |
JP3854699B2 (en) * | 1996-12-27 | 2006-12-06 | キヤノン株式会社 | Printing system and printing interruption method |
US5960167A (en) * | 1997-03-24 | 1999-09-28 | Xerox Corporation | Printer configuration system |
US6003065A (en) * | 1997-04-24 | 1999-12-14 | Sun Microsystems, Inc. | Method and system for distributed processing of applications on host and peripheral devices |
US6073172A (en) * | 1997-07-14 | 2000-06-06 | Freegate Corporation | Initializing and reconfiguring a secure network interface |
JPH11161451A (en) * | 1997-09-26 | 1999-06-18 | Hitachi Koki Co Ltd | Print system |
JP3201319B2 (en) * | 1997-11-01 | 2001-08-20 | 日本電気株式会社 | Electronic devices that can be connected to a network |
EP1061445A2 (en) | 1999-06-14 | 2000-12-20 | Sun Microsystems, Inc. | Web-based enterprise management with transport neutral client interface |
US7126716B1 (en) * | 1999-08-20 | 2006-10-24 | Zih Corp. | Printer for printing labels, tags or the like |
US7268900B1 (en) * | 2000-09-29 | 2007-09-11 | Marvell International Technology Ltd. | Printer formatter in a cable |
US7466442B2 (en) * | 2000-12-06 | 2008-12-16 | Eastman Kodak Company | Printing system and method for customization of a print job |
JP2002175194A (en) * | 2000-12-07 | 2002-06-21 | Ricoh Co Ltd | Program downloading system, program downloading device, image forming device, program downloading method, and computer-readable recording medium with program for executing the method recorded thereon |
US6965931B2 (en) * | 2000-12-18 | 2005-11-15 | Hewlett-Packard Development Company, L.P. | Thin server with printer management |
US20020188504A1 (en) * | 2001-06-07 | 2002-12-12 | Whale Margo N. | Monitoring usage of printer consumables to initiate promotional actions |
US7187459B2 (en) * | 2001-07-19 | 2007-03-06 | Seiko Epson Corporation | Printing system in which programs required for printer operation are downloaded from computer |
JP2003263419A (en) * | 2002-03-11 | 2003-09-19 | Nippon Telegr & Teleph Corp <Ntt> | System control method for completely autonomous multi- agent system, its performing device, processing program and recording medium |
US7146413B2 (en) * | 2002-06-14 | 2006-12-05 | Hewlett-Packard Development Company, L.P. | Remote updating of printer settings on a client device in a networked environment |
JP2004220556A (en) * | 2002-10-17 | 2004-08-05 | Xerox Corp | Distributed subscription service including device model agent and add-on component, method and device enabling automatic supply maintenance and device independent service, low-cost built-in platform in device side and method and device for integrated server platform for executing distributed service and spontaneous provision of device service |
JP2004234625A (en) * | 2003-01-09 | 2004-08-19 | Seiko Epson Corp | Access control system, accessed terminal, access terminal, program for terminal, and access control method |
US7468804B2 (en) * | 2003-06-12 | 2008-12-23 | Ricoh Company, Ltd. | Techniques for printer-side network cluster printing |
-
2003
- 2003-10-16 US US10/687,244 patent/US7647392B2/en not_active Expired - Fee Related
- 2003-10-16 EP EP03023602A patent/EP1411456A3/en not_active Ceased
- 2003-10-16 BR BR0304946-9A patent/BR0304946A/en not_active IP Right Cessation
- 2003-10-16 CN CNA2003101198223A patent/CN1527232A/en active Pending
- 2003-10-16 US US10/686,824 patent/US20040111709A1/en not_active Abandoned
- 2003-10-16 US US10/686,751 patent/US20040125403A1/en not_active Abandoned
- 2003-10-16 US US10/687,142 patent/US8154741B2/en not_active Expired - Fee Related
- 2003-10-16 US US10/686,843 patent/US20040111699A1/en not_active Abandoned
- 2003-10-16 US US10/686,844 patent/US7734749B2/en active Active
- 2003-10-16 US US10/686,842 patent/US7644145B2/en not_active Expired - Fee Related
-
2011
- 2011-12-22 US US13/334,917 patent/US8194275B2/en not_active Expired - Fee Related
Patent Citations (85)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5220674A (en) * | 1987-07-17 | 1993-06-15 | Digital Equipment Corporation | Local area print server for requesting and storing required resource data and forwarding printer status message to selected destination |
US4959860A (en) * | 1989-02-07 | 1990-09-25 | Compaq Computer Corporation | Power-on password functions for computer system |
US5612884A (en) * | 1989-03-23 | 1997-03-18 | F.M.E. Corporation | Remote meter operation |
US5384620A (en) * | 1992-08-31 | 1995-01-24 | Xerox Corporation | Scheduling page parameter variations for discrete job elements |
US5305199A (en) * | 1992-10-28 | 1994-04-19 | Xerox Corporation | Consumable supplies monitoring/ordering system for reprographic equipment |
US5574848A (en) * | 1993-08-24 | 1996-11-12 | National Semiconductor Corporation | Can interface selecting one of two distinct fault recovery method after counting a predetermined number of recessive bits or good can frames |
US5887216A (en) * | 1997-03-19 | 1999-03-23 | Ricoh Company, Ltd. | Method and system to diagnos a business office device based on operating parameters set by a user |
US6596858B2 (en) * | 1998-03-23 | 2003-07-22 | Reliable Biopharmaceutical, Inc. | Process for the production of 2-halo-6-aminopurine derivatives |
US5893008A (en) * | 1998-04-06 | 1999-04-06 | Xerox Corporation | Photoreceptor parking deletion detector |
US6317748B1 (en) * | 1998-05-08 | 2001-11-13 | Microsoft Corporation | Management information to object mapping and correlator |
US6167448A (en) * | 1998-06-11 | 2000-12-26 | Compaq Computer Corporation | Management event notification system using event notification messages written using a markup language |
US6463078B1 (en) * | 1998-07-22 | 2002-10-08 | Microsoft Corporation | Method for switching protocols transparently in multi-user applications |
US7463373B2 (en) * | 1998-11-09 | 2008-12-09 | Silverbrook Research Pty Ltd | Controller for an inkjet printer |
US6631407B1 (en) * | 1999-04-01 | 2003-10-07 | Seiko Epson Corporation | Device management network system, management server, and computer readable medium |
US6976262B1 (en) * | 1999-06-14 | 2005-12-13 | Sun Microsystems, Inc. | Web-based enterprise management with multiple repository capability |
US6427168B1 (en) * | 1999-07-26 | 2002-07-30 | Microsoft Corporation | Architecture for system monitoring using high-performance providers |
US6947903B1 (en) * | 1999-08-06 | 2005-09-20 | Elcommerce.Com.Inc. | Method and system for monitoring a supply-chain |
US7123608B1 (en) * | 1999-09-10 | 2006-10-17 | Array Telecom Corporation | Method, system, and computer program product for managing database servers and service |
US7013092B2 (en) * | 1999-09-16 | 2006-03-14 | Xerox Corporation | Supply ordering apparatus |
US6233409B1 (en) * | 1999-10-01 | 2001-05-15 | Hewlett-Packard Company | Redundant reorder prevention for replaceable printer components |
US6970885B1 (en) * | 1999-10-05 | 2005-11-29 | General Electric Company | Method and system for enabling training of field service personnel and field service of machines |
US7528980B2 (en) * | 1999-10-15 | 2009-05-05 | Ricoh Company, Ltd. | Printer controller and system having a DMA data transmission |
US7003560B1 (en) * | 1999-11-03 | 2006-02-21 | Accenture Llp | Data warehouse computing system |
US20020143924A1 (en) * | 1999-12-27 | 2002-10-03 | Fujitsu Limited | Printer, control method, and computer readable recording medium which stores printer control program |
US6931546B1 (en) * | 2000-01-28 | 2005-08-16 | Network Associates, Inc. | System and method for providing application services with controlled access into privileged processes |
US20030061104A1 (en) * | 2000-03-16 | 2003-03-27 | Thomson Robert W. | Internet based warranty and repair service |
US7096194B2 (en) * | 2000-04-13 | 2006-08-22 | Blake Johnson | Dynamic determination of ownership interest based on contribution |
US7287085B1 (en) * | 2000-05-17 | 2007-10-23 | Ricoh Company, Ltd. | Method and system of remote diagnostic, control and information collection using a dynamic linked library of multiple formats and multiple protocols with intelligent formatter |
US7428723B2 (en) * | 2000-05-22 | 2008-09-23 | Verizon Business Global Llc | Aggregrating related events into a single bundle of events with incorporation of bundle into work protocol based on rules |
US20020147611A1 (en) * | 2000-05-22 | 2002-10-10 | Greene William S. | Method and system for realizing a rendezvous service in a management operations center implemented in a global ecosystem of interrelated services |
US20020143819A1 (en) * | 2000-05-31 | 2002-10-03 | Cheng Han | Web service syndication system |
US7152039B1 (en) * | 2000-06-29 | 2006-12-19 | Oracle International Corporation | Methods and systems for customer lifecycle definition and categorization |
US7487112B2 (en) * | 2000-06-29 | 2009-02-03 | Barnes Jr Melvin L | System, method, and computer program product for providing location based services and mobile e-commerce |
US7219124B2 (en) * | 2000-08-01 | 2007-05-15 | Qwest Communications International Inc. | Provisioning system and method for auto-discovering customer premises equipment in activating xDSL |
US6922684B1 (en) * | 2000-08-31 | 2005-07-26 | Ncr Corporation | Analytical-decision support system for improving management of quality and cost of a product |
US6782345B1 (en) * | 2000-10-03 | 2004-08-24 | Xerox Corporation | Systems and methods for diagnosing electronic systems |
US20020049839A1 (en) * | 2000-10-24 | 2002-04-25 | Tetsuya Miida | System, method, apparatus and program for collecting and providing information |
US20020069112A1 (en) * | 2000-12-04 | 2002-06-06 | International Business Machines Corporation | Service alert agent for a computer system |
US20020072998A1 (en) * | 2000-12-08 | 2002-06-13 | Haines Robert E. | Consumable order-assistance system for computer peripheral devices within a centralized network environment and method for replenishing consumable components |
US20020113989A1 (en) * | 2001-01-11 | 2002-08-22 | Ferlitsch Andrew Rodney | Methods and systems for print-processor modified printing |
US7213231B1 (en) * | 2001-01-11 | 2007-05-01 | Cisco Technology, Inc. | Cross-spectrum application model for dynamic computing environments in software lifecycle |
US7533333B2 (en) * | 2001-02-14 | 2009-05-12 | Ricoh Co., Ltd. | Object-oriented method and system of remote diagnostic, control and information collection using multiple formats and multiple protocols |
US7392307B2 (en) * | 2001-02-14 | 2008-06-24 | Ricoh Co., Ltd. | Method and system of remote diagnostic, control and information collection using a shared resource |
US6965928B1 (en) * | 2001-03-09 | 2005-11-15 | Networks Associates Technology, Inc. | System and method for remote maintenance of handheld computers |
US20020133581A1 (en) * | 2001-03-16 | 2002-09-19 | Embrace Networks, Inc. | System and method to manage network-enabled embedded devices operating under various protocols |
US6947949B2 (en) * | 2001-03-26 | 2005-09-20 | Canon Kabushiki Kaisha | Apparatus and method for managing application in incorporated equipment |
US20060041563A1 (en) * | 2001-03-26 | 2006-02-23 | Canon Kabushiki Kaisha | Apparatus and method for managing application in incorporated equipment |
US20020140966A1 (en) * | 2001-04-02 | 2002-10-03 | Meade William K. | Systems and methods for managing software updates for printing systems |
US20020165805A1 (en) * | 2001-05-02 | 2002-11-07 | International Business Machines Corporation | Method and system for managing parts requirements processes |
US6947161B2 (en) * | 2001-05-16 | 2005-09-20 | Hewlett-Packard Development Company, L.P. | Systems and methods for automatic status tracking of automatically ordered replaceable components for printing devices |
US6970902B1 (en) * | 2001-05-24 | 2005-11-29 | Cisco Technology, Inc. | Method and apparatus for providing a distributed service in a network |
US20020184300A1 (en) * | 2001-06-05 | 2002-12-05 | Schmeling Garth F. | Device management system and method |
US20030004832A1 (en) * | 2001-06-13 | 2003-01-02 | Haruo Kamimoto | Consumable-supplies purchase order method and system, customer equipment, and purchase order processing apparatus |
US20030005091A1 (en) * | 2001-06-29 | 2003-01-02 | International Business Machines Corporation | Method and apparatus for improved monitoring in a distributed computing system |
US20030004784A1 (en) * | 2001-06-29 | 2003-01-02 | International Business Machines Corporation | Methods and apparatus for automatic replenishment of inventory using embedded sensor system and electronic marketplace |
US20050155042A1 (en) * | 2001-07-02 | 2005-07-14 | Michael Kolb | Component-based system for distributed applications |
US20030014650A1 (en) * | 2001-07-06 | 2003-01-16 | Michael Freed | Load balancing secure sockets layer accelerator |
US20070055746A1 (en) * | 2001-07-18 | 2007-03-08 | Oran David R | System for dynamically tracking the location of network devices to enable emergency services |
US20040015559A1 (en) * | 2001-07-19 | 2004-01-22 | Tim Goldstein | Apparatus and method for providing customer service |
US7213046B2 (en) * | 2001-07-31 | 2007-05-01 | International Business Machines Corporation | System and method for providing efficient and secure data exchange using strip information elements |
US20030051041A1 (en) * | 2001-08-07 | 2003-03-13 | Tatara Systems, Inc. | Method and apparatus for integrating billing and authentication functions in local area and wide area wireless data networks |
US20030033445A1 (en) * | 2001-08-08 | 2003-02-13 | Simpson Shell S. | Imaging extension |
US7065740B2 (en) * | 2001-08-24 | 2006-06-20 | Microsoft Corporation | System and method to automate the management of computer services and programmable devices |
US20050262202A1 (en) * | 2001-10-15 | 2005-11-24 | Tetsuro Motoyama | Method and system of remote monitoring and support of devices, including handling Email messages having message types specified within the Email message |
US6982804B2 (en) * | 2001-10-31 | 2006-01-03 | Hewlett-Packard Development Company, L.P. | Intelligent printer settings |
US7254601B2 (en) * | 2001-12-20 | 2007-08-07 | Questra Corporation | Method and apparatus for managing intelligent assets in a distributed environment |
US20030132963A1 (en) * | 2002-01-14 | 2003-07-17 | International Business Machines Corporation | System and method for mapping management objects to console neutral user interface |
US7337242B1 (en) * | 2002-02-11 | 2008-02-26 | Ricoh Company, Limited | Method and apparatus utilizing communication means hierarchy to configure or monitor an interface device |
US7043738B2 (en) * | 2002-03-05 | 2006-05-09 | Sun Microsystems, Inc. | Method and apparatus for managing a data imaging system using CIM providers in a distributed computer system |
US20030177183A1 (en) * | 2002-03-15 | 2003-09-18 | Microsoft Corporation | Time-window-constrained multicast using connection scheduling |
US20030204480A1 (en) * | 2002-04-30 | 2003-10-30 | Matthias Heinrichs | Inventory management |
US7111304B2 (en) * | 2002-05-21 | 2006-09-19 | Sun Microsystems, Inc. | Method, system, and program for accessing information from devices |
US6871163B2 (en) * | 2002-05-31 | 2005-03-22 | Sap Aktiengesellschaft | Behavior-based adaptation of computer systems |
US7240109B2 (en) * | 2002-06-27 | 2007-07-03 | Sun Microsystems, Inc. | Remote services system service module interface |
US7260623B2 (en) * | 2002-06-27 | 2007-08-21 | Sun Microsystems, Inc. | Remote services system communication module |
US7200601B1 (en) * | 2002-07-31 | 2007-04-03 | Bellsouth Intellectual Property Corporation | Computer-readable medium and data structure for communicating technical architecture standards to vendors |
US20040068454A1 (en) * | 2002-10-03 | 2004-04-08 | Jacobus Greg C. | Managing procurement risk |
US20040128375A1 (en) * | 2002-10-16 | 2004-07-01 | Xerox Corporation. | Integrated server platform for the autonomous provisioning of device services |
US20040111709A1 (en) * | 2002-10-16 | 2004-06-10 | Xerox Corporation | Method for low cost embedded platform for device-side distributed services enablement |
US20040128669A1 (en) * | 2002-10-16 | 2004-07-01 | Xerox Corporation | Apparatus for low cost embedded platform for device-side, distributed services enablement |
US20040111699A1 (en) * | 2002-10-16 | 2004-06-10 | Xerox Corporation | Integrated server platform for the autonomous provisioning of device services |
US20040111315A1 (en) * | 2002-10-16 | 2004-06-10 | Xerox Corporation | Device model agent |
US20050004974A1 (en) * | 2002-10-16 | 2005-01-06 | Xerox Corporation | Device model agent |
US7239413B2 (en) * | 2002-10-29 | 2007-07-03 | Hewlett-Packard Development Company, L.P. | Printer replaceable component |
US20060015570A1 (en) * | 2004-06-30 | 2006-01-19 | Netscaler, Inc. | Method and device for performing integrated caching in a data communication network |
Cited By (97)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040111315A1 (en) * | 2002-10-16 | 2004-06-10 | Xerox Corporation | Device model agent |
US7734749B2 (en) | 2002-10-16 | 2010-06-08 | Xerox Corporation | Device model agent |
US8194275B2 (en) | 2002-10-16 | 2012-06-05 | Xerox Corporation | Apparatus for low cost embedded platform for device-side, distributed services enablement |
US20050152380A1 (en) * | 2004-01-08 | 2005-07-14 | Samsung Electronics Co., Ltd. | Apparatus and method for sharing services on a network |
US20050253887A1 (en) * | 2004-05-12 | 2005-11-17 | Garrana Henry N | Print cartridge ordering system |
US7216951B2 (en) * | 2004-05-12 | 2007-05-15 | Dell Products L.P. | Print cartridge ordering system |
US20080069121A1 (en) * | 2004-06-15 | 2008-03-20 | Koninklijke Philips Electronics, N.V. | Gateway For A Local Network System |
US20060048220A1 (en) * | 2004-08-24 | 2006-03-02 | Jahromi Babak G | Securely inspecting electronic messages |
US7574601B2 (en) * | 2004-08-24 | 2009-08-11 | Microsoft Corporation | Securely inspecting electronic messages |
US8051125B2 (en) * | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for obtaining imaging device event notification subscription |
US8001587B2 (en) | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential management |
US20060077447A1 (en) * | 2004-10-08 | 2006-04-13 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device notification access control |
US7684074B2 (en) | 2004-10-08 | 2010-03-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device metadata management |
US8106922B2 (en) | 2004-10-08 | 2012-01-31 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device data display |
US8384925B2 (en) | 2004-10-08 | 2013-02-26 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting data management |
US7738808B2 (en) | 2004-10-08 | 2010-06-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device concurrent account use with remote authorization |
US8270003B2 (en) | 2004-10-08 | 2012-09-18 | Sharp Laboratories Of America, Inc. | Methods and systems for integrating imaging device display content |
US8237946B2 (en) | 2004-10-08 | 2012-08-07 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting server redundancy |
US7826081B2 (en) | 2004-10-08 | 2010-11-02 | Sharp Laboratories Of America, Inc. | Methods and systems for receiving localized display elements at an imaging device |
US8230328B2 (en) | 2004-10-08 | 2012-07-24 | Sharp Laboratories Of America, Inc. | Methods and systems for distributing localized display elements to an imaging device |
US8213034B2 (en) | 2004-10-08 | 2012-07-03 | Sharp Laboratories Of America, Inc. | Methods and systems for providing remote file structure access on an imaging device |
US8201077B2 (en) | 2004-10-08 | 2012-06-12 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device form generation and form field data management |
US7870185B2 (en) | 2004-10-08 | 2011-01-11 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device event notification administration |
US7873718B2 (en) | 2004-10-08 | 2011-01-18 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting server recovery |
US7873553B2 (en) | 2004-10-08 | 2011-01-18 | Sharp Laboratories Of America, Inc. | Methods and systems for authorizing imaging device concurrent account use |
US20060077428A1 (en) * | 2004-10-08 | 2006-04-13 | Sharp Laboratories Of America, Inc. | Methods and systems for displaying content on an imaging device |
US7920101B2 (en) | 2004-10-08 | 2011-04-05 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device display standardization |
US7934217B2 (en) | 2004-10-08 | 2011-04-26 | Sharp Laboratories Of America, Inc. | Methods and systems for providing remote file structure access to an imaging device |
US8060930B2 (en) | 2004-10-08 | 2011-11-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential receipt and authentication |
US7966396B2 (en) | 2004-10-08 | 2011-06-21 | Sharp Laboratories Of America, Inc. | Methods and systems for administrating imaging device event notification |
US7970813B2 (en) * | 2004-10-08 | 2011-06-28 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device event notification administration and subscription |
US7969596B2 (en) | 2004-10-08 | 2011-06-28 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device document translation |
US7978618B2 (en) | 2004-10-08 | 2011-07-12 | Sharp Laboratories Of America, Inc. | Methods and systems for user interface customization |
US8001586B2 (en) | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential management and authentication |
US8065384B2 (en) | 2004-10-08 | 2011-11-22 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device event notification subscription |
US8001183B2 (en) * | 2004-10-08 | 2011-08-16 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device related event notification |
US8006176B2 (en) | 2004-10-08 | 2011-08-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging-device-based form field management |
US8006293B2 (en) | 2004-10-08 | 2011-08-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential acceptance |
US8006292B2 (en) | 2004-10-08 | 2011-08-23 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential submission and consolidation |
US20110214133A1 (en) * | 2004-10-08 | 2011-09-01 | Lum Joey P | Event Notification Subscription |
US8015234B2 (en) | 2004-10-08 | 2011-09-06 | Sharp Laboratories Of America, Inc. | Methods and systems for administering imaging device notification access control |
US8018610B2 (en) | 2004-10-08 | 2011-09-13 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device remote application interaction |
US8024792B2 (en) | 2004-10-08 | 2011-09-20 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential submission |
US8023130B2 (en) | 2004-10-08 | 2011-09-20 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device accounting data maintenance |
US8032579B2 (en) * | 2004-10-08 | 2011-10-04 | Sharp Laboratories Of America, Inc. | Methods and systems for obtaining imaging device notification access control |
US8032608B2 (en) | 2004-10-08 | 2011-10-04 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device notification access control |
US8035831B2 (en) | 2004-10-08 | 2011-10-11 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device remote form management |
US8051140B2 (en) | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device control |
US20060077464A1 (en) * | 2004-10-08 | 2006-04-13 | Rono Mathieson | Methods and systems for imaging device document management |
US8049677B2 (en) | 2004-10-08 | 2011-11-01 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device display element localization |
US8060921B2 (en) | 2004-10-08 | 2011-11-15 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device credential authentication and communication |
US7941743B2 (en) | 2004-10-08 | 2011-05-10 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device form field management |
US20060077413A1 (en) * | 2004-10-08 | 2006-04-13 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device job management |
US8171404B2 (en) | 2004-10-08 | 2012-05-01 | Sharp Laboratories Of America, Inc. | Methods and systems for disassembly and reassembly of examination documents |
US8115946B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and sytems for imaging device job definition |
US8115945B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device job configuration management |
US8115944B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and systems for local configuration-based imaging device accounting |
US8115947B2 (en) | 2004-10-08 | 2012-02-14 | Sharp Laboratories Of America, Inc. | Methods and systems for providing remote, descriptor-related data to an imaging device |
US8120799B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for accessing remote, descriptor-related data at an imaging device |
US8120797B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for transmitting content to an imaging device |
US8120793B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for displaying content on an imaging device |
US8120798B2 (en) | 2004-10-08 | 2012-02-21 | Sharp Laboratories Of America, Inc. | Methods and systems for providing access to remote, descriptor-related data at an imaging device |
US8125666B2 (en) | 2004-10-08 | 2012-02-28 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device document management |
US8140613B2 (en) * | 2004-10-08 | 2012-03-20 | Sharp Laboratories Of America, Inc. | Event notification subscription |
US8156424B2 (en) | 2004-10-08 | 2012-04-10 | Sharp Laboratories Of America, Inc. | Methods and systems for imaging device dynamic document creation and organization |
US8428484B2 (en) | 2005-03-04 | 2013-04-23 | Sharp Laboratories Of America, Inc. | Methods and systems for peripheral accounting |
US7797303B2 (en) | 2006-02-15 | 2010-09-14 | Xerox Corporation | Natural language processing for developing queries |
US8345272B2 (en) | 2006-09-28 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Methods and systems for third-party control of remote imaging jobs |
US20080091408A1 (en) * | 2006-10-06 | 2008-04-17 | Xerox Corporation | Navigation system for text |
US7774198B2 (en) | 2006-10-06 | 2010-08-10 | Xerox Corporation | Navigation system for text |
US7890318B2 (en) | 2007-05-23 | 2011-02-15 | Xerox Corporation | Informing troubleshooting sessions with device data |
US20080294423A1 (en) * | 2007-05-23 | 2008-11-27 | Xerox Corporation | Informing troubleshooting sessions with device data |
US20080310875A1 (en) * | 2007-06-15 | 2008-12-18 | Shahana Rahman | Machine integrated semi-automated service credit for a metered device |
US7684720B2 (en) | 2007-06-15 | 2010-03-23 | Xerox Corporation | Machine integrated semi-automated service credit for a metered device |
US8160969B2 (en) | 2007-09-10 | 2012-04-17 | Lexmark International, Inc. | System and method for ordering consumables |
US20100281473A1 (en) * | 2009-04-29 | 2010-11-04 | Microsoft Corporation | Automated software deployment triggered by state differences in distributed systems |
US8458690B2 (en) | 2009-04-29 | 2013-06-04 | Microsoft Corporation | Automated software deployment triggered by state differences in distributed systems |
US9424446B2 (en) | 2010-04-08 | 2016-08-23 | Access Business Group International Llc | Point of sale inductive systems and methods |
US9027840B2 (en) | 2010-04-08 | 2015-05-12 | Access Business Group International Llc | Point of sale inductive systems and methods |
US8893977B2 (en) | 2010-04-08 | 2014-11-25 | Access Business Group International Llc | Point of sale inductive systems and methods |
US8788373B2 (en) | 2010-09-28 | 2014-07-22 | Xerox Corporation | Call center integrated printing device consumable cabinet device service |
US8532960B2 (en) | 2010-09-28 | 2013-09-10 | Microsoft Corporation | Remotely collecting and managing diagnostic information |
WO2012044994A1 (en) * | 2010-10-01 | 2012-04-05 | Electronics For Imaging, Inc. | Automated printer's dashboard |
US9158479B2 (en) | 2010-10-01 | 2015-10-13 | Electronics For Imaging, Inc. | Automated printer's dashboard |
US9628145B2 (en) * | 2012-04-07 | 2017-04-18 | Samsung Electronics Co., Ltd. | Method and system for transfering data between plurality of devices |
US20170195008A1 (en) * | 2012-04-07 | 2017-07-06 | Samsung Electronics Co., Ltd. | Method and system for transfering data between plurality of devices |
US10135495B2 (en) * | 2012-04-07 | 2018-11-20 | Samsung Electronics Co., Ltd. | Method and system for transferring data between plurality of devices |
US20190089415A1 (en) * | 2012-04-07 | 2019-03-21 | Samsung Electronics Co., Ltd. | Method and system for transfering data between plurality of devices |
US10439678B2 (en) * | 2012-04-07 | 2019-10-08 | Samsung Electronics Co., Ltd. | Method and system for transfering data between plurality of devices |
US20130267172A1 (en) * | 2012-04-07 | 2013-10-10 | Samsung Electronics Co., Ltd. | Method and system for transfering data between plurality of devices |
US20220070264A1 (en) * | 2017-07-19 | 2022-03-03 | Datacast Labs Llc | System and method enabled devices enabled with syndicated data enhanced functionality |
WO2019018672A1 (en) * | 2017-07-19 | 2019-01-24 | Ceasa Group, Llc | SYNDICATED INTERNET OF THINGS (IoT) DATA SYSTEMS AND METHODS ENABLING ENHANCED IoT SUPPLIER AND APPLICATION INDEPENDENT DEVICE FUNCTIONALITY AND SERVICES |
US10826996B2 (en) * | 2017-07-19 | 2020-11-03 | Datacast Labs Llc | Syndicated internet of things (IoT) data systems and methods enabling enhanced IoT supplier and application independent device functionality and services |
US11159623B2 (en) * | 2017-07-19 | 2021-10-26 | Datacast Labs Llc | Syndicated data system and method enabling enhanced supplier and application independent device information receipt, functionality and services |
US11159624B2 (en) * | 2017-07-19 | 2021-10-26 | Datacast Labs Llc | System and method enabled devices enabled with syndicated data enhanced functionality |
US20210377256A1 (en) * | 2020-05-29 | 2021-12-02 | Kyocera Document Solutions Inc. | Systems, apparatus, and computer program products for management of certificates for third party applications accessing printing kiosks |
US11650773B2 (en) * | 2020-05-29 | 2023-05-16 | Kyocera Document Solutions Inc. | Systems, apparatus, and computer program products for management of certificates for third party applications accessing printing kiosks |
Also Published As
Publication number | Publication date |
---|---|
US20120092727A1 (en) | 2012-04-19 |
US20040128669A1 (en) | 2004-07-01 |
BR0304946A (en) | 2004-08-31 |
EP1411456A3 (en) | 2005-07-06 |
US20040128375A1 (en) | 2004-07-01 |
US20050004974A1 (en) | 2005-01-06 |
US8154741B2 (en) | 2012-04-10 |
US20040111709A1 (en) | 2004-06-10 |
US20040111699A1 (en) | 2004-06-10 |
US7644145B2 (en) | 2010-01-05 |
US20040111315A1 (en) | 2004-06-10 |
CN1527232A (en) | 2004-09-08 |
EP1411456A2 (en) | 2004-04-21 |
US8194275B2 (en) | 2012-06-05 |
US7734749B2 (en) | 2010-06-08 |
US7647392B2 (en) | 2010-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7647392B2 (en) | Device model agent | |
US10033832B2 (en) | Systems and methods for providing a client agent for delivery of remote services | |
US9304827B2 (en) | Systems and methods for providing hierarchy of support services via desktop and centralized service | |
EP0954799B1 (en) | A system and method for creating, executing and maintaining cross-enterprise processes | |
CN102365890B (en) | Verifiable service billing for intermediate networking devices | |
US7102777B2 (en) | Image processing service system | |
US8935687B2 (en) | Incrementally updating a software appliance | |
US20130332524A1 (en) | Data service on a mobile device | |
US20110225636A1 (en) | Method For Automating Onboarding Application Developers To Sales Distribution Channel | |
US20080046569A1 (en) | System and method to identify, rank, and audit network provided configurables | |
US9785986B2 (en) | Method for automating onboarding of user generated ringback tones to sales distribution channel | |
JP6374870B2 (en) | Solutions for lifecycle management of distributed applications | |
US20040093580A1 (en) | System and methodology for mobile e-services | |
JP2004220556A (en) | Distributed subscription service including device model agent and add-on component, method and device enabling automatic supply maintenance and device independent service, low-cost built-in platform in device side and method and device for integrated server platform for executing distributed service and spontaneous provision of device service | |
US8041782B1 (en) | System of automated configuration of network subscribers for broadband communication | |
US8526940B1 (en) | Centralized rules repository for smart phone customer care |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: XEROX CORPORATION, CONNECTICUT Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FURST, MICHAEL R.;ROCKWELL, RONALD M.;SHARMA, NAVEEN;AND OTHERS;REEL/FRAME:014246/0051;SIGNING DATES FROM 20031114 TO 20031119 |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, AS COLLATERAL AGENT, TEXAS Free format text: SECURITY AGREEMENT;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:015722/0119 Effective date: 20030625 Owner name: JPMORGAN CHASE BANK, AS COLLATERAL AGENT,TEXAS Free format text: SECURITY AGREEMENT;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:015722/0119 Effective date: 20030625 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: MAJANDRO LLC, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:053258/0949 Effective date: 20200413 |
|
AS | Assignment |
Owner name: XEROX CORPORATION, CONNECTICUT Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:JPMORGAN CHASE BANK, N.A. AS SUCCESSOR-IN-INTEREST ADMINISTRATIVE AGENT AND COLLATERAL AGENT TO BANK ONE, N.A.;REEL/FRAME:061360/0501 Effective date: 20220822 |