Computing and Communication Systems and Methods
20210112113 ยท 2021-04-15
Assignee
Inventors
Cpc classification
H04M3/54
ELECTRICITY
H04L67/02
ELECTRICITY
H04L67/04
ELECTRICITY
H04M7/0042
ELECTRICITY
International classification
Abstract
Computing and communication systems and methods include one or more servers communicatively coupled with a computing device through a telecommunications network. In implementations one or more data stores are communicatively coupled with the server(s). One or more user interfaces displayed on the computing device display a website provided by the server(s) and accessed using a browser. A file selector is displayed on the website. The file selector corresponds with a file that may already reside on the computing device and/or on a file share accessible by the computing device. The file selector is configured to initiate opening of the file locally on the computing device without necessarily downloading a copy of the file through the browser. The systems and methods may automatically initiate calls and/or texts on non-cell phones (e.g., desk phones, turret type phones and/or VOIP phones) in response to selection of a phone number displayed on a website.
Claims
1. A computing and communication system, comprising: one or more servers communicatively coupled with a computing device through a telecommunications network; one or more user interfaces displayed on a display of the computing device, the one or more user interfaces displaying: an Internet website provided by the one or more servers and accessed using an Internet browser; and a file selector displayed on the Internet website; wherein the file selector corresponds with a file that is one of: already residing on the computing device; and already residing on a file share accessible by the computing device; wherein the file selector is configured to, in response to being selected, initiate opening of the file locally on the computing device without downloading a copy of the file through the browser; and wherein the opening of the file is facilitated at least in part by a local software application running on the computing device.
2. The system of claim 1, further comprising a file path selector displayed on the Internet website, the file path selector configured to facilitate a user selection of a location of the file.
3. The system of claim 1, further comprising a folder path selector displayed on the Internet website, the folder path selector configured to facilitate a user selection of a location of a folder.
4. The system of claim 1, further comprising a folder selector displayed on the Internet website, wherein the folder selector corresponds with a folder already residing on one of the computing device and the file share; wherein the folder selector is configured to, in response to being selected, initiate opening of the folder locally on the computing device without downloading a copy of the folder's contents through the browser, and wherein the opening of the folder is facilitated at least in part by the local software application.
5. The system of claim 1, wherein the one or more servers comprise a web server, and wherein the local software application opens the file in response to one or more communications from the web server.
6. The system of claim 1, wherein the one or more user interfaces further display file information displayed on the Internet website, the file information corresponding with the file, the file information comprising one or more of: a file type, a file size, a file location, a file creation date, a file creation time, a last edited date, a last edited time, a last accessed date, a last accessed time, and an excerpt of one or more words within the file.
7. The system of claim 1, wherein the one or more user interfaces further comprise an authentication interface configured to authenticate a user.
8. A computing and communication method, comprising: providing one or more servers communicatively coupled with a computing device through a telecommunications network; displaying one or more user interfaces on a display of the computing device, the one or more user interfaces displaying: an Internet website provided by the one or more servers and accessed using an Internet browser; and a file selector displayed on the Internet website; wherein the file selector corresponds with a file that is one of: already residing on the computing device; and already residing on a file share accessible by the computing device; in response to receiving a user selection of the file selector, initiating opening of the file locally on the computing device without downloading a copy of the file through the browser; wherein the opening of the file is facilitated at least in part by a local software application running on the computing device.
9. The method of claim 8, further comprising displaying a file path selector on the Internet website, the file path selector configured to facilitate a user selection of a location of the file.
10. The method of claim 8, further comprising displaying a folder path selector on the Internet website, the folder path selector configured to facilitate a user selection of a location of a folder.
11. The method of claim 8, further comprising displaying a folder selector on the Internet website, wherein the folder selector corresponds with a folder already residing on one of the computing device and the file share; wherein the folder selector is configured to, in response to being selected, initiate opening of the folder locally on the computing device without downloading a copy of the folder's contents through the browser, and wherein the opening of the folder is facilitated at least in part by the local software application.
12. The method of claim 11, further comprising, in response to user modification of the folder's contents locally on the computing device, automatically modifying a copy of the folder's contents on at least one of the one or more servers to match the modifications on the computing device.
13. The method of claim 8, wherein the file resides on the computing device prior to user selection of the file selector.
14. The method of claim 8, further comprising displaying, on the Internet website, file information, the file information corresponding with the file, the file information comprising one or more of: a file type, a file size, a file location, a file creation date, a file creation time, a last edited date, a last edited time, a last accessed date, a last accessed time, and an excerpt of one or more words within the file.
15-20. (canceled)
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0033] Implementations will be discussed hereafter using reference to the included drawings, briefly described below, wherein like designations refer to like elements. The drawings are not necessarily drawn to scale.
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
DESCRIPTION
[0041] Implementations/embodiments disclosed herein (including those not expressly discussed in detail) are not limited to the particular components or procedures described herein. Additional or alternative components, assembly procedures, and/or methods of use consistent with the intended computing and communication systems and methods may be utilized in any implementation. This may include any materials, components, sub-components, methods, sub-methods, steps, and so forth.
[0042] The systems and methods disclosed herein provide new features for allowing web pages to have greater interaction with a local machine from which the web pages are accessed. Throughout this disclosure the systems and methods are called Breezeway Link components/methods as shorthand. Additionally, the term Breezeway Link is used herein to identify a selector on a web page (such as a link) which performs an operation on a local machine. The systems and methods utilize a set of technologies working in concert to perform local computer actions from web pages. For example, in implementations a web page communicates with a web server to authenticate the user. A separate local software application or phone application (mobile phone, voice over internet protocol (VOIP), or desk phone) communicates with the same web server. The Breezeway Link web server process matches these two secure connections and thus allows for a request made on a web page to interact with the local user computer and/or phone device. When the user activates (for example, clicks) a Breezeway Link selector on the web page, the appropriate information is transmitted by the web browser to a Breezeway Link capable server which then forwards the appropriate action to the local computer's Breezeway Link software application to perform local actions such as open a file (for example an MS WORD, MS EXCEL, PDF, JPG, TIFF, etc.) or search for or open a local folder or file (where the path is sent back to the server for later use) or to perform other user requested tasks on the phone or mobile device such as preparing or executing a phone call or preparing or sending a text message.
[0043] Web pages allow users to interact with web servers through links, buttons, selectors, and other user actions. However, by default web pages are not allowed to access the user's personal computer directly in any way. On mobile phone devices, web browsers do allow for phone calls by clicking on phone numbers within a web page. A link on a web browser on a personal computer may also be selected to execute a call on a cellular phone. However, there is a need for systems and methods that allow users to click on a link in a web browser on a personal computer to initiate a phone communication using a non-cellular phone, such as a desk phone (communicating with standard phone lines) or a turret type phone or a desk-based VOIP phone. The systems and methods disclosed herein allow for browsers on personal computers to initiate phone calls and texts on a phone that is not a cellular phone, such as a VOIP phone or a turret type phone or desk phone. Web browsers limit local computer interactions to file uploading/downloading (and save or open in some applications). In order for web applications to support access to reference files (such as PDF, WORD, EXCEL, JPG, TIFF, and other file formats) for a particular data record, the web application must first have access to a copy of such file by either having such reference file previously uploaded or having access to the file share hosting such reference files. The systems and methods disclosed herein allow for web pages to grant users access to files which may already reside on their own computers. Similarly, the systems and methods disclosed herein allow for web pages running on personal computers and/or non-phone devices to initiate phone interactions including calls and/or text messages.
[0044] Referring to
[0045] A web server 116 is shown communicatively coupled with the database server directly and also indirectly with other system elements through network 110. The web server may facilitate the administrator(s) and/or end users interacting with the system through one or more websites. Remote servers 112 may be used for computing/processing/storage and are shown communicatively coupled with other system elements through network 110. An application server 114 is shown communicatively coupled directly with device 102 and with the DB server and also indirectly with other elements through network 110. The application server may facilitate the administrator(s) and/or end users interacting with the system through one or more mobile software applications. A mobile device 118 is shown communicatively coupled with other system elements through network 110. Device 118 includes a display 120 and may allow an administrator and/or an end user to interact with elements of the system through a browser installed on the mobile device and/or through a software application installed on the mobile device. Device 118 could be a mobile phone or tablet or the like. An end user computing device 122 is shown communicatively coupled with system elements through network 110 and includes a display 124. Through this device an end user may interact with the system through one or more user interfaces displayed on the display. Although device 122 is illustrated as a desktop personal computer, it could alternatively be a laptop, tablet, or other computing device. A phone 126 is shown communicatively coupled with system elements through network 110. The phone 126 is not a mobile cellular phone but is a desk phone (such as communicating through a standard phone line) or turret type phone or a voice over internet (VOIP) phone.
[0046] Although some communicative couplings are shown in
[0047] Referring now to
[0048] In implementations the web server 206 could be communicatively coupled with a data store 207 to facilitate its operation (such as by using the data store to match users and credentials, adjust user settings and preferences, and/or for authentication and the like). The server 206 may also, in implementations, be communicatively coupled with a separate server 214 (and/or thereby with a separate data store 215) to facilitate the methods. For example, in implementations a banking website may be hosted by a bank server, but a separate server operated by an administrator of the system 100 may be used to facilitate the methods disclosed herein. For example a separate web service operated by server 214 may communicate with server 206, with server 214 being the main web server providing the web site the user is accessing and with server 206 (which may be a web server or other server type) facilitating the Breezeway Link features (by communication between servers 206 and 214). In other implementations, however, the bank server itself (206) may be configured to perform relevant method steps itself so that no separate server is needed, and the Breezeway Link features may be in effect embedded with web server 206. The elements of the local computer or phone system of
[0049] Referring still to
[0050] In implementations the device running the BLA process/application 202 (with access to the current user session on a personal computer or phone) and the device running the BLWC (web page within a web browser) 210 may not be the same device, though in the implementations shown in the drawings they are the same device. The Breezeway Link Services (BLSs) could be implemented on an external web/cloud server. A web connection 212 communicatively couples the BLS server with the BLWC device 210.
[0051] Local computer or phone actions 204 are performed by the user interacting with the web page, as described to some extent above. This may include, for example, opening a document with a local software application such as opening an EXCEL spreadsheet with MICROSOFT EXCEL, opening a WORD document with MICROSOFT WORD, opening a PDF file with ADOBE ACROBAT, and so forth. The actions could also include opening a file manager on a directory, finding a local file or folder, dialing a phone number, and so forth.
[0052] As a use case example, suppose a user is visiting a banking website, and on the banking website the user clicks on a Breezeway enabled link. This sends a signal to the bank's web server, which includes a request to open a document. The BLS server will receive the message and relay it over to the BLA component on the user's machine or otherwise give instructions to the BLA component to open the file locally. This example could include any browser, such as CHROME, SAFARI, and so forth. The BLA in this example is a separate software application on the operating system (OS) of the local computer, not a browser plugin. The bank's web server in this example could be BLS server 206, and server 206 could include an add-in or the like that facilitates the Breezeway Link Services, so that the BLWC simply communicates directly with server 206, the server 206 then communicates directly with the BLA 202, and the file is opened.
[0053] Alternatively or additionally, the BLWC could communicate directly with another server, server 214, which in this case is not a bank server, but is a server operated by an admin of the system 100. In this case the server 214 and BLS server 206 are in communication with one another, so that the BLWC 210 may communicate directly with server 214, which in turn communicates with BLS server 206 to effectuate a signal from BLS server 206 to BLA 202 to open the file. Alternatively or additionally, The BLWC 210 may not communicate directly with server 214. For example in some cases a browser can only communicate to a known server, so in this example the browser may only be able to communicate with the bank server (BLS server 206 in this example) and not the server 214 directly. Accordingly, the BLWC may communicate with the bank server (BLS server 206) which in this case may then communicate with server 214 for authentication and/or to receive instructions, and in response to one or more response signals from server 214 the BLS server 206 may then send one or more signals to BLA 202 to open the file locally or perform another local action. The BLS server 206 could also, upon receiving a communication from the BLWC 210, send instructions to the BLWC 210 to communicate with server 214, and then either the BLWC 210 or server 214 could send a signal to BLS server 206 to effectuate a signal to BLA 202 to execute the desired process. In these ways, the BLS servers act as a type of relay system to the local computer to facilitate opening of files locally on the local machine.
[0054] The BLA in implementations is actually a software program running on the operating system of the local machine, not part of the browser, and so can execute a process to request the finding and/or opening of a file or making a phone call or sending a text message as the case may be.
[0055] In implementations the BLWC resides on the web browser. When a user clicks on the web component there are usually a few possible actions, including an action to find a file and/or an action to open a file. If the BLWC sends a find file signal to the web server this is relayed to the BLA with instructions to find the location of the file. The file could be any file type and/or it could be a directory (for example the directive could be to find the directory for an asset, e.g., where all the files for the asset reside or just the location of the single latest appraisal PDF document). The instructions are relayed to the BLA on the local computer. The BLA on a PC could be, for example, a WINDOWS software application (though in other implementations it could be a LINUX or MACOS or other operating system software application) that has access to the operating system (OS) and can ask the OS to search for the file or open the file. The instructions are relayed to the BLA on the user's machine to open the file or otherwise perform the action.
[0056] From the perspective of the end user the website may appear as any other website, with no visual difference. With the above banking example, the user's banking website may appear as it always does regardless of whether the Breezeway Link components/services are active. When the Breezeway Link components/services are enabled, however, when the user clicks on a document or folder link on the banking website, if the document or folder already resides on the user's machine (or a file share such as on a LAN which the local machine has access to), the local document or folder is opened instead of a copy being downloaded from the remote banking server.
[0057] A Breezeway Link on a website is in some ways similar to other linksit is an anchor with information indicating parameters to follow. The Breezeway Link may initiate a JAVASCRIPT/AJAX program on the page and the AJAX program may initiate a Secure WebSocket communication to the BLS server, which matches up the request and communicates to the BLA to find/open the file. The message from the BLS server to the BLA may include an indication that the file is on the local computer and/or instructions to open the file locally. If the file is not stored locally then a signal can be sent back to the server saying that the file is not stored locally. In that case the file can be downloaded or some other action can take place, the file may also be downloaded to the local computer on a separate channel without involving the web browser. If the file is already stored locally, it could be stored locally in a cloud folder, for example it could be a local copy of a file in a DROPBOX, BOX, GOOGLE DRIVE, MICROSOFT ONEDRIVE, or other cloud storage folder. The file could, accordingly, be backed up to a cloud drive, but a local copy could be present on the machine, and this may be the copy that the BLA requests to find/open.
[0058] The file could alternatively be located on a file share, such as a network attached storage (NAS) or mapped network drive folder, and the BLA may request to open the file from the NAS or file share or networked folder on the local computer. In any case, the file may be a file that is shared among users so that multiple users may edit the file at different times. Thus if a first user navigates to a website and clicks on the document link, the document from the file share may be opened on the first user's computer for editing and the like. If a second user later navigates to the website and clicks on the document link, the same document from the file share may be opened again, this time on the second user's computer, for editing and the like. In implementations the systems and methods herein need not deal with situations where multiple users attempt to open the same document at the same time, because the operating systems and file sharing applications of the user computers (DROPBOX, BOX, GOOGLE DRIVE, etc.) may already have built in mechanisms to resolve situations where one user's computer requests to open a file that is already opened on another user's computer.
[0059] As indicated above, in implementations the BLWC is not a plugin on the browser itself, but the web server could have visual links embedded into the website (a controller may be used for this purpose) so that when a user clicks on an appropriate link the processes described herein initiate opening a file locally. Links can run JAVASCRIPT, but a model view controller (MVC) on the web server or separate BLS server may be used to facilitate the functionality to open the file on the local machine.
[0060] In other implementations the BLWC could be or could include a plugin on/in the browser itself instead of a component on the web server. The plugin itself could be configured to scan a page, find anchors that are Breezeway Link compatible, and communicate directly to the Breezeway Link Services server as necessary. In this case the BLS server may be a standalone service separate from any website, so that when the user clicks a link the signals/instructions go through the BLS server through Secure WebSocket instead of going through the web server.
[0061] The systems and methods may be configured to listen (or regularly check) on a folder to automatically upload new files to the web server or another server when the local file/folder is modified. It can look every minute, for instance, or it can look on some other schedule. The user in this case just works normally and saves files locally, and on the back end everything is automatically saved to the appropriate remote server. The user in implementations may receive a notification or email that the files were uploaded/modified, the notification/email being facilitated by the system 100. This loader facility accordingly may automatically transmit files over to a remote server if something new is found, or may modify/delete files/folders or signal that some modification/deletion occurred locally.
[0062] The above banking example is just a representative example, and there are others that could be given. In the financial and mortgage industries for example there are large data exchanges that happen on a regular basis. A mortgage owner that owns a thousand residential mortgages may receive daily updates (sometimes called a tape or tape load) which may include EXCEL spreadsheets with datasuch as who has paid, who hasn't paid, payment amounts, payment dates, etc. When the owner receives these they can be saved into a directory. The loader facility may automatically listen on the folder where such files are placed so that it can upload them automatically to a remote server, process them, and automatically report to the user that the files were uploaded. More detailed reports could be facilitated by the system 100 and could include information from the files themselves, such as a report indicating the total amounts paid, the total amounts delinquent, and so forth.
[0063] In financial and in many other industries it is common for employees to have many files in a large shared folder, such as a shared BOX or DROPBOX or other shared location. The systems and methods disclosed herein allow for more accurate and up-to-date files. Traditionally if a user makes a change to a file but has not yet uploaded the changed file to a web server, then if a second user downloads the file from the web server the second user has an out-of-date file. With the system and methods herein, however, when the second user clicks on a link to open the file it opens the same file that the prior user already changed, so that the second user has the most up-to-date file.
[0064] As indicated to some extent above, Breezeway Link Web Components (BLWCs) in implementations are standard HTML/AJAX components which are configured to communicate with Breezeway Link Services (BLSs). BLSs in implementations are web services, such as web application programming interface (WEBAPI) servicer or model view controller (MVC) actions that are designed to perform Breezeway Link functions. Local computer or phone Breezeway Link Applications (BLAS) in implementations are local computer applications (such as WINDOWS FORMS (WINFORMS), windows presentation format (WPF), console applications, or similar user applications on non-WINDOWS computers or phone devices) and/or services which allow for interaction with the current user session. BLAs may communicate with BLSs though Secure WebSockets or other network protocols. The initial handshakes between the BLAs and the BLSs may include session identification tokens; the BLA may include facilities for capturing user-specific credentials such as fields for usernames/passwords and/or Globally Unique Identifiers (GUIDs) or use single-sign-on facilities. A BLS may message a BLA to request such information from the user and the user may choose to change the active BLA's authentication credentials. After receiving a request from a BLWC (such as to open a file or folder or prepare or execute a call or text) or after receiving a message from a BLA (including data such as file path, phone number, contents, date information, handshaking information, or upload and process instructions), the BLS may process the request or message, may attempt to find a matching BLA or BLWC session respectively, and may relay instruction or information from one Breezeway Link (system) component to another.
[0065] Referring now to
[0066] In
[0067] As indicated above, in implementations to actually use the Breezeway Link methods the user may have a web application that is Breezeway Link compatible and that connects to Breezeway Link Services.
[0068] There are a variety of situations in which the systems and methods disclosed herein will be useful, some of which are given above, and others of which are described below. Suppose a financial web-based software includes many loan/property details. A user would like to quickly access some related documents such as appraisals, closing documents, and financial models both to edit and/or review. A Breezeway Link could be used to quickly access the appropriate related files within the local computer without the need to have multiple copies of a working document and without having to search through large file systems or having to transfer large amounts of file data since the Breezeway Link simply instructs the local computer to open the appropriate file and resources already existing at the local machine.
[0069] As a further example, suppose that while analyzing a portfolio of assets from a cloud-based web application a user would like to quickly reference the financial model in an EXCEL spreadsheet related to a particular investment. The web application could contain a Breezeway Link to effectuate quick access to the relevant document(s).
[0070] Additionally or alternatively, a user my wish to quickly reach a client on a client relationship management (CRM) or customer lifecycle management (CLM) application. The user could click on the phone number on his desktop web browser and his desk phone or turret type phone or VOIP phone could immediately prepare or execute a call or text. With regards to the system facilitating phone calls and the like, one or more user interfaces could be configured to allow a user to select a default operation. Interface 300 of
[0071] A user can easily upload files to web servers through Secure WebSocket by placing them within some designated upload folder. Files, such as servicer remittance information (daily/monthly dept payments), could be automatically uploaded and processed by web servers thanks to Breezeway Link triggers (in this case a BLA to BLS process).
[0072] Reference is now made to
[0073] Interface 500 also includes a number of document/folder fields (each identified by DOC/FOLDER1, 2, 3, etc.). The fields are shown as blank in
[0074] Referring now to
[0075] In implementations the mapping may also automatically upload all contents of the folder to the remote server (BLS or another server). In such implementations, if the user adds a document to the folder on the local machine, it will be automatically uploaded to the BLS or other server as well. Similarly if a user deletes or renames a file within the folder (or the folder itself), those changes may be automatically mirrored on the BLS or other server. In this way the BLS or other server may have a copy of the folder and its contents, but when the user returns to this website page and clicks on the book icon, it is the local copy on the user's local machine that is opened. This means that the local computer does not necessarily download a new copy each time the user selects the file on a web browser. This is contrary to how file links on web pages normally work. In general, when a user is on a web page and selects a document link, a separate copy of the document is automatically downloaded to the local machine from a remote server associated with the web page (a web server or other server or the like). If the user continues clicking on the document link then additional copies of the document will be downloaded again and again. If the user for example navigates to the page several times in a day and clicks on the document link the local computer may have multiple downloaded copies of the file. These are normally downloaded to a local DOWNLOADS folder or to another default location determined by the browser settings.
[0076] The downloading of new copies of the document from the remote server is inefficient if the user already has the document stored on the local machine. Additionally, such downloading wastes computing resources (memory, processing resources) and contributes to the quicker degradation of computer memory components as well as leads to confusion as to which copy of the document is the most recently edited version. Solid state drive (SSD) storage and flash memory, for example, degrade with repeated cycles. The more write cycles, the more quickly the memory/storage degrades. Accordingly, the systems and methods herein improve the functioning of a computer itself in at least a few ways. One way is that the systems and methods herein reduce the overall write cycles of a memory or storage element, which in the case of a solid state drive (SSD) or flash memory will increase the life and reduce the degradation of the memory. Additionally, the systems and methods herein reduce the amount of energy needed for data transfers as well as memory/storage used at any given time, freeing up memory/storage for other items, by not having redundant copies of a file in the local DOWNLOADS folder or other location, but instead simply opening the local copy of the document/folder each time the user clicks on the document/folder link on the web page instead of downloading a copy of the file. In at least these ways, the systems and methods described herein improve the functioning of computers.
[0077] The storage of one copy of each selected document/folder on the remote web server may be useful in some instances in case a file or folder on the local machine is accidentally deleted or moved or the user changes to a computer without a direct link to that file store. In some implementations the remote web server (BLS or other server) could show files and/or folders that used to be on the local machine but that have been deleted, and if a user selects a BLWC selector referring to such a file or folder, that file or folder may be downloaded to the local machine instead of opening a local copy since, in that circumstance, there is not a local copy yet or any longer. In some implementations, Breezeway Link components could be used to track the location of downloaded files on the local machine (so that the user does not need to manually move the copy to the relevant folderthough it could be manually placed in the appropriate folder as well) so that later, when the user clicks on the link in the browser, it reverts to opening the local copy instead of downloading a new copy. In some implementations the downloaded file (downloaded when it is missing from the local machine) may by default download to the relevant folder on the local machine, instead of to the local machine's downloads folder, so that the user does not need to manually move the downloaded file to the appropriate folder.
[0078] In some web applications, the plus icon at the bottom of interface 500 may be used to add new rows, for new documents/folders, so that the user may link to as many documents/folders as desired. The SAVE selector may be selected to save the configuration. In implementations if the user navigates away from the web page or clicks to close the window, a popup may ask the user whether he/she wishes to first save the configuration. In other implementations if the user navigates away or closes the web page the changes are simply not saved. In some implementations an auto-save feature may be active, which may save changes automatically (and/or which may allow a user to revert to prior configurations in case a change was made by accident or if the user otherwise wishes to undo it).
[0079] Referring now to
[0080] The first or top book icon/selector of
[0081] Each magnifying glass icon of
[0082]
[0083] The user interfaces of
[0084] Although the end user has been described herein in a way that may imply an individual end user, in implementations the end users could be part of an organization. For example the end users may be employees of a bank itself accessing a bank web page and reviewing documents related to loans or the likein which case different employees may be able to review the same local document instead of each downloading a new copy. In that type of a setting there may be a shared folder or file share which holds the original document and each individual employee's local machine may simply access the document on the file share instead of downloading a new copy from the web page.
[0085] In implementations when the user opens/accesses a document that is linked to from interface 500 the user may of course edit and save changes to the document, since the document is already the local version, and since these changes do not change the file path. When the user later opens the document from the web page, it simply uses the file path and opens the local file, which already reflects the last changes.
[0086] As another use case example, in financial appraisal settings there may be multiple appraisal documents (such as PDFs) and financial analysis spreadsheets (such as MS EXCEL files). Things can get confusing if each time the user clicks on a document on a related web page a new copy of the file is downloaded to the local machine. Accordingly, the ability to use the link to simply open up the local copy ensures that the user does not have multiple copies of the same file which could lead to errors (for example some changes being made in one file, and different changes being made to another file, instead of all relevant changes being made to a single file when there is only one file to begin with).
[0087] There are other advantages of the systems and methods disclosed which will be apparent to the practitioner of ordinary skill in the art.
[0088] The systems and methods herein accordingly allow for local computer processes to be activated from within web pages, including but not limited to actions that allow for local files to be opened from actions within web pages, local file information to be accessed by authenticated web services, local file size/path information to be captured by authenticated web services, and Secure WebSocket file upload into a particular web service session. They also allow for a phone call to be started or prepped (numbers set up or entered on the phone device but not executed until receipt of a user's manual execution selection/command) and allow for a phone text to be sent or prepped (recipient number entered on the phone device and/or an initial text message drafted, but not actually sent until receipt of a user's manual execution selection/command).
[0089] In implementations in which the systems and methods herein are used to initiate phone communications, the Breezeway Link components could be used to communicate with VOIP servers. The phone which the system uses to initiate a communication may be a WiFi enabled phone, but in implementations it may not be a cellular phone configured to communicate through cellular towers but may be a desk phone (communicating through traditional phone lines) or a VOIP phone, or turret type phone for example.
[0090] Although not shown in
[0091] Although this description includes descriptions of specific visual icons (that of a book, a magnifying glass for a search function, and so forth), other visual indicators and selectors could be used on the user interfaces (such as, by non-limiting example, underlining to indicate a linked file or folder, a border to indicate a selectable link, a different visual image than those shown in the drawings, etc.). Similarly, although specific hardware and/or software components are described herein, including specific software applications and software languages, in implementations other software applications, software languages, hardware components, and the like may be used to implement the systems and methods, as will be understood by the practitioner of ordinary skill in the art.
[0092] In places where the phrase one of A and B is used herein, including in the claims, wherein A and B are elements, the phrase shall have the meaning A and/or B. This shall be extrapolated to as many elements as are recited in this manner, for example the phrase one of A, B, and C shall mean A, B, and/or C, and so forth. To further clarify, the phrase one of A, B, and C would include implementations having: A only; B only; C only; A and B but not C; A and C but not B; B and C but not A; and A and B and C.
[0093] In places where the description above refers to specific implementations of computing and communication systems and methods, one or more or many modifications may be made without departing from the spirit and scope thereof. Details of any specific implementation/embodiment described herein may, wherever possible, be applied to any other specific implementation/embodiment described herein. The appended claims are to encompass within their scope all such changes and modifications as are within the true spirit and scope of this disclosure.
[0094] Furthermore, in the claims, if a specific number of an element is intended, such will be explicitly recited in the claim, and in the absence of such explicit recitation no such limitation exists. For example, the claims may include phrases such as at least one and one or more to introduce claim elements. The use of such phrases should not be construed to imply that the introduction of any other claim element by the indefinite article a or an limits that claim to only one such element, and the same holds true for the use in the claims of definite articles.
[0095] Additionally, in places where a claim below uses the term first as applied to an element, this does not imply that the claim requires a second (or more) of that elementif the claim does not explicitly recite a second of that element, the claim does not require a second of that element.
[0096] Additionally, in some implementations, the act of opening a file locally may cause it to be downloaded from a cloud server or services onto the local device and such behavior is included in the claim statement of already residing on a file share accessible by the computing device. From the local machine's point of view, the file is being opened as if it were already residing on its hardware, but the file may actually not be stored locally but on a remote machine (e.g., DROPBOX, BOX, GOOGLE DRIVE, etc.). The file in such instances is, however, not downloaded through the Internet browser from the web server (or a device connected with the web server) providing the website on which the link is displayed to the user.