# Patent

## Title
Management service to manage a file

## Abstract

A method to manage a file is provided herein. The method includes use of a management service that receives the file from a peripheral device. The management service determines at least one file destination associated with a web-based service for the file. The management service transmits the file to at least one file destination with an application programming interface associated with the web-based service and an authorization stored on the management service.

## Background
BACKGROUND
Peripheral devices scan documents and transmit the documents to a file destination. In order to transfer the file to the file destination, the peripheral device includes firmware for each file destination and the peripheral device is connected to the file destination and/or a computing device to transmit the file.



BRIEF DESCRIPTION OF THE DRAWINGS
Non-limiting examples of the present disclosure are described in the following description, read with reference to the figures attached hereto and do not limit the scope of the claims. In the figures, identical and similar structures, elements or parts thereof that appear in more than one figure are generally labeled with the same or similar references in the figures in which they appear. Dimensions of components and features illustrated in the figures are chosen primarily for convenience and clarity of presentation and are not necessarily to scale. Referring to the attached figures:
FIG. 1 illustrates a schematic diagram of a system to manage a file according to an example;
FIG. 2 illustrates a block diagram of an apparatus to manage a file according to an example;
FIG. 3 illustrates a block diagram of the system of FIG. 1 according to a further example;
FIG. 4 illustrates a block diagram of a computer readable medium useable with the system of FIG. 1 according to an example; and
FIGS. 5-6 illustrate flow charts of methods to manage a file according to examples.



DETAILED DESCRIPTION
In the following detailed description, reference is made to the accompanying drawings which form a part hereof, and in which is illustrated by way of specific examples in which the present disclosure may be practiced. It is to be understood that other examples may be utilized and structural or logical changes may be made without departing from the scope of the present disclosure.
Peripheral devices may include firmware to connect to a computing device and/or to transfer data to a web-based service over the internet. When the peripheral device is connected to a computing device, the peripheral device transfers the file to the computing device and saves the file on a hard drive of the computing device. To transmit the file to one or a plurality of file destination, the user then separately logs into each web-based service and manually uploads the file from the hard drive to the web-based service. When the peripheral device is a web-connected device, the peripheral device includes a web application for each web-based service that a file may be transmitted to. Each web application is predefined and only allows a user to send the document to a specific destination that cannot be modified. In order to transmit the document to a plurality of destinations, each web application must be separately accessed and used via the peripheral device. Moreover, any notifications provided are manually initiated using a program separate from the web application.
In examples, a method, apparatus, and system to manage a file is provided herein. The method includes use of a management service that receives the file from a peripheral device. The management service determines at least one file destination associated with a web-based service for the file. The management service transmits the file to at least one file destination with an application programming interface associated with the web-based service and an authorization stored on the management service.
As used herein, the phrase “management service” refers to a centralized web-based service that connects a peripheral device to a plurality of web-based services. The management service may include a combination of device(s), such as servers; and application(s), such as software and/or firmware, that link, set-up, and/or authorize web-based service accounts. A user can use the management service to access and manage a plurality of web-based service accounts through programs and setting on the management service that are accessible via, for example, a website. The management service includes application programming interfaces (APIs) of one or more web-based or cloud-based services to facilitate access and management of the web-based service accounts.
As used herein the phrase “web-based service” refers to an electronic service accessible via a network connection, such as a webpage or website on the World Wide Web or a private network.
As used herein the phrase “management application” refers to an application that connects a peripheral device to a file management service. The management application enables transmission of files and/or content therebetween. The management service allows for files to be managed over a network and/or the like in a centralized location that does not require the peripheral device to manage the application programming interface. Instead, the management service stores and manages the application programming interface for multiple web-based services and manages the user accounts associated with the web-based services to enable access to the web-based services and transmission of data therebetween, such as the transmission of the file to the file destination.
As used herein, the term “manage” or “managed” refer to a plurality of actions, such as transmit, evaluate, store, save, email, reformat, and/or modify.
As used herein, the term “file” refers to an electronic document capable of being saved or stored, modified, evaluated, reformatted on a computing device or data store and/or emailed or transmitted over a network.
As used herein, the phrase “peripheral device” refers to a device connectable to a computing device via a network connected to allow transmission of data therebetween. The peripheral device includes firmware to connect the peripheral device to the management service.
As used herein, the phrase “file destination” refers to a device and/or service that is capable of receiving a file, such as memory or datastore connected to a computing device and/or an email server.
As used herein, the term “instruction” refers to content used to manage the file, such as the destination, settings, and/or accounts.
As used herein, the terms “scan,” “scans,” and “scanning” include electronically scanning a media, such as a sheet of paper, and/or scanning data from an electronic device, such as an electronic copy of a document from a computing device and/or mobile device or a message, i.e., an email message.
FIG. 1 illustrates a schematic diagram of a system 100 to manage a file using a management service 12. The system 100 includes a link 10 that connects a management service 12, a peripheral device 14, and a web-based service 16. The system 100 also includes a data store 18, but may include further components.
The link 10 represents generally one or more of a cable, wireless, fiber optic, local, or remote connections via a telecommunication link, an infrared link, a radio frequency link, or any other connectors or systems that provide electronic communication. The link 10 may include, at least in part, an intranet, the Internet, or a combination of both. The link 10 may also include intermediate proxies, routers, switches, load balancers, and the like.
The management service 12 represents generally any computing device or combination of computing devices configured to communicate with a peripheral device 14 and a web-based service 16 via a web-service application programming interface 13 over a link 10, such as an internet connection. For example, the management service 12 includes a management device with a memory that stores a set of instructions and a processor coupled to the memory to execute the set of instructions to manage the file, as further described below in FIG. 2.
The management service 12 receives the file from the peripheral device 14 and determines at least one file destination associated with the web-based service 16 for the file. For example, the at least one file destination includes a storage account on a web-based service 16 or cloud service, such as DropboxTM, FilesAnywhere®, Evernote®, Box.netSM, or OfficeDrop. The management service 12 may also receive an instruction associated with the file from the peripheral device 14 and/or a setting associated with an account on the management service 12. Based on the file and instruction, the management service 12 transmits the file to at least one file destination of a linked web-based service 16.
The management service 12 includes at least one application programming interface 13 or web-based service application programming interface 13 and may include a plurality of application programming interfaces. Each of the at least one application programming interface 13 is associated with a web-based service 16 that is capable of being linked to the management service 12 to transmit the file to the at least one file destination. The web-based service application programming interface 13 interacts with the management service 12 and the web-based service 16 to transmit the file to the file destination.
The file transmission to the file destination associated with the web-based service 16 also includes an authorization stored on the management service 12. The authorization includes, for example, a username/password combination, a key, and/or other authentication methods that verify or confirm access to an account on a web-based service 16. Using the management service 12 enables the user to access one or more web-based services via a single service that contains the application programming interfaces 13 for the web-based services 16. The management service 12 also reduces the limitations of the peripheral device 14, such as firmware for the plurality of application programming interfaces 13 and compatibility issues between the peripheral device 14 and the web-based service 16.
The peripheral device 14 transmits the file to the management service 12. For example, the peripheral device 14 may be a multi-function printing and scanning device, a scanning device, a wireless or mobile device, and/or a computing device that scans a file in an electronic format. The peripheral device 14 may also include a management application associated with the management service 12 that enables transmission of the file to the management service 12. The management application may also enable content to be received from a user and/or provided to the user, via for example a user interface and/or buttons on the peripheral device 14. The content may include initiation of a scan, selection of options related to the file, such as quality, the at least one destination, and/or management of the file; and/or a notification of the status of the transmission, such as success and failure of the transmission to the management service 12 and/or the at least one destination associated with a web-based service 16.
The peripheral device 14 represents generally a peripheral device 14 and/or a combination of peripheral devices that is/are not part of the management service 12 and is more or less dependent on the management service 12. For example, the peripheral device 14 may expand the management service's 12 capabilities, while not forming part of the core architecture of the management service 12. As illustrated in FIG. 1, the peripheral device 14 is connected to the management service 12, such that the peripheral device 14 interacts with the management service 12 via the link 10.
The web-based service 16 is an electronic service accessible via a network connection, such as a webpage on the World Wide Web or a private network. The web-based service 16 is capable of receiving a file from the management service 12. After receiving the file, the web-based service 16 performs a specific function or task with the file, such as storage of the file in an account, editing or modifying the file, and/or providing the file for use by others, i.e., in a common repository. Typically, the web-based service 16 includes user accounts that provide a user with the ability to create and access an account associated with the web-based service 16 through the link 10, such as an internet connection. Advantages of the web-based service 16 include the ability to access the account from anywhere via the link 10. Examples of the web-based service 16 include DropboxTM, FilesAnywhere®, Evernote®, Box.netSM, or OfficeDrop.
The data store 18 represents generally any memory configured to store data that is accessible via the link 10, such as by the management service 12, the peripheral device 14, and the web-based service 16 in the performance of functions associated therewith. For example, the data store 18 may store account information, the file, the set of instructions or instructions to be executed by the processor, and/or application programming interfaces 13 for a web-based service 16.
FIG. 2 illustrates a block diagram of an apparatus 200 useable with a management service 12 of FIG. 1. The apparatus 200 includes a management device 20, for example, a server and/or a combination of servers. The management device 20 is connected to a peripheral device 14, such that the management device 20 receives a file from the peripheral device 14.
The management device 20 manages the file using, for example a memory 24, a processor 26, and the application programming interface 13. The memory 24 stores a set of instructions. The processor 26 is coupled to the memory 24 to execute the set of instructions to perform functions to manage the file. The set of instructions cause the processor 26 to receive the file from the peripheral device 14, determine at least one file destination associated with a web-based service 16 for the file, and transmit the file to the at least one file destination using an authorization stored on the management service 12. The memory 24 may also store data resulting from the execution of the set of instructions, such as the file and/or account information, as discussed below.
The management service 12 uses the application programming interface 13 to transmit the file to the at least one file destination that is also associated with the web-based service 16, i.e., the file destination. The application programming interface 13 is associated with the web-based service 16, such as DropboxTM, as illustrated in FIG. 1. The application programming interface 13 is on and/or connected to the management service 12. The at least one application programming interface 13 may include a plurality of application programming interfaces (APIs) 13, with one application programming interface 13 being associated with each web-based service 16 that the management service 12 is connectable to. The web-based services 16 provided are determined by the management service 12 and/or account settings established by the user. For example, the management service 12 may include a plurality of application programming interfaces, such as a DropboxTM API associated with DropboxTM and a FilesAnywhere® API associated with FilesAnywhere®.
To use the APIs, a user sets up an account through the management service 12 and links the management service account to a web-based service account. For example, the user may link a DropboxTM account and FilesAnywhere® account to the management service account, such that the management account may then transmit files to the user's DropboxTM account and/or Files Anywhere® account based on the user's instructions and/or account settings. The user is then capable of logging into and/or accessing the management service 12. The management service 12 becomes the connection between the peripheral device 14 and the web-based service 16, allowing submission of files to the file destination, for example, one or both of the DropboxTM account and FilesAnywhere® account, using a single service or log-in through the management service 12.
The user accounts on the management service 12 may include user information including web-based services, access or log-in information for the web-based service, preferences for the transmission of the file to the file destination. For example, a user may add preferences to the account by selecting the web-based service and/or file destination for the file. The preferences may be manually entered initially and updated by the user manually over time and/or automatically updated and customized based on the user's actions and/or selections over time. The user may also schedule a time to receive and/or transmit the file to the file destination. The management service 12 further includes a website to access and update the user account and settings of the management service 12.
The management service 12 may also include an instruction associated with the file. The instruction associated with the file may be received from the user via the peripheral device 14, such as through a user interface. The instruction may also be associated with the file by a setting of the user account on the management service 12. The file may be temporarily stored and/or transmitted to the data store 18 and/or a content device connected to the apparatus 200 via the link 10, as illustrated in FIG. 1.
Referring to FIG. 3, a block diagram of the system 100 of FIG. 1 is illustrated according to a further example. The block diagram illustrates the link 10 connecting the management service 12 to the peripheral device 14, the web-based service 16, the data store 18, and the notification service 39. The management service 12 includes at least the apparatus of FIG. 2, such as, the management device 20 with, for example, a management engine 22 associated with the memory 24, the processor 26, the web-based service API 13 and may include further components, such as a web-based services engine 30, an account engine 31, an authorization engine 32, and a notification engine 33.
The management engine 22 represents generally any combination of hardware and/or programming to manage a file that is received from the peripheral device 14, such as a scanning device 14A. For example, the management engine 22 interacts with firmware on the peripheral device 14 to assist with scanning and transmitting the file to the management service 12.
The web-based services engine 30 represents generally any combination of hardware and/or programming to manage and link the web-based services associated with the management device. For example, the web-based service engine 30 may include the web-based services API for each web-based service 16 associated with the management service 12.
The account engine 31 represents generally any combination of hardware and/or programming to manage a user account on the management service 12. For example, the each user of the management services has a distinct account on the management service and each user account on the management service may be linked to web-based services via the user's web-based service account which is distinct from the management service account, but capable of being linked via the web-based service API. The management service 12 uses information associated with the user's account information to access the web-based service(s) associated therewith, such information includes account settings and preferences for the management services 12 and/or user names and passwords for the web-based accounts.
The authorization engine 32 represents generally any combination of hardware and/or programming to authorize a transmission of the file. For example, the authorization engine 32 verifies access to the linked web-based services account via for example a user name and password and/or additional methods such as a security key or certificate to ensure a secure transmission of the file. The authorization engine 32 may also contain additional information to commence the transmission of the file to the file destination.
The notification engine 33 represents generally any combination of hardware and/or programming to provide a notification of the status of a transmission of the file to the at least one file destination. For example, the notification engine 33 may indicate a success or failure at different times during the transmission of the file from the peripheral device 14 to the file destination, such as when the file is transmitted to and/or received by the management service 12 and when the file is transmitted to and/or received by the file destination.
The management engine 22, the web-based services engine 30, the account engine 31, the authorization engine 32, and notification engine 33 may include the memory 24 and the processor 26, as illustrated and described in FIG. 2. The functionality of the management engine 22, the web-based services engine 30, the account engine 31, the authorization engine 32, and notification engine 33, are further described below in FIG. 4.
The management service 12 functionalities may be accomplished using a memory 24 on the management device 20 or a data store 18 connected to the management service 12 via the link 10. The data store 18 is physically located on the management device 20 and/or on a separate device connected to the management device 20 via the link 10, such as a database on a server, or a disc insertable into the management device 20. The data store 18 stores a variety of content 38, such as account information 38A, a file 38B, the web-based services API 13, and/or the set of instructions 38D that are executed by the processor 26. The data store 18 may be adapted to store additional content based on the functionalities of the management service 12.
The set of instructions 38D stored in the data store 18 include instructions to receive the file from the peripheral device, determine at least one file destination associated with a web-based service 16 for the file, and transmit the file to the at least one file destination using an authorization stored on the management service 12. The memory 24 and/or data store 18 may also store content 38 resulting from the execution of the set of instructions 38D, such as the file, i.e., a copy of the file received from the peripheral device 14. Moreover, the account information stored in the data store 18 may include a user account for each user that contains a log-in for the web-based service, an account setting, such as a file destination, a file format, and a notification instruction. The web-based service application programming interface 13 includes an application programming interfaces associated with the web-based service, where each web-based service may include a separate web-based service API.
The files 38B may be stored on a database, such as the data store 18 and/or separate databases. The files 38B may be stored on the database temporarily before transmission to the file destination and/or permanently as a copy of the file transmitted to the file destination or as the file destination. The data store 18 may also store a set of instructions 38D to manage the file from the peripheral device 14, such as the scanning device 14A, via the management service 12. The set of instructions 38D may be stored in a data store 18, such as a database external to the management service 12, a disc, and/or a data storage device on the management device 20, such as the memory 24.
The peripheral device 14 is illustrated as a scanning device 14A. The peripheral device 14 represents generally a peripheral device 14 and/or a combination of peripheral devices 14. The peripheral device 14 represents a device that is not part of the management service 12 and is more or less dependent on a computing device, such as the management device 20 of the management service 12. For example, the scanning device 14A may expand the management service's 12 capabilities, while not forming part of the core architecture of the management device 12.
As illustrated in FIG. 3, the scanning device 14A is connected to the management service 12, such that the scanning device 14A interacts with the management service 12 via the link 10. The scanning device 14A scans a document to create an electronic file to be received by the management service 12. The peripheral device 14 may further include a management application 34 on and/or connected to a peripheral device 14. The management application 34 provides firmware and/or an application programming interface between the peripheral device 14 and the management service 12 to facilitate transmission of the file and communication therebetween.
The system 100 is illustrated to further include a user interface 35. The user interface 35 is connected to or integrated into the peripheral device 14, such as the scanning device 14A. For example, the user interface 35 may be a display on a peripheral device 14 and/or connected to the peripheral device 14 over a network, such as the link 10 of FIG. 1. The user interface 35 displays content, such as a list of options and/or a notification, from the management service 12 to a user and receive input from the user, such as an instruction and/or selection for transmission to the management service 12. The user interface 35 may be coupled to the management application 34 to display content, such as scan and file destination options, to a user and receives input from the user. For example, the user interface 35 may be utilized to initiate the scan, to provide a file destination 36 on a web-based service 16 and/or to indicate a selection of a notification method for a status of the transmission of the file
The web-based service 16 is an electronic service accessible via a network connection, such as a website 37 on the World Wide Web or a private network. The web-based service 16 is capable of receiving a file from the management service 12. After receiving the file, the web-based service 16 performs a specific function or task with the file, such as storage of the file in an account, editing or modifying the file, and/or providing the file for use by others, i.e., in a common repository. Examples of the web-based service 16 include DropboxTM, FilesAnywhere®, Evernote®, Box.netSM, or OfficeDrop. The web-based service 16 includes a file destination 36 that receives the file transmitted from the management service 12.
The system 100 further includes a notification service 39 to provide a notification of a successful and/or unsuccessful transmission of the file to the at least one file destination. The notification service 39 represents generally a computing device, a peripheral device, and/or a combination of computing and peripheral devices. The notification service 39 may be part of the management service 12 or a separate device that is not part of the management service 12 but may expand the management service's 12 capabilities, while not forming part of the core architecture of the management service 12. As illustrated in FIG. 3, the notification service 39 is connected to the management service 12 via the link 10, such that the notification service 39 interacts with the management service 12. The notification service 39 may perform at least one function, such as display a message regarding the transmission of the file from the peripheral device 14 to the web-based service 16 via the management service 12. For example, the message may provide information to a user regarding the successful and/or unsuccessful transmission of the file, such as confirmation of a successful receipt of the file to the management service 12 and/or successful transmission of the file to the at least one file destination 36. In addition, the notification may be delivered to the user through, for example, a mobile device 39A, such as a text message, an email 39B, and/or a graphical user interface on a computing device 39C, such as an instant message; however, other communication devices with the functionality described herein may also be used to perform the above described functionality.
Referring to FIG. 4, a block diagram of an example of a computer readable medium 400 useable with the system of FIG. 1 is illustrated. The computer readable medium 400 represents generally any combination of hardware and/or software to manage a file from a peripheral device 14. The computer readable medium 400 is part of the system of FIG. 1, such as a management service 12 on a cloud server system that operates with the management device 20. The management device 20 includes a memory 24 and a processor 26. For example, the memory 24 stores a set of instructions 38D and the processor 26 execute the set of instructions 38D. The set of instructions 38D cause the processor 26 to receive the file from the peripheral device 14, determine at least one file destination 36 associated with a web-based service 16 for the file, and transmit the file to the at least one file destination 36 using an authorization stored on the management service 12. The processor may further include instructions to: update an account, connect to a web-based service 16, authorize transmission of the file to the file destination 36, and/or notify the user of the status of the transmission of the file from the peripheral device 14 to the management service 12 and/or the web-based service 16. The processor 26 represents generally any processor configured to execute program instructions stored in the memory 24 to perform various specified functions.
An interface 42 provides interactive functions to a user via the peripheral device 14. The interface 42 represents generally an interface connected to the peripheral device 14 and/or the management device 20.
The memory 24 is illustrated to include an operating system 43 and applications 44. The operating system 43 represents a collection of programs that when executed by the processor 26 serve as a platform on which applications 44 may run. Examples of operating systems 43 include various versions of Linux's Red Hat®, Microsoft's Windows®, Apple's Mac OS®, Apple's iOS® (trademark licensed from Cisco), and Google's AndroidTM.
Applications 44 represent program instructions that when executed by the processor 26 functions as an application, such as software that manages a file from a peripheral device 14. The executable program instructions stored in memory 24 are illustrated as including a management module 45, a web-based services module 46, an account module 47, an authorization module 48, and a notification module 49.
The management module 45 represents program instructions that when executed by a processor 26 cause the processor 26 to execute the instructions to receive the file from the peripheral device 14. The executable instructions stored in the management module 45 may include a set of instructions 38D from the data store 18 (FIG. 3). In response to the receipt of the file from the peripheral device 14, the management module further provides instructions to determine at least one file destination 36 associated with a web-based service 16 for the file and transmits the file to the at least one file destination 36 using an authorization stored on the management service 12.
The web-based services module 46 represents program instructions that when executed by a processor 26 cause the processor to run the web-based service application programming interface 13 and establish a connection between the management service 12 and the web-based service 16. For example, the web-based services module 46 may use the web-based service application programming interface 13 to connect to a user's account on the web-based service 16. The executable instructions stored in the web-based services module 46 may include the set of instructions 38D from the data store 18 (FIG. 3).
The account module 47 represents program instructions that when executed by a processor 26 cause the account settings to be set-up, updated, and/or modified. The account settings may be received from the website 37 via a computing device and/or through content from the peripheral device 14. For example, the account settings may be set-up from a computer, a mobile device 39A, and/or a scanning device 14A. The executable instructions stored in the account module 47 may include the set of instructions 38D from the data store 18 (FIG. 3).
The authorization module 48 represents program instructions that when executed by a processor 26 cause the connection between the management service 12 and the web-based service that authorizes the transmission of the file therebetween. The executable instructions stored in the authorization module 48 may include the set of instructions 38D from the data store 18 (FIG. 3) and authorization information may also be stored on the data store 18. In response the authorization, the file may be transmitted to the file destination 36 on the web-based service 16. The authorization module 48 provides further instructions to the processor 26 to provide a secure connection.
The notification module 49 represents program instructions that when executed by a processor 26 cause the processor to provide a notification of the transmission of the file to the at least one file destination. The notification may include a notification to a user via the peripheral device 14 and/or a separate device, such as a computing or mobile device. The notification may further trigger an event by the management service 12 and/or the web-based services 16 using, for example, the file. The executable instructions stored in the notification module 49 may include a set of instructions 38D from the data store 18 (FIG. 3).
Referring to FIGS. 3-4, the management engine 22, the web-based services engine 30, the account engine 31, the authorization engine 32, and the notification engine 33 are described as combinations of hardware and/or programming. The hardware portions may include the processor 26. The programming portions may include the operating system 43, applications 44, and/or combinations thereof. The programming may be processor executable instructions stored on a tangible memory media. The memory 24 may store program instructions that when executed by the processor 26 cause the processor to perform the program instructions, as described with respect to the management module 45, web-based services module 46, the account module 47, the authorization module 48, and the notification module 49. The memory 24 may be integrated in the same device as the processor 26 or it may be separate but accessible to that device and processor 26.
In some examples, the program instructions may be part of software that can be executed by the processor 26 to perform a method using the system 100. The memory 24 may be a portable medium such as a CD, DVD, or flash drive or a memory maintained by a server from which the software can be downloaded and installed. In other examples, the program instructions may be part of an application or applications already installed, for example scanner drivers installed on the management service 12. In further examples, the memory 24 may include integrated memory such as a hard drive.
FIG. 5 illustrates a flow diagram 500 of a method to manage a file according to an example. The method 500 may be used, for example, with the system 100 and apparatus 200. The method 500 may be implemented by the management device on, for example, a cloud server using the application programming interface 13 associated with the web-based service and the peripheral device, as described in FIG. 5. The method 500 may be initiated by a user and/or automatically initiated based on predefined account settings and/or an event.
In block 52, a management service receives the file from a peripheral device. For example, a web-connected peripheral device with a management application obtains the file and transmits the file to the management service. The management service receives the file and proceeds according to account setting and/or an instruction included with the file. The management service determines at least one file destination associated with a web-based service for the file in block 54. The management service includes an application programming interface associated with the web-based service and an instruction associated with the file. The management service may connect to a plurality of web-based services. Each web-based service associated with the management service includes an application programming interface associated therewith. The management service transmits the file to one or a plurality of the web-based services using the application programming interfaces and the instruction. The instruction may be received from the peripheral device, such as via a user interface and/or from an account setting on the management service. Moreover, the management service may transmit the file to a default location based on account settings associated with the management service.
In block 56, the application programming interface transmits the file to the at least one file destination using an authorization stored on the management service. The application programming interface links the management service to one and/or a plurality of the web-based services. The file is transmitted to one and/or a plurality of distinct file destinations, according to a command from the user interface and/or an account setting. The management service and/or the application programming interface authorize the file destination. The authorization may be initially determined through the user account on the management service, such as via the website, and/or at the time the file is transmitted to the web-based service using the authorization module and the application programming interface.
FIG. 6 illustrates a flow chart 600 of a method to manage a file, according to a further example. A user will initially activate a management service in block 60. The activation may include connecting to a peripheral device. The activation may also include setting-up and/or updating an account and/or linking the management service to web-based services, as illustrated in block 61. Typically, the activation of block 61 is performed prior to the first use of the management service and/or when a new web-based service is being used. In block 62, the management service 12 receives a file from the peripheral device. The file may also include an instruction, such as the file destination or the file destination may be determined based on account settings, such as the file type, the file size, and/or the peripheral device the file is received from. For example the user may set up rules within the account settings of the management service that indicate the file destination of the web-based service(s). FIG. 5 includes two file destinations for the file; however, one file destination and/or more than two file destinations may also be used.
The management service connects to web-services via an application programming interface (API) associated with each web-based service in blocks 63 and 64. For example, the user may request that the file may be transmitted to two distinct destinations, DropboxTM and Evernote®, which would result in the management service connecting to both DropboxTM and Evernote® simultaneously and/or in series. Blocks 65 and 66 illustrate that authorization of the user's accounts with each of the web-based services, i.e., DropboxTM and Evernote®. After the authorization occurs, the files may be transmitted to the file destination associated with each of the services, i.e., DropboxTM and Evernote®, in blocks 67 and 68. The transmission of the file to the web-based services may also provide one or more notifications via the management service, illustrated as a single notification in block 69; however, each transmission may include a separate notification and/or each transmission may include a plurality of notification based on the account settings. For example, the notification may be transmitted via an email, short message service (SMS), instant message, message on the user interface of the peripheral device to indicate successful and/or unsuccessful transmission(s) of the file(s).
Although the flow diagrams of FIGS. 5-6 illustrate specific orders of execution, the order of execution may differ from that which is illustrated. For example, the order of execution of the blocks may be scrambled relative to the order shown. Also, the blocks shown in succession may be executed concurrently or with partial concurrence. All such variations are within the scope of the present invention.
FIGS. 1-6 aid in illustrating the architecture, functionality, and operation according to examples. The examples illustrate various physical and logical components. The various components illustrated are defined at least in part as programs, programming, or program instructions. Each such component, portion thereof, or various combinations thereof may represent in whole or in part a module, segment, or portion of code that comprises one or more executable instructions to implement any specified logical function(s). Each component or various combinations thereof may represent a circuit or a number of interconnected circuits to implement the specified logical function(s).
Examples can be realized in any computer-readable media for use by or in connection with an instruction execution system such as a computer/processor based system or an ASIC (Application Specific Integrated Circuit) or other system that can fetch or obtain the logic from computer-readable media and execute the instructions contained therein. “Computer-readable media” can be any media that can contain, store, or maintain programs and data for use by or in connection with the instruction execution system. Computer readable media can comprise any one of many physical media such as, for example, electronic, magnetic, optical, electromagnetic, or semiconductor media. More specific examples of suitable computer-readable media include, but are not limited to, a portable magnetic computer diskette such as floppy diskettes or hard drives, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory, or a portable compact disc.
The present disclosure has been described using non-limiting detailed descriptions of examples thereof and is not intended to limit the scope of the present disclosure. It should be understood that features and/or operations described with respect to one example may be used with other examples and that not all examples of the present disclosure have all of the features and/or operations illustrated in a particular figure or described with respect to one of the examples. Variations of examples described will occur to persons of the art. Furthermore, the terms “comprise,” “include,” “have” and their conjugates, shall mean, when used in the present disclosure and/or claims, “including but not necessarily limited to.”
It is noted that some of the above described examples may include structure, acts or details of structures and acts that may not be essential to the present disclosure and are intended to be exemplary. Structure and acts described herein are replaceable by equivalents, which perform the same function, even if the structure or acts are different, as known in the art. Therefore, the scope of the present disclosure is limited only by the elements and limitations as used in the claims.

## Claims

1. A method comprising:
receiving, with a management service in a computer system, a file from a web-connected peripheral device associated with a user of the management service;
receiving, by the management service, a user preference input by the user of the management service, the user preference specifying a selection of a first web-based service from a plurality of web-based services that provide respective destination storage locations;
adding, by the management service, the user preference into a user account of the management service, the added user preference including information relating to the selected first web-based service of the plurality of web-based services;
linking a user account of the selected first web-based service with the user account of the management service, wherein the user account of the selected first web-based service is associated with the user and is distinct from the user account of the management service;
determining, with the management service using the information relating to the selected first web-based service in the user account of the management service the destination storage location provided by the first web-based service for the file, the management service including a first application programming interface associated with the first web-based service; and
transmitting, using the first application programming interface based on the linking of the user account of the selected first web-based service and the user account of the management service, the file to the determined destination storage location using an authorization stored by the management service.

2. The method of claim 1, wherein the transmitting comprises transmitting the file to a plurality of distinct destination storage locations, in response to the information in the user account of the management service identifying multiple web-based services of the plurality of web-based services, the method further comprising:
linking the user account of the management service to the user's user accounts of the multiple web-based services.

3. The method of claim 1, further comprising connecting the management service to the plurality of web-based services, each of the plurality of web-based services associated with a respective application programming interface in the management service.

4. The method of claim 1, further comprising providing a notification of the transmitting of the file to the determined destination storage location.

5. A system comprising:
a management device comprising at least one processor, a management service, and at least one application programming interface associated with a first web-based service, the management service executable on the at least one processor to:
receive, over a network, a file from a peripheral device associated with a user of the management service;
receive a user preference input by the user of the management service, the user preference specifying a selection of the first web-based service from a plurality of web-based services that provide respective destination storage locations;
add the user preference into a user account of the management service, the added user preference including information relating to the selected first web-based service of the plurality of web-based services, wherein the adding of the user preference into the user account of the management service comprises linking a user account of the selected first web-based service with the user account of the management service, the user account of the first web-based service being distinct from the user account of the management service;
determine, based on the information relating to the selected first web-based service in the user account of the management service, the destination storage location provided by the first web-based service; and
transmit the file, using the application programming interface, to the determined destination storage location using an authorization stored by the management service.

6. The system of claim 5, wherein the peripheral device comprises a scanning device.

7. The system of claim 5, wherein the management device comprises a server.

8. The system of claim 5, wherein the management service is executable on the at least one processor to provide a notification relating to the transmitting of the file to the determined destination storage location.

9. The system of claim 5, further comprising a data store to store at least one of the file and the at least one application programming interface.

10. A non-transitory computer readable storage medium storing instructions of a management service that upon execution cause a system to:
receive, over a network, a file from a peripheral device associated with a user of the management service;
receive, by the management service, a user preference input by the user of the management service, the user preference specifying a selection of a first web-based service from a plurality of web-based services that provide respective destination storage locations;
add, by the management service, the user preference into a user account of the management service, the added user preference including information relating to the selected first web-based service of the plurality of web-based services;
link the user account of the management service to the user's user account of the first web-based service;
determine, with the management service using the information relating to the selected first web-based service added to the user account of the management service, the destination storage location provided by the first web-based service; and
transmit the file, using an application programming interface associated with the first web-based service and included in the management service, to the determined destination storage location using an authorization stored by the management service, wherein transmitting the file using the application programming interface associated with the first web-based service is based on the linking of the user account of the management service to the user's user account of the first web-based service.

11. The method of claim 1, wherein the plurality of web-based services are associated with respective application programming interfaces included in the management service.

12. The method of claim 1, wherein transmitting the file to the determined destination storage location comprises transmitting the file to the first web-based service that stores the file at the determined destination storage location.

13. The method of claim 1, wherein the authorization is included in the user account of the management service, and the authorization includes authorization information of the user account of the first web-based service, the authorization information of the user account of the first web-based service used to verify access to the first web-based service.

14. The method of claim 13, wherein the authorization information includes a user name and password of the user that has the user account with the first web-based service.

15. The method of claim 1, further comprising setting up the user account of the management service in response to user activation.

16. The system of claim 5, wherein the transmitting of the file to the determined destination storage location comprises transmitting the file to the first web-based service that stores the file at the determined destination storage location.

17. The system of claim 5, wherein the authorization is included in the user account of the management service, and the authorization includes authorization information of the user account of the first web-based service, the authorization information of the user account of the first web-based service useable to verify access to the first web-based service.

18. The system of claim 17, wherein the authorization information includes a user name and password of the user that has the user account with the first web based service.

19. The non-transitory computer readable storage medium of claim 10, wherein the plurality of web-based services are associated with respective application programming interfaces included in the management service, wherein the user account of the management service is linked to the user's user accounts of the plurality of web-based services, and wherein the application programming interfaces are used for transmitting a file received from the peripheral device to the respective web-based services.

20. The non-transitory computer readable storage medium of claim 10, wherein the authorization is included in the user account of the management service, and the authorization includes authorization information of the user account of the first web-based service, the authorization information of the user account of the first web-based service used to verify access to the first web-based service.

21. The method of claim 1, wherein transmitting the file comprises transmitting the file using the user account of the management service to the user account of the selected first web-based service.

22. The system of claim 5, wherein the transmitting of the file comprises transmitting the file using the user account of the management service to the user account of the selected first web-based service.

23. The non-transitory computer readable storage medium of claim 10, wherein transmitting the file comprises transmitting the file using the user account of the management service to the user account of the first web-based service.