Data storage and retrieval system for non-contiguous medical device operational data

By designing a data storage and retrieval system for medical devices, the problem that the medical device controller cannot store operating data during the interruption of network connection is solved, and continuous storage and retrieval of medical device data is realized, making it convenient for medical personnel to find operating data for a specific time.

CN120032855APending Publication Date: 2025-05-23ABIOMED INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510107299.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2018-09-20
Filing Date
2018-12-19
Publication Date
2025-05-23

AI Technical Summary

Technical Problem

Due to the lack of sufficient memory and detection capabilities, the medical device controller cannot store operation data during the interruption of computer network connection, resulting in interruptions in the operation data recorded by the server, and continuous data storage and retrieval cannot be achieved.

Method used

A data storage and retrieval system is designed, including medical devices, network connection logs, data repositories and media servers. The medical device automatically captures status information and sends messages, the network connection log records the connection time and disconnection time, the data store stores and provides the requested part of the media file, the media server receives the messages, stores the status information and calculates the index to achieve connected data storage.

Benefits of technology

It realizes continuous storage and retrieval of medical device data when the computer network connection is interrupted, solving the problem of discontinuous time storage in data files, making it convenient for medical personnel to find operational data for specific time through indexes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120032855A_ABST
    Figure CN120032855A_ABST
Patent Text Reader

Abstract

The invention relates to a data storage and retrieval system for non-contiguous medical device operational data. A web-based interface enables medical personnel to remotely monitor the medical device. The monitoring system records operational data and alerts of the medical device in a file. However, since the network connection between the medical devices and the monitoring system is intermittent, the file does not contain the contiguous data flow for each medical device. When the network connection is interrupted, the file stops recording. The system displays current data and an alarm list. If the medical personnel wishes to view more detailed information about one of an earlier time or an alarm, the system calculates a recording location of the medical device data in the file. The calculation takes into account the non-contiguity of the data. The system uses the time to establish and disconnect the network connection to calculate an index in the file corresponding to the time of the user-selected alert.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of Chinese patent application 2018800978608 (PCT / US2018 / 066483) filed on December 19, 2018 and entitled “Data Storage and Retrieval System for Non-Connected Medical Device Operation Data”. Technical Field

[0002] The present invention relates to data storage and retrieval systems, and more particularly to data storage and retrieval systems for collecting, storing and retrieving operational data related to medical devices, wherein the network connection through which the operational data is sent is intermittent, that is, there are occasional gaps in the computer network connection. Background Art

[0003] Many medical devices, such as certain implanted heart pumps, should be monitored by medical personnel to ensure efficacy and patient safety. Some such medical devices have associated controllers that collect and display operational data about the medical device, such as cardiac signal levels, battery temperature, and tubing integrity. Some of these controllers sound an alarm when the operational data value exceeds a predetermined value or range (e.g., if a leak or loss of suction is detected). Many of these controllers include a video display screen as a human-machine interface on which the operational data and / or alarms are displayed.

[0004] In many cases, especially in the case of ambulatory patients, these medical devices are monitored remotely. In these cases, the controllers can be coupled to central servers via a computer network (usually including a wireless segment), which can be accessed by the monitoring stations. The monitoring stations can display real-time operating data and / or alarms on a display screen for medical personnel to view. Typically, the server also records the operating data, so that operating data from an earlier time can be "played back" upon request by medical personnel.

[0005] However, the computer network connection between the medical device controller and the server is typically intermittent, i.e., there are occasional breaks in the computer network connection between the medical device controller and the server, particularly when the computer network includes a wireless segment. The medical device controller typically lacks sufficient memory to store operational data during these breaks, or the device controller lacks the ability to detect these breaks. Thus, once the network connection is restored, the medical device controller is unable to compensate for these breaks by sending operational data at an earlier time. Instead, the medical device controller simply sends its current operational data as long as there is a computer network connection to the server. Thus, the operational data recorded by the server typically includes breaks that correspond to the breaks in the computer network connection.

[0006] When operation data is received from the medical device controller, the server records the operation data. However, during the interruption of the computer network connection, the server pauses recording because the server has nothing to record. Therefore, although the recorded operation data is stored in a contiguous data file, the stored data does not represent continuous time, which makes it impossible to index to the time of interest in the data file. In contrast, in the prior art, medical personnel are limited to playing back the recorded operation data from the beginning of the data file, or guessing the distance to index into the data file to find the operation data corresponding to the time of interest. Summary of the invention

[0007] An embodiment of the present invention provides a data storage and retrieval system for non-connected medical device data. The system includes a medical device. The medical device can be connected to a computer network. The connection between the medical device and the computer network is occasionally interrupted. The medical device is configured to automatically and repeatedly capture status information about the medical device and send a message containing the status information via the computer network.

[0008] The system also includes a network connection log. The network connection log is configured to automatically record the time when the medical device is connected to the computer network. The network connection log is also configured to automatically record the time when the medical device is disconnected from the computer network.

[0009] The system also includes a data repository. The data repository is configured to automatically store digital media data in a media file. The data repository is further configured to automatically provide a requested portion of the stored media file in response to a provision request, the requested portion being less than the entirety of the stored media file. The provision request includes an index relative to an end of the media file, the index corresponding to the requested portion.

[0010] The system also includes a media server. The media server is connectable to the computer network. The media server is configured to automatically receive messages via the computer network. The media server is also configured to automatically store status information from received messages in a data repository. Despite occasional interruptions in the connection between the medical device and the computer network, status information from consecutively received messages is continuously stored in the data repository.

[0011] The media server is further configured to automatically receive a status request including a time at which the requested status information was captured. The media server is further configured to automatically access a network connection log and calculate an index relative to the end of the media file storing the requested status information. In performing this calculation, the media server is configured to take into account occasional connectivity gaps between the medical device and the computer network as indicated in the network connection log.

[0012] The media server is further configured to automatically request a portion of the stored media file starting at the calculated index. The media server is further configured to automatically provide a portion of the stored media file starting at the calculated index.

[0013] In any embodiment, the data repository may be further configured to store the digital media data in at least one archive file. When the media file stores a predetermined amount of digital media data, the digital media data stored in the media file may be copied to the at least one archive file. In any embodiment, the data repository is further configured to provide a requested portion of the stored archive file in response to a provision request, the requested portion being less than the entirety of the stored archive file. The provision request may include an index relative to the end of the archive file, the index corresponding to the requested portion.

[0014] In any of the embodiments, the network connection log may be further configured to automatically record information identifying one of a media file and an archive file storing digital media data during a period of each connection to the computer network.

[0015] In any embodiment, the media server can be further configured to access the network connection log and calculate an index relative to the end of the archive file storing the requested state information. The calculation can take into account occasional connectivity gaps between the medical device and the computer network represented in the network connection log.

[0016] In any embodiment, the media server may be further configured to request a portion of the stored archive file starting at the calculated index. In any embodiment, the media server may be further configured to provide a portion of the stored archive file starting at the calculated index.

[0017] In any embodiment, the media server may be further configured to automatically cause display of a pop-up message when the message indicates that the medical device requires attention.

[0018] In any embodiments, the pop-up message may include a URL to a web page containing additional information about the status of the medical device.

[0019] Any of the embodiments may further include an outgoing email server configured to send an email message when a message from the medical device indicates that the medical device requires attention.

[0020] In any embodiments, the email message may include a URL to a web page containing additional information regarding the status of the medical device.

[0021] Another embodiment of the present invention provides a method for storing and retrieving non-connected medical device data. The method includes connecting the medical device to a computer network with occasional interruptions in connection with the computer network. The method further includes automatically and repeatedly capturing, by the medical device, status information about the medical device, and sending, by the medical device via the computer network, a message containing the status information. The method further includes automatically recording in a network connection log (a) the time when the medical device is connected to the computer network and (b) the time when the medical device is disconnected from the computer network.

[0022] The method further includes storing the digital media data in a media file in the data repository. The method further includes providing, by the data repository, a requested portion of the stored media file in response to a provision request, the requested portion being less than the entirety of the stored media file. The provision request includes an index relative to an end of the media file, the index corresponding to the requested portion.

[0023] The method further includes receiving messages via the computer network by the media server. The method further includes storing, by the media server, status information from the received messages in a data repository. Despite occasional interruptions in the connection between the medical device and the computer network, status information from continuously received messages is continuously stored in the data repository.

[0024] The method further includes receiving, by the media server, a status request including a time at which the requested status information was captured. The method further includes accessing, by the media server, a network connection log and calculating an index relative to the end of the media file. The requested status information is stored to account for occasional connectivity gaps between the medical device and the computer network indicated in the network connection log. The method further includes requesting, by the media server, a portion of the stored media file starting at the calculated index. The method further includes providing, by the media server, a portion of the stored media file starting at the calculated index.

[0025] In any embodiment, the method may further include storing the digital media data in at least one archive file, and, when the media file stores a predetermined amount of digital media data, copying the digital media data stored in the media file to the at least one archive file. In response to the provision request, a requested portion of the stored archive file may be provided, the requested portion being less than the entirety of the stored archive file. The provision request may include an index relative to the end of the archive file, the index corresponding to the requested portion. For each connection period to the computer network, information identifying one of the media file storing the digital media data and the archive file may be automatically recorded in a network connection log.

[0026] In any embodiment, the network connection log may be accessed by the media server and an index relative to the end of the archive file storing the requested state information may be calculated to take into account occasional connectivity gaps between the medical device and the computer network indicated in the network connection log.

[0027] In any embodiment, the media server may request a portion of the stored archive file starting at the calculated index. The media server may provide a portion of the stored archive file starting at the calculated index.

[0028] In any embodiment, the method may further include automatically causing, by the media server, display of a pop-up message when the message indicates that the medical device requires attention.

[0029] In any embodiments, the pop-up message may include a URL to a web page containing additional information about the status of the medical device.

[0030] In any embodiment, the method may further include automatically sending, by the outgoing email server, an email message when the message from the medical device indicates that the medical device requires attention.

[0031] In any embodiments, the email message may include a URL to a web page containing additional information regarding the status of the medical device.

[0032] Yet another embodiment of the present invention includes a non-transitory computer-readable medium encoded with instructions. When executed by a processor, the instructions establish a process for performing a computer-implemented method for storing and retrieving non-connected medical device data. The process includes a process configured to connect a medical device to a computer network in the event of occasional interruptions in connection with the computer network. A process is configured to automatically and repeatedly capture, by the medical device, status information about the medical device and send, by the medical device via the computer network, a message containing the status information. A process is configured to automatically record in a network connection log (a) the time when the medical device is connected to the computer network and (b) the time when the medical device is disconnected from the computer network.

[0033] A process is configured to store digital media data in a media file in a data repository. A process is configured to provide, by the data repository, a requested portion of a stored media file in response to a provision request, the requested portion being less than the entirety of the stored media file, wherein the provision request includes an index relative to an end of the media file, the index corresponding to the requested portion.

[0034] A process is configured to receive, by a media server, messages via a computer network. A process is configured to store, by the media server, status information from the received messages in a data repository, wherein status information from continuously received messages is continuously stored in the data repository despite occasional connectivity interruptions between the medical device and the computer network. A process is configured to receive, by the media server, a status request including a time at which the requested status information was captured.

[0035] A process is configured to access, by a media server, a network connection log and calculate an index relative to the end of a media file storing requested state information taking into account occasional connectivity interruptions between a medical device and a computer network as indicated in the network connection log. A process is configured to request, by a media server, a portion of a stored media file starting at the calculated index. A process is configured to provide, by a media server, a portion of a stored media file starting at the calculated index. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] The present invention will be more fully understood by referring to the following detailed description of specific embodiments in conjunction with the accompanying drawings, in which:

[0037] Figure 1 1 is a schematic block diagram of the main components of a data storage and retrieval system for collecting, storing and retrieving operational data about a medical device according to an embodiment of the present invention.

[0038] Figure 2 can be included in Figure 1 Isometric view of an exemplary medical device in a system.

[0039] Figure 3 is a front view of an exemplary medical device controller that can be coupled to Figure 2 The medical device is included in the embodiments of the present invention.

[0040] Figure 4 For Figure 3 An exemplary hypothetical image displayed on a display screen of a medical device controller.

[0041] Figure 5 is a schematic block diagram illustrating the manner in which a medical device controller may be communicatively coupled to a computer network, such as via a remote link module, according to the prior art.

[0042] Figure 6 According to the prior art Figure 1 A schematic block diagram of a portion of an image feature extraction component used by a media server of a system, in this example an automatic optical character recognizer.

[0043] Figure 7 According to an embodiment of the present invention, Figure 1 An exemplary hypothetical web page generated by a data storage and retrieval system and listing medical devices that may be selected for monitoring.

[0044] Figure 8 According to an embodiment of the present invention, Figure 1 An exemplary hypothetical "real-time" web page display provided by a monitoring station (client device) of a data storage and retrieval system.

[0045] Fig. 9 According to an embodiment of the present invention, Figure 1 An exemplary hypothetical "Last 5 Hours" web page display provided by a monitoring station (client device) of a data storage and retrieval system.

[0046] Fig.10 The diagram is a schematic diagram showing how to store non-connected state information in a message from a medical device in a connected media file according to an embodiment of the present invention.

[0047] Fig.11 To illustrate the embodiment according to the present invention Figure 1 Schematic diagram of the data fields of the network connection log.

[0048] Fig.12 Contains a flow chart schematically illustrating a process according to an embodiment of the present invention, by which: Figure 1 A media server of the system computes an index to data of interest in a media file or archive file.

[0049] Fig.13 The embodiment according to the present invention is shown. Figure 1 An exemplary hypothesis pop-up alert generated by a data storage and retrieval system.

[0050] Fig.14 The embodiment according to the present invention is shown. Figure 1 An exemplary hypothetical email message generated by a data storage and retrieval system of FIG. 1 that includes an alert and a link to more information. DETAILED DESCRIPTION

[0051] Embodiments of the present invention provide a data storage and retrieval system and method for non-connected medical device operational data. A web-based interface allows medical personnel to remotely monitor medical devices, such as implantable heart pumps. The monitoring system records operational data (such as battery temperature and alarms issued by the medical device) in a file. However, because the network connection between the medical device and the monitoring system is intermittent, the file does not contain the connected data stream of each medical device. Instead, the file only records data when the data is available. The file pauses recording during data interruptions, i.e., network connection interruptions. The file can be in the form of a video file, such as an MP4 file, although other suitable file formats can be used.

[0052] The system displays the currently or most recently available data and a list of alarms. If the medical staff wishes to view more detailed information about an earlier time or one of the alarms, the system calculates where the medical device data is recorded in the file. This calculation is novel and non-obvious due to the non-connected nature of the data. For each medical device, the system records the time when the medical device was connected via a network (a "network connection event") and the time when the medical device's network connection was disconnected (a "network disconnection event"). The system uses these times to calculate the index in the file that corresponds to the time of the alarm selected by the user.

[0053] Optionally, the system notifies the user of the alarm by sending an email message and / or a text message and / or by displaying a pop-up window in a browser. The message or pop-up window may include a link (such as a URL) to a web page that displays information about the alarm. The user may click the URL to open the web page.

[0054] definition

[0055] Unless otherwise stated, the following terms used herein shall have the following meanings.

[0056] Contiguous - sharing a common border, touching. Data (such as records, blocks, video frames, etc.) stored contiguously are stored without space between consecutive elements.

[0057] Disjoint - not contiguous; not sharing a common border; not touching. Disjointly stored data (such as records, blocks, video frames, messages, etc.) has spaces between consecutive elements. Disjointly received data (such as records, blocks, video frames, messages, etc.) has missing elements between consecutively received elements.

[0058] Continuous - forming a complete whole without interruption.

[0059] Connect to a computer network - Establish or re-establish a connection to a computer network without establishing a new network session.

[0060] Disconnection-loss from a computer network involves temporarily losing connection to a computer network. For example, in a wireless computer network link, electrical noise, a strong signal from another station, changes in propagation characteristics (such as due to movement or changes in the orientation of an antenna, or the insertion of material between the transmitting and receiving antennas that attenuates or reflects electromagnetic waves) may temporarily cause a loss of connection.

[0061] Digital Media Data - Digital data representing images, video, and / or sound.

[0062] Consecutive - one element follows another similar element without a third element in between. For example, for two consecutive messages, one message follows the other without a third message in between, although there may be a time gap between the two messages.

[0063] Time - A time can include a date and a time within that date, such as 2018-9-12 3:52.

[0064] Main components

[0065] Figure 1 1 is a schematic block diagram of the main components of a data storage and retrieval system 100, which is used to collect, store and retrieve operational data from medical devices represented by exemplary medical devices 102, 104 and 106, and to collect, store and retrieve operational data about medical devices. Although three medical devices 102-106 are shown, other numbers of medical devices may be used. Each medical device 102-106 can be connected to a computer network 108. Each medical device 102-106 is configured to automatically and repeatedly capture status information about the medical device 102-106 and send a message containing the status information via the computer network 108. In some embodiments, the status information is sent in a message encoded as a video frame or a sequence of video frames. (One or more) video frames may, for example, contain a copy of an image displayed on a display screen of the medical device 102-106.

[0066] The computer network 108 may include wired and / or wireless segments. Accordingly, each medical device 102-106 may occasionally experience interruptions in its connection to or through the computer network 108.

[0067] The data repository 110 includes media files 112, such as MP4 videos or other suitable types of media files. As described in more detail below, the data repository 110 records status information about the medical devices 102-106. The data repository 110 is configured to automatically store digital media data, such as video frames, in the media files 112.

[0068] The data repository 110 is also configured to provide, in response to a supply request, a requested portion of the stored media file 112 that is less than the entirety of the stored media file 112. The data repository 110 thereby supports playback of medical device state information, as described in more detail below. For example, the data repository 110 may provide one or more frames of a video stored in the media file 112 for display to a user.

[0069] Such a supply request includes an index relative to the beginning or end of the media file 112. The index corresponds to the beginning of the requested portion, i.e., the distance that the media file 112 of the data repository 110 must seek to reach the beginning of the requested portion. For example, the index may indicate the amount of time or the number of video frames from the beginning or end of the media file 112 to the location where the requested portion begins. For example, the supply request may request a video frame starting at 7 minutes and 15 seconds (7:15) from the beginning of the media file 112. In another example, the supply request may request a sequence of video frames starting at 3,872 frames from the end of the media file 112.

[0070] Optionally, data repository 110 is configured to create and maintain one or more archive files represented by archive files 113. Although three archive files 113 are shown, any number of archive files 113 may be used. In some embodiments configured to maintain archive files 113, when media file 112 reaches a predetermined size (such as approximately 5 hours of state information), data repository 110 makes an archive copy 113 of media file 112 and begins recording from the beginning of media file 112, thereby overwriting state information previously stored in media file 112. In some embodiments, after media file 112 reaches a predetermined size, data repository 110 closes media file 112, renames media file 112 to the next available archive file 113 name, and creates a new media file 112. Copying the contents of media file 112 to archive file 113 and closing and renaming media file 112 to the next available archive file 113 is collectively referred to herein as copying digital media data stored in a media file into at least one archive file.

[0071] The media server 114 may be connected to the computer network 108 and configured to automatically receive messages containing status information from the medical devices 102-106 via the computer network 108. The media server 114 may parse the messages to extract the status information from the messages. For example, in some embodiments, the media server 114 includes an optical character recognizer (OCR) to recognize text in video frames sent by the medical devices 102-106. In some embodiments, the media server 114 may be communicatively coupled to a separate OCR (not shown).

[0072] The media server 114 can then use the recognized text to automatically determine serial numbers or other identifiers of the medical devices 102-106, operating parameters of the medical devices 102-106, whether an alarm has been sounded by one of the medical devices 102-106, etc. The media server 114 is further configured to store status information from the received messages, typically in the form of video frames, in the data repository 110. In addition, as described below, the media server 114 facilitates playback (display to a user) of requested portions of the recorded medical device status information.

[0073] As the media server 114 receives status information, the media server 114 stores the received status information in the data repository 110. However, during the occasional connectivity interruptions experienced by the medical device 102-106 with the computer network 108, the media server 114 does not receive messages from a given medical device 102-106. During each interruption in the network connection, the media server 114 suspends storing status information about the given medical device 102-106 in the data repository 110. Thus, status information from successively received messages may be stored consecutively in the data repository even if there are time interruptions between the successively received messages represented by the network connectivity interruptions. Thus, the consecutive data in the media file 112 does not necessarily represent consecutive time, i.e., status information continuously collected by the medical device 102-106.

[0074] The state information from the continuously received messages is stored continuously in the data repository despite occasional intermittent connectivity between the medical devices 102-106 and the computer network 108. The additional components described below address the problem of correctly indexing into the media file 112 to retrieve the state information associated with the requested time, i.e., taking into account the non-contiguous nature of the state information conveyed by the received messages.

[0075] The network connection log 116 is configured to automatically record: (a) the time when each medical device 102-106 is connected to the computer network 108, and (b) the time when each medical device 102-106 is disconnected from the computer network 108. The time when the media server 114 receives the first message from a given medical device 102-106 can be regarded as the time when the medical device 102-106 is connected to the computer network 108. If the media server 114 has not received any message from the given medical device 102-106 within a predetermined timeout period, it can be assumed that the medical device 102-106 has lost the network connection, and the time when the timeout is detected minus the timeout period can be regarded as the time when the medical device 102-106 is disconnected from the computer network 108.

[0076] After such a disconnection event, if the media server 114 receives a message from the medical device 102-106, it can be assumed that the medical device 102-106 has been connected to the computer network 108 again, and the time when the media server 114 receives the message from the given medical device 102-106 can be regarded as the time when the medical device 102-106 reconnected to the computer network 108.

[0077] In some embodiments, the medical devices 102-106 periodically send or broadcast messages without necessarily including any device status information. These messages are sent to indicate that the corresponding medical device 102-106 is operational. Receipt of these messages indicates that the corresponding sending medical device 102-106 is connected to the recipient via the computer network 108. Therefore, stopping receiving these messages can be used as an indication that the corresponding medical device 102-106 has lost the computer network connection, that is, the beginning of a break in the computer network connection. The time of this loss can be stored in the network connection log 116.

[0078] If one of these messages is subsequently received, it may be assumed that the corresponding medical device 102-106 is again connected to the computer network 108, and the time of this reconnection may be stored in the network connection log 116. A more detailed description of several embodiments of the network connection log 116 is provided herein.

[0079] All messages from a given medical device 102-106 to the media server 114 may be carried over a single network session despite interruptions in the network connection. Alternatively, each or some interruptions may result in termination of a network session, and restoration of the network connection may result in creation of a new network session.

[0080] Figure 2 2 is an isometric view of an exemplary medical device 200. The exemplary medical device 200 is an intravascular blood pump. However, many other types of suitable medical devices may be used as Figure 1 Each medical device in the medical devices 102-106 in the pump 200. The pump 200 includes a pump handle 202, a pump head 204, a conduit 206 connecting the pump handle 202 to the pump head 204, and a connecting hub 208. The conduit 206 is tubular and has a substantially uniform outer diameter 210. The conduit 206 enables the pump head 204 to be in electromechanical communication with the pump handle 202.

[0081] The pump handle 202 communicates with a control circuit (described below) that allows control of a pump head 204. The pump head 204 contains electromechanical components that enable the device to perform various tasks within the body of a human patient, such as pumping blood from a location within the body. The diameter 212 of the pump head 204 is greater than the diameter 210 of the catheter 206. An example of such a percutaneous pump 200 is the Impella Blood Pump System. The blood pump system includes a pump 200 and an automatic impeller controller (AIC) controller for the pump 200.

[0082] Figure 3 FIG. 1 is a front view of an exemplary medical device controller 300 (such as the automatic impeller controller (AIC) controller described above) that can be coupled to Figure 2 The medical device 200 of the present invention and is included in an embodiment of the present invention. The medical device controller 300 provides a human-machine interface for monitoring and controlling the functions of the pump 200. The medical device controller 300 may include a display screen 302 that displays an image of a video stream, wherein the image shows data associated with the medical device 200 over time. In some embodiments, the display screen 302 displays real-time operational and / or medical data associated with the pump 200.

[0083] Figure 4 For Figure 3 2. An exemplary hypothetical image (frame) 400 is displayed on a display screen 302 of a medical device controller 300 of a medical device 102-106. The image 400 may include a waveform 402 showing medical and / or operational data corresponding to the operation of the corresponding pump 200. Examples of medical data shown in the waveform 402 include placement signals and motor current. A waveform 402, such as a motor current waveform, may provide a history, representation, and / or illustration of the motor current over a time period, such as 10 seconds. In this manner, the image 400 includes motor current data associated with the pump 200 over a time period, such as 10 seconds, as well as possible other data (collectively referred to as status information about the medical devices 102-106).

[0084] like Figure 5 As schematically shown in FIG. 1 and described above, the medical device 500 may be communicatively coupled to an associated medical device controller 502. In some embodiments, the medical device controller 502 may be directly communicatively coupled to the computer network 108 and send a display screen 302 ( Figure 3 ) of the real-time (current) content of the video frame stream. Alternatively, the medical device controller 502 can periodically, such as once every 20 seconds, or occasionally, capture a video frame representing the current content of the display screen 302 and send the video frame.

[0085] However, some medical device controllers 502 are unable to send video frames via the computer network 108. In such cases, the remote link module 504 can be communicatively coupled to the medical device controller 502, such as via a cable 506 connected to a video output port 508 of the medical device controller 502. Thus, the remote link module 504 can receive a video frame representing the display screen 302 ( Figure 3 The remote link module 504 may also be communicatively coupled to the computer network 108.

[0086] The remote link module 504 can send video frame streams via the computer network 108, which video frame streams represent the display screen 302 ( Figure 3 ) real-time (current) content. Alternatively, the remote link module 504 can periodically, such as once every 20 seconds, or occasionally, capture a video frame representing the current content of the display screen 302 and send the video frame. Additional information about the remote link module 504 can be found in U.S. Patent Application No. 15 / 941,695, entitled “Systems and Methods for Capturing Data from a Medical Device”, filed on March 30, 2018, assigned to the assignee of the present invention, the entire contents of which are incorporated herein by reference for all purposes.

[0087] To simplify the description, the medical device 200 ( Figure 2 ) or 500( Figure 5 ), its associated medical device controller 300 ( Figure 3 ) or 502( Figure 5 ) and (if used) its associated remote link module 504 ( Figure 5 ) are collectively referred to herein as one of the medical devices 102-106. Figure 1 As discussed, each medical device 102 - 106 may be connected to a computer network 108 .

[0088] As noted, the media server 114 ( Figure 1 ) may include or use an optical character recognizer (OCR) that parses predefined regions of the video frames received from the medical devices 102-106, for example to convert text displayed in the video frames into computer character data, such as ASCII or UNICODE. For example, the OCR may parse region 404 ( Figure 4) to extract the medical device serial number (S / N) and any error indicators, such as "Impeller Stopped," "Air Purification System," and "Impeller Stopped. Backflow." U.S. Patent Application No. ** / ***,***, entitled "Systems and Methods for Time-Based One-Time Password Management for a Medical Device" filed on **-********* in 2018 and assigned to the assignee of the present application, describes such an OCR mechanism, the entire contents of which are incorporated herein by reference for all purposes.

[0089] Figure 6 600 is a schematic block diagram of a media server 114 including an automatic optical character recognizer 600. However, as noted, the OCR may be a separate component. As noted, the media server 114 ( Figure 1 ) can recognize text in video frames sent by the medical devices 102-106 to automatically determine a serial number or other identifier of the medical device 102-106, operating parameters of the medical device 102-106, whether one of the medical devices 102-106 has sounded an alarm, etc. In other embodiments, the medical device serial number or other identifier, operating parameters, alarms, etc. can be encoded as metadata accompanying the video frame(s), and the media server 114 can access the metadata instead of or in addition to recognizing text in the video frame(s).

[0090] A web server 118 such as an HTTP server ( Figure 1 ) provides web pages to clients represented by monitoring stations (clients) 120 and 122. Monitoring stations 120 and 122 may be computers executing conventional web browsers. Although two monitoring stations 120-122 are shown, any number of monitoring stations may be included. Web server 118 communicates with media server 114, such as to obtain a list of medical devices 102-106 for which status information is available in real time or for playback from data repository 110.

[0091] The web page enables users of the monitoring stations 120-122 to select and then monitor individual medical devices 102-106. Figure 7A web page, such as web page 700 shown in FIG. 8 , may display a list of available medical device 102 - 106 serial numbers or other identifiers, and web page 700 may solicit a user to select one of the medical devices 102 - 106 to monitor, such as by clicking on one of the displayed medical device identifiers.

[0092] Figure 8 An exemplary hypothetical web page 800 generated by a web server 118 is shown. The web page 800 displays "real-time" status information about one of the medical devices 102-106. A portion 802 of the web page 800 reproduces the controller screen 302 ( Figure 3 ) on some or all images. Web server 118 ( Figure 1 ) obtains video frames from the media server 114 to generate and update the web page 800, including the portion 802. In some embodiments, the web server 118 streams the video frames from the media server 114 to the monitoring station 120 or 122 for display in the portion 802.

[0093] As noted, the media server 114 can automatically determine whether one of the medical devices 102-106 has sounded an alarm. Additionally, the media server 114 can analyze portions of the images from the medical devices 102-106 to automatically detect anomalies or other conditions that require attention, and / or the media server 114 can automatically detect undesirable conditions, such as substandard computer network connectivity. For example, a substandard computer network connectivity can be declared if the computer network connectivity measured by the percentage of "up" time drops below a predetermined value, an excessive number of interruptions in the computer network connectivity is detected, or an excessive total downtime for a given medical device 102-106 within a predetermined time period is detected.

[0094] Web 800( Figure 8 ) contains a list of alarms, warnings, anomalies, conditions requiring attention, and the like. Each such alarm may be color coded according to urgency or importance. Each alarm displays the time at which the alarm was generated or detected. Some alarms also display additional information. The alarms are listed in chronological order, with the most recent alarm at the top of the list. If portion 804 is not large enough to list all of the alarms, older alarms may be hidden and may be accessed via a scrolling element (not shown) on web page 800. A user clicking on one of the displayed alarms causes web server 118 to display a corresponding medical device controller screen 302 ( Figure 3 ) replaces the live portion 802 of the web page 800, as described in more detail below.

[0095] Web 800( Figure 8 ) includes buttons 808, 810, and 812 that enable the user to select a previous time period (such as "Last 5 Hours" 808, or "Archive" 812 of recorded medical device status information in a "Real Time" 810 view (as described above). In some embodiments, the data repository 110 ( Figure 1 ) records status information about each medical device 102-106 in the media file 112 for a fixed amount of time, such as about 5 hours, and then makes an archive copy 113 of the media file 112 and begins recording in the new media file 112. Alternatively, the data repository 110 renames the media file 112 to the next available archive file 113 and creates a new media file 112. In yet another embodiment, after the media file 112 is filled with a fixed amount of status information (such as about 5 hours of data), as additional status information is received and recorded in the media file 112, the corresponding amount of the oldest data in the media file 112 is moved to the archive file 113. In this way, the media file 112 contains the most recent (5 hours in this example) status information.

[0096] Clicking the "Previous 5 Hours" button 808 causes the web server 118 to display a time on the controller screen 302 of the corresponding medical device (up to 5 hours earlier than the current time). Figure 3 ) replaces the real-time portion 802 of the web page 800. Fig. 9 9 is an exemplary hypothetical web page 900 generated by the web server 118 to display previously recorded status information about one of the medical devices 102-106. As with the real-time display, a portion 902 of the web page 900 reproduces the state information displayed on the controller screen 302 ( Figure 3 ) but at an earlier time.

[0097] Another portion 904 of web page 900 includes user interface controls that enable the user to play / stop 906 the status information in portion 902, view the time 908 at which the status information currently displayed 902 was received, rewind (rewind) the currently displayed status information by 60 seconds 910, rewind (rewind) the currently displayed status information by 10 seconds 912, skip (fast forward) the currently displayed status information by 10 seconds 914, and skip (fast forward) the currently displayed status information by 60 seconds 916. In some embodiments, time 908 may be entered by the user to specify a specific time to begin playback.

[0098] The third area 918 of the web page 900 contains a summary of the alert and is presented in a manner similar to that described with respect to Figure 8 The alarm summary 804 operates in a described manner.

[0099] As noted, in some embodiments, media file 112 ( Figure 1 ) contains only up to a predetermined amount of state information, such as approximately 5 hours of state information, and older state information is stored in one of possibly many archive files 113. The "Archive" button 812 ( Figure 8 and Fig. 9 ) enables a user to command playback of medical device status information from archive file 113.

[0100] Despite Figure 1 1, but the media files 112 used for real-time monitoring may include several files, as shown at 124. Multiple media files 124 may be used, especially in the case where the operating system or data storage facility does not support simultaneous read and write access to a single media file 112. In this case, each file in the multiple media files 124 stores status information for a relatively short period of time, such as approximately 5 minutes of status information. Therefore, when a message is received from a medical device 102-104, one of the multiple media files 124 may be written, and the remaining files in the multiple media files 124 may be read to support playback of the status information to the monitoring station 120-122.

[0101] The media file 112 may be implemented using network digital video recorder (nDVR) technology, such as Wowza nDVR technology and Wowza Streaming Engine, both of which are commercially available from Wowza Media Systems, LLC, 523 Park Point Drive, Suite 300, Golden, CO 80401.

[0102] Compute the index of interesting information in a media or archive file

[0103] As noted, each medical device 102-106 ( Figure 1 ) all send a stream of status information messages via the computer network 108. Each message may be carried by a separate network packet, or a message may require several network packets to transmit the message. Messages and / or packets may include sequence numbers to facilitate detecting discontinuities in the message stream. Optionally or alternatively, the failure to receive any message or packet from a given medical device 102-106 within a predetermined time period may be used to indicate a discontinuity in the computer network connection.

[0104] When the media server 114 receives status information from the medical devices 102-106, the media server 114 ( Figure 1) stores the received status information in the data repository 110. Fig.10 Schematically, the media server 114 suspends storing state information about a given medical device 102-106 in the data repository 110 during each interruption in the network connection with the medical device 102-106. Hypothetical exemplary times for receiving state information from a given medical device 102-106 are indicated by respective time periods of computer network connections (data blocks) 1000, 1002, 1004, 1006, and 1008. Interruptions in the computer network connection, such as interruptions 1010 and 1011, occur between respective pairs of consecutive data blocks, such as between pairs of data blocks 1002-1004 and between pairs of data blocks 1006-1008 from respective medical devices 102-106.

[0105] Although network packets for a given message from a given medical device 102-106, or network packets for a series of messages from a given medical device 102-106, may arrive spaced apart in time, the time between these packets is not considered a break in the network connection. Instead, as used herein, a break in the network connection prevents at least one message from being received from the medical device 102-106 and can be detected by the media server 114.

[0106] At 1012, the time when the computer network connection begins (connection event) and ends (disconnection event) is indicated. Collectively, the data blocks 1000-1008 are referred to as network traffic 1014 from the medical devices 102-106. The network traffic 1014 is disjoint because the data blocks 1000-1008 do not share any common boundaries. Gaps 1010-1011 may occur between adjacent data messages 1000-1008.

[0107] Each message 1000-1008 may include one or more video frames, as indicated at 1016. The media server 114 stores the state information in the media file 1018 (112). Thus, even if there is a time gap 1010 between the consecutively received data blocks 1002 and 1004, the state information from the consecutively received data blocks (e.g., data blocks 1002 and 1004) may be stored contiguously in the data storage repository 1018, as indicated at 1020. Thus, the entire media file 1018 stores data contiguously.

[0108] The media file 1018 (112) may be accessed using an index (e.g., a time index or a frame index) represented by exemplary index 1024. Index 1024 indicates the starting distance of the data of interest from the beginning of the media file 1018 (112), i.e., index 1024 is a pointer relative to the beginning of the media file 1018 (112). Similarly, any archive file 113 ( Figure 1 ). However, in some cases, index 1026 may indicate the starting distance of the data of interest from the end of media file 1018.

[0109] As noted, the network connection log 116 ( Figure 1 ) is configured to automatically record: (a) the time each medical device 102 - 106 is connected to the computer network 108 , and (b) the time each medical device 102 - 106 is disconnected from the computer network 108 . Fig.11 1 is a diagram showing data fields 1100 and assumed exemplary contents of a network connection log 116 according to an embodiment of the present invention. The network connection log 116 includes one record for each computer network connection event and one record for each computer network disconnection event.

[0110] Each record includes: a field 1102, which identifies the medical device, such as by a medical device serial number; a time field 1104, which identifies the time when the medical device identified in field 1102 experienced an event; an event type field 1106, which indicates whether the corresponding event is a connection event or a disconnection event; and a field 1108, which indicates in which file (one of the media files 112 or the archive file 113) the status information (e.g., a video frame) from the event is stored.

[0111] For simplicity, the hypothetical exemplary contents of the data field 1100 only include information about one medical device (IC 2958). However, information about other medical devices may be scattered throughout the network connection log 116. That is, records for various medical devices 102-106 may be stored in a single network connection log 116.

[0112] When the user commands playback of non-real-time (i.e., recorded) medical device status information, the media server 114 ( Figure 1 ) automatically determines which file (i.e., one of the media file 112 or the archive file 113) contains the desired medical device state information, and the media server 114 calculates an index 1024 or 1026 relative to the beginning or end of the appropriate file 1018 storing the requested state information. Fig.10 ). Users can access the web pages 800 and 900 ( Figure 8 and Fig. 9) command to playback non-real-time medical device status information. For example, the user can click on the alarm 804 ( Figure 8 ) or 918( Fig. 9 ), select "Last 5 hours" 808 or "Archive" 812 ( Figure 8 ), back 910 or 912 ( Fig. 9 ) or jump forward in time 914 or 916, or enter a specific time to start playback 908. In response, the media server 114 uses the network connection log 116 field 1100 ( Fig.11 ) to automatically determine which file, i.e., one of the media file 112 or the archive file 113, contains the desired medical device state information. In addition, the media server 114 calculates an index 1024 or 1026 ( Fig.10 ), in which the requested status information is stored.

[0113] When the user commands playback of non-real-time medical device status information, the user implicitly or explicitly specifies the time at which the media server 114 receives the status information of interest. Figure 8 ) or 918( Fig. 9 ) has an associated time. Clicking an alert causes the web server 118 to use the time of the selected alert. Invoking a "back 10 seconds" button 910 causes the web server 118 to calculate a time 10 seconds earlier than the time of the currently displayed status information. Similarly, invoking a "jump forward 60 seconds" button 916 causes the web server 118 to calculate a time 60 seconds later than the time of the currently displayed status information. Optionally, the user can enter a specific time 908.

[0114] The media server 114 records the network connection log 116 in field 1100 ( Fig.11 ) to search for a connect-disconnect event pair (for a specified medical device ID, field 1102) that spans an implicitly or explicitly specified time. If such a connect-disconnect event pair is found, field 1108 identifies in which file the status information is stored. If such a connect-disconnect event pair is not found, then the status information for the specified time is not available and an error message may be displayed to the user.

[0115] Fig.12 Contains a schematic diagram showing the method for calculating index 1024 ( Fig.10 ) is a flowchart of a process 1200 of . The process 1200 accepts two input parameters: a time of interest (Time) and a medical device identifier (Device ID), i.e., an identifier of one of the medical devices 102-106. The time of interest (Time) may be a time implicitly or explicitly specified by a user, such as by specifying a time in the Alarm Summary 804 or 918 ( Figure 8 or 9) by selecting a specific alarm, or by clicking the "Back 10 Seconds" button 912.

[0116] At 1202, an internal variable (offset within the media file) is initialized to zero and the process 1200 enters a loop. At the beginning of the loop, at 1204, the first network connection event entry for the specified medical device (device ID) is retrieved from the network connection log 116 and the time of the connection event is stored in a temporary variable (segment connection time). At 1206, the first network disconnection event entry for the specified medical device (device ID) is retrieved from the network connection log 116 and the time of the disconnection event is stored in a second temporary variable (segment disconnection time). The term "segment" herein refers to a period of time of continuous network connection for a specified medical device 102-106.

[0117] The duration of the computer network connection (segment) is calculated by subtracting the segment connection time from the segment disconnection time, and the calculation result is stored in a third temporary variable (segment duration).

[0118] At 1210, the time of interest (Time) is compared with the network segment connection time and the network segment disconnection time to determine whether the time of interest (Time) is between the network segment connection time and the network segment disconnection time, that is, whether the time of interest (Time) occurs during the current network segment (the time period of network connection). At 1212, if the time of interest (Time) is between the network segment connection time and the network segment disconnection time, control is transferred to 1214. At 1214, another temporary variable (offset within the network segment) is calculated by subtracting the network segment connection time from the time of interest (Time). The offset within the network segment indicates the distance at which the time of interest occurs in the current network segment (the time period of network connection). A graphical example of an assumed offset value within a network segment is shown at 1028 ( Fig.10 ).

[0119] At 1216, a return value (Index) is calculated by adding the offset within the network segment to the offset within the media file. The return value (Index) corresponds to Fig.10 Index 1024 is illustrated in FIG. 1200. Control returns to the caller of process 1200.

[0120] However, if at 1212, the time (Time) of interest is not between the segment connection time and the segment disconnection time, control is transferred to 1220. The time (Time) of interest does not occur during the current segment (time period of network connection). At 1220, the time (Time) of interest is compared with the segment connection time. If the time (Time) of interest is before the segment connection time, that is, less than the segment connection time, then the time (Time) of interest occurs before the next segment of the network connection, that is, during the network connection interruption. Therefore, the media or archive file 112 or 113 does not contain status information for the time (Time) of interest. Control is transferred to 1222, where an error (time not in the media / archive file) is returned, and then control is returned to the caller of process 1200.

[0121] On the other hand, at 1220, if the time of interest (Time) is not less than the network segment connection time, that is, not before the network segment connection time, control is transferred to 1224. The subsequent network segment may include the time of interest (Time). The offset in the media file is increased by the network segment duration, thereby moving the offset in the media file to the beginning of the next network segment in the media or archive file. Control returns to the beginning of the loop, that is, back to 1204, where the next network connection event entry is retrieved from the network connection log 116.

[0122] If the monitoring station 120-122 is displaying recent information, such as the "Last 5 Hours" web page 900 ( Fig. 9 ), then use index 1026 relative to the end of media file 1018 ( Fig.10 ) rather than the beginning of the media file 1018 may be more convenient. As new messages arrive from the respective medical devices 102-106, new status information is added to the end of the media file 1018. Thus, the end of the media file 1018 contains the latest status information. Typically, the user is interested in the latest status information, and the user interface controls 910-916 enable the user to go back or jump forward relative to the displayed information. Therefore, at least in some cases, it may be advantageous to calculate an index relative to the end of the media file 1018 rather than relative to the beginning of the media file 1018.

[0123] The process 1200 can be easily modified to calculate the index relative to the end of the media file 1018. According to the modification, in operation 1214, the offset within the network segment is calculated by subtracting the time of interest (Time) from the network segment disconnection time. In operation 1220, the time of interest (Time) is compared with the network segment disconnection time. If the time of interest (Time) is greater than, that is, later than, the network segment disconnection time, then control is transferred to 1222, otherwise control is transferred to 1224.

[0124] As used in the claims, "the end of a media file" refers to the beginning of a media file or the end relative to the beginning of a media file. In other words, the end of a media file refers to either end of the media file.

[0125] As noted, when a user commands playback of non-real-time, i.e., recorded, medical device status information, web server 118 sends a video to media server 114 ( Figure 1 ) sends a status request including the time of interest. In response, the media server 114 automatically determines which file, i.e., one of the media file 112 or the archive file 113, contains the desired medical device status information, and the media server 114 calculates an index 1024 or 1026 relative to the beginning or end of the appropriate file 1018 ( Fig.10 ), in which the requested status information is stored. The media server 114 uses Fig.12 The process 1200 of calculating the index 1024 or 1026. The media server 114 then retrieves the stored state information stored in the media file 112 or the archive file 113 (as the case may be), which starts from the calculated index. The media server 114 provides the retrieved state information to the web server 118, and the web server 118 provides the state information to the appropriate client 120 or 122.

[0126] Thus, the media server 114 is configured to receive a status request including a time at which the requested status information was captured. The media server 114 is also configured to access the network connection log 116 and calculate an index 1024 ( 1025 ) relative to the beginning or end of the media or archive file 1018, taking into account occasional interruptions 1010, 1011, etc. of the computer network connection between the medical devices 102-106 and the computer network 108 as indicated in the network connection log 116. Fig.10), the media or archive file 1018 stores the requested state information. The media server 114 is also configured to request a portion of the stored media file 112 or archive file 113 starting from the calculated index 1024. The media server 114 is further configured to provide a portion of the stored media file 112 or archive file 113 starting from the calculated index 1024.

[0127] Optionally, when a new alarm is issued, the web server 118 displays a message on one or more of the monitoring stations 120-122. Fig.13 The pop-up message is illustrated by the hypothetical pop-up message 1300 in FIG. A web application executed in conjunction with the media server 114 and / or the web server 118 may create a pop-up message. The pop-up message may include a clickable link that includes a URL that, if invoked, redirects to a page similar to Fig. 9 web pages, as if the user were in area 918 or 804 ( Figure 8 ) is the same as clicking the corresponding alert in the

[0128] Optionally, whenever an alarm is raised, the outgoing email server (SMTP server) 126 ( Figure 1 ) will send an email message to one or more predefined email addresses. Fig.14 An exemplary hypothetical email message 1400 is shown. The email message 1400 may include information about the alert, and a link 1402 including a URL that, if invoked, opens a web application similar to Fig. 9 The web page of the web page is as if the user clicked on area 918 or 804 ( Figure 8 ) is the same as the corresponding alarm in .

[0129] The media server 114, web server 118, and data repository 110 may be implemented by a processor executing instructions stored in a memory. The instructions may include instructions for implementing reference Fig.12 The process 1200 described and referenced Figure 1 , Figure 7-Figure 11 , Fig.13 and Fig.14 Instructions that describe the process.

[0130] The network connection log 116 may be implemented with a relational database and may include a front end (load balancer) that distributes access requests between multiple copies of the database to support a large number of requests. Similarly, the data repository 110 may include a front end (load balancer) that distributes the load between multiple copies of the media files 112 and / or archive files 113. The web server 118 and / or the media server 114 may include respective front ends (load balancers) that distribute the load between multiple copies of the web server 118 and / or the media server 114.

[0131] In some embodiments, one media file 112 stores state information from only one of the medical devices 102-106, i.e., each medical device has an associated media file 112. However, in other embodiments, one media file 112 stores state information from multiple medical devices 102-106. Similarly, one archive file 113 can serve one or more medical devices 102-106.

[0132] Although the present invention has been described by way of the exemplary embodiments described above, modifications and variations may be made to the illustrated embodiments without departing from the inventive concepts disclosed herein. For example, although specific parameter values ​​such as timeouts and recording times may be described with respect to the disclosed embodiments, within the scope of the present invention, the values ​​of all parameters may vary over a wide range to accommodate different applications. Unless otherwise indicated in the context or understood by one of ordinary skill in the art, terms such as "about" refer to within ±20%.

[0133] As used herein, including in the claims, the term "and / or" used in connection with a list of items refers to one or more items in the list, i.e., at least one item in the list, but not necessarily all items in the list. As used herein, including in the claims, the term "or" used in connection with a list of items refers to one or more items in the list, i.e., at least one item in the list, but not necessarily all items in the list. "Or" does not mean "exclusive or."

[0134] Although aspects of the embodiments may be described with reference to flowcharts and / or block diagrams, the functions, operations, decisions, etc. of all or a portion of each block or combination of blocks may be combined, separated into separate operations, or performed in other sequences. All or a portion of each block, module, or combination thereof may be implemented as computer program instructions (such as software), hardware (such as combinatorial logic, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), processors, or other hardware), firmware, or a combination thereof.

[0135] The media server 114, the data repository 110, the web server 118 and / or the network connection log 116 or portions thereof may be implemented by one or more processors executing instructions stored in a memory or controlled by instructions stored in a memory. Each processor may be a general-purpose processor (such as a central processing unit (CPU)), a graphics processing unit (GPU), a digital signal processor (DSP), a dedicated processor, etc., or a combination thereof, as appropriate.

[0136] The memory may be a random access memory (RAM), a read-only memory (ROM), a flash memory, or any other memory or combination thereof suitable for storing control software or other instructions and data. The instructions defining the functionality of the present invention may be delivered to the processor in a variety of forms, including but not limited to information permanently stored in a tangible, non-temporary, non-writable storage medium (e.g., a read-only memory device within a computer, such as a ROM or a device readable by a computer I / O accessory (such as a CD-ROM or DVD disk), information variably stored on a tangible, non-temporary, writable storage medium (e.g., a floppy disk, removable flash memory, and a hard drive), or information communicated to the computer via a communication medium (including a wired or wireless computer network). In addition, although embodiments may be described in conjunction with various illustrative data structures, a variety of data structures may be used to implement the system.

[0137] The disclosed aspects or parts thereof may be combined in ways not listed above and / or not explicitly required. In addition, the embodiments disclosed herein may be suitably practiced without any elements not specifically disclosed herein. Therefore, the present invention should not be considered to be limited to the disclosed embodiments.

[0138] As used herein, numerical terms such as "first," "second," and "third" are used to distinguish various elements from one another and are not intended to indicate any particular order or total number of elements in any particular embodiment. Thus, for example, a given embodiment may include only a second local variable and a third local variable.

Claims

1. A data storage and retrieval system for non-connected medical device data, the system include: a medical device capable of connecting to a computer network, the medical device experiencing occasional connectivity interruptions to the computer network, and configured to automatically and repeatedly capture status information about the medical device and send a message containing the status information via the computer network; a network connection log configured to automatically record: (a) the time when the medical device is connected to the computer network, and (b) the time when the medical device is disconnected from the computer network; A data repository configured to automatically perform the following operations: storing digital media data in media files; as well as providing, in response to a provision request, a requested portion of the stored media file, the requested portion being less than the entirety of the stored media file, wherein the provision request includes an index relative to an end of the media file, the index corresponding to the requested portion; A media server capable of being connected to the computer network and configured to automatically perform the following operations: receiving the message via the computer network; storing status information from received messages in the data repository, wherein status information from continuously received messages is continuously stored in the data repository despite the occasional interruption of the connection between the medical device and the computer network; receiving a status request, the status request including a time to capture requested status information; accessing the network connection log and calculating an index relative to the end of the media file storing the requested status information taking into account the occasional connectivity interruptions between the medical device and the computer network as indicated in the network connection log; requesting a portion of the stored media file starting at the calculated index; and The portion of the stored media file starting at the calculated index is provided.

2. The system according to claim 1, in: The data repository is further configured to: storing the digital media data in at least one archive file; When a predetermined amount of digital media data is stored in the media file, copying the digital media data stored in the media file to the at least one archive file; as well as providing a requested portion of the stored archive file in response to a provision request, the requested portion being less than the entirety of the stored archive file, wherein the provision request includes an index relative to an end of the archive file, the index corresponding to the requested portion; The network connection log is further configured to automatically record information identifying one of the media file and the archive file storing the digital media data during a period of each connection to the computer network; and The media server is further configured to: taking into account the occasional connectivity interruptions between the medical device and the computer network as indicated in the network connection log, accessing the network connection log and calculating an index relative to the end of the archive file storing the requested status information; requesting a portion of the stored archive file starting at the calculated index; and The portion of the stored archive file starting at the calculated index is provided.

3. A system according to any preceding claim, in, The media server is further configured to automatically cause display of a pop-up message when the message indicates that the medical device requires attention.

4. The system according to claim 3, in, The pop-up message includes a URL of a web page containing additional information about the status of the medical device.

5. The system of any preceding claim, further comprising an outgoing email server configured to send an email message when a message from the medical device indicates that the medical device requires attention.

6. The system according to claim 5, in, The email message includes a URL to a web page containing additional information regarding the status of the medical device.

7. A method for storing and retrieving data from a non-connected medical device, the method include: connecting the medical device to the computer network in the event of occasional interruptions in connection with the computer network; automatically and repeatedly capturing status information about the medical device by the medical device, and sending a message containing the status information by the medical device via the computer network; automatically recording in a network connection log (a) the time when the medical device was connected to the computer network and (b) the time when the medical device was disconnected from the computer network; storing the digital media data in a media file in a data repository; providing, by the data repository, a requested portion of a stored media file in response to a provision request, the requested portion being less than the entirety of the stored media file, wherein the provision request includes an index relative to an end of the media file, the index corresponding to the requested portion; receiving, by a media server via the computer network, the message; storing, by the media server, status information from received messages in the data repository, wherein status information from continuously received messages is continuously stored in the data repository despite the occasional interruption of the connection between the medical device and the computer network; receiving, by the media server, a status request including a time at which requested status information is captured; accessing, by the media server, the network connection log and calculating an index relative to the end of the media file storing the requested state information taking into account the occasional connection interruptions between the medical device and the computer network as indicated in the network connection log; requesting, by the media server, a portion of the stored media file starting at the calculated index; and The portion of the stored media file starting at the calculated index is provided by the media server.

8. The method according to claim 7, further comprising: include: storing the digital media data in at least one archive file; When a predetermined amount of digital media data is stored in the media file, copying the digital media data stored in the media file to the at least one archive file; providing a requested portion of the stored archive file in response to a provision request, the requested portion being less than the entirety of the stored archive file, wherein the provision request includes an index relative to an end of the archive file, the index corresponding to the requested portion; automatically recording, in the network connection log, for each connection period to the computer network, information identifying one of the media file and the archive file storing the digital media data; accessing, by the media server, the network connection log and calculating an index relative to the end of the archive file storing the status information of the request taking into account the occasional connection interruptions between the medical device and the computer network as indicated in the network connection log; requesting, by the media server, a portion of the stored archive file starting at the calculated index; and The portion of the stored archive file starting at the calculated index is provided by the media server.

9. The method according to claim 7 or 8, further comprising: include: When a message indicates that the medical device requires attention, display of a pop-up message is automatically caused by the media server.

10. The method according to claim 9, in, The pop-up message includes a URL of a web page containing additional information about the status of the medical device.

Citation Information

Patent Citations

  • Systems and Methods for Capturing Data from a Medical Device

    US20180374568A1