The present invention generally relates to mobile units such as mobile computing devices, cellular phones, personal data assistants (PDAs), and the like, and more particularly relates to provisioning and remediation of such devices.
In recent years the use of cellular phones, smart phones, global positioning systems (GPS), personal data assistants (PDAs), laptop computers, and other such mobile units has increased dramatically. In any given enterprise, it is not uncommon for many thousands of mobile units to be present within the system. It is therefore a difficult but critical task to administer large groups of mobile units, particularly when their use is important to day-to-day operation of the enterprise.
One administrative task relates to remediation—i.e., diagnosing and addressing errors or deficiencies in the software and/or hardware of the mobile unit. Presently known remediation schemes are unsatisfactory in a number of respects. For example, many remediation systems limit remediation to specific domains (particular vendors), a fixed set of remediations that are built in to the unit, and/or a fixed set of applicable mobile units.
Furthermore, such remediation is either initiated by a central server or the mobile unit itself, not by both. Accordingly, in some instances, where all remediation is performed by a central server, if connectivity to the mobile unit fails, remediation becomes impossible. On the other hand, when all of the remediation is performed by the mobile unit, centralized control and remediation across and enterprise becomes difficult.
Accordingly, it is desirable to provide improved systems and methods for remediation of mobile units in an enterprise. Furthermore, other desirable features and characteristics of the present invention will become apparent from the subsequent detailed description and the appended claims, taken in conjunction with the accompanying drawings and the foregoing technical field and background.
A more complete understanding of the present invention may be derived by referring to the detailed description and claims when considered in conjunction with the following figures, wherein like reference numbers refer to similar elements throughout the figures.
The present invention generally relates to highly-customizable and extensible remediation of mobile units (e.g., resolution of errors or deficiencies) in a manner that is at least partially local to the mobile units themselves. In this regard, the following detailed description is merely illustrative in nature and is not intended to limit the invention or the application and uses of the invention. Furthermore, there is no intention to be bound by any express or implied theory presented in the preceding technical field, background, brief summary or the following detailed description.
The invention may be described herein in terms of functional and/or logical block components and various processing steps. It should be appreciated that such block components may be realized by any number of hardware, software, and/or firmware components configured to perform the specified functions. For example, an embodiment of the invention may employ various integrated circuit components, e.g., radio-frequency (RF) devices, memory elements, digital signal processing elements, logic elements, look-up tables, or the like, which may carry out a variety of functions under the control of one or more microprocessors or other control devices. In addition, those skilled in the art will appreciate that the present invention may be practiced in conjunction with any number of data transmission protocols and that the system described herein is merely one exemplary application for the invention.
For the sake of brevity, conventional techniques related to signal processing, data transmission, signaling, network control, the 802.11 family of specifications, wireless networks, cellular networks, and other functional aspects of the system (and the individual operating components of the system) may not be described in detail herein. Furthermore, the connecting lines shown in the various figures contained herein are intended to represent example functional relationships and/or physical couplings between the various elements. Many alternative or additional functional relationships or physical connections may be present in a practical embodiment.
Referring now to
Although not illustrated, it will be understood that each mobile unit 120 generally includes one or more processors (e.g., microprocessor or microcontroller), one or more storage components (e.g., RAM, ROM, disk storage, etc.), a user interface 102, and an I/O module, all suitably interconnected via a bus or other connection means. The processor is configured to carry out software and/or firmware instructions stored within the storage component, in the conventional manner, while interfacing with the user interface and I/O module. Depending upon the type of mobile unit, the user interface may include any combination of hardware and software components configured to provide an interface with a human user, including, but not limited to, touch screens (e.g., capacitive and resistive screens), keyboards, buttons, dials, displays (e.g., LCDs, LEDs, etc.), and the like.
Mobile units 120 may be configured to communicate via WiFi (IEEE 802.11), IrDA (infrared), Bluetooth, ZigBee (and other variants of the IEEE 802.15 protocol), IEEE 802.16 (WiMAX or any other variation), Direct Sequence Spread Spectrum, Frequency Hopping Spread Spectrum, cellular/wireless/cordless telecommunication protocols (e.g., 3G), wireless home network communication protocols, paging network protocols, GPS, magnetic induction, satellite data communication protocols, wireless hospital or health care facility network protocols such as those operating in the WMTS bands, GPRS, and proprietary wireless data communication protocols such as variants of Wireless USB.
Mobile units 120 may take a variety of forms and have any desired physical dimensions. For example, mobile units 120 may be a cellular phone, PDA, an RFID reader, or the like, or may be a conventional laptop, sub-notebook, or netbook.
Control server (or simply “server”) 110 includes any combination of hardware and software capable of carrying out the functions described herein. In that regard, server 110 may also include various networking components, databases, consoles, etc., which, for the sake of clarity, are not illustrated in the figures. In one embodiment, for example, server 110 corresponds to one of the various Mobility Service Platform (MSP) servers provided by Motorola, Inc.
In accordance with one embodiment, remediation is performed by a combination of local remediation and remote remediation. Thus, referring to
A “condition” as used herein is a definition of how to detect the circumstances requiring remediation. In one embodiment, multiple conditions may be combined using logical ANDs and ORs to form a complex conditions.
The types of conditions/actions advantageously stored locally within table 222 include, for example, those conditions in which connectivity to server 110 fails or is poor. The most common case includes correcting a situation where the configuration of one or more subsystems that affect connectivity to control server 110 are unintentionally or deliberately changed. In such a case, successful remediation requires that the change (or its effect) be detected and then reversed by reapplying the original correct configuration. Another case is where a problem with the network or server causes loss of connectivity. In such a case, the original configuration remains in effect but does not achieve the desired result. Successful remediation might require that an alternate configuration be applied temporarily. At some later time, the original configuration may also need to be re-applied when the primary connection is again working.
The respective lists of conditions and actions within tables 212 and 222 are preferably configured by the administrator through server 110 (e.g., via a standard console). Conditions 213 and 223 may be arbitrarily complex and configurable to allow for a wide range of remediation scenarios.
It should be appreciated that the example embodiment or embodiments described herein are not intended to limit the scope, applicability, or configuration of the invention in any way. For example, these methods may be used in connection with standard barcode readers and the like. In general, the foregoing detailed description will provide those skilled in the art with a convenient road map for implementing the described embodiment or embodiments. It should be understood that various changes can be made in the function and arrangement of elements without departing from the scope of the invention as set forth in the appended claims and the legal equivalents thereof.