Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
APPLICATION PROGRAMMING INTERFACE MANAGER
Document Type and Number:
WIPO Patent Application WO/2017/051059
Kind Code:
A1
Abstract:
Modern elevators (102) are computer controlled (114), and a computer program (106) sending service requests to an elevator system (102) may be implemented in a mobile device (100). An API-manager (108) is used in a mobile device (100) for providing a common programming interface (107) for all elevator (102) related applications (106) in the mobile device (100). The API-manager (108) has a certificate (109) that is used for identifying the person using the mobile device (100). Thus, it is possible to execute service requests that require authorization or access rights. When the identification is provided at the API-manager (108), third party (111) applications (106) executed in the mobile device (100) do not need own certificates. Furthermore, as the API-manager (108) has a certificate (109), service requests can be trusted also when the mobile application (106) is provided by a third party (111).

Inventors:
KOIVISTO ARI (FI)
VUORENALA JERE (FI)
ELOMAA NIKO (FI)
Application Number:
PCT/FI2015/050629
Publication Date:
March 30, 2017
Filing Date:
September 21, 2015
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
KONE CORP (FI)
International Classes:
B66B1/34; B66B1/46; G06F21/33; G06F21/44; H04M1/72406; H04M1/72415; H04M7/00
Domestic Patent References:
WO2007093665A12007-08-23
WO2006000618A22006-01-05
WO2003009561A22003-01-30
Foreign References:
US20140337528A12014-11-13
US20120214444A12012-08-23
US20020103927A12002-08-01
US20130086210A12013-04-04
Other References:
SPOORTHI V ET AL.: "Mobile Single Sign- On Solution for Enterprise Cloud Applications'.", PROCEEDINGS OF THE 2014 FIRST INTERNATIONAL CONFERENCE ON NETWORKS & SOFT COMPUTING (ICNSC2014, 19 August 2014 (2014-08-19), Guntur, India, pages 273 - 277, XP032648331, ISBN: 978-1-4799-3485-0
See also references of EP 3353103A4
Attorney, Agent or Firm:
PAPULA OY (FI)
Download PDF:
Claims:
CLAIMS

1. A method for controlling an arrangement comprising elevators by a mobile device, the method comprising :

receiving a request for a service call;

transmitting said received request to an API- manager in said mobile device through an application programming interface;

transmitting an authentication request using said API-manager to an external system from said mobile de¬ vice ;

authenticating said mobile device by using a certificate issued by a certificate authority; and

as a response to a successful authentication, transmitting said request for a service call to said external system.

2. The method according to claim 1, wherein the method further comprising transmitting said request from said external system to a second external system.

3. The method according to claim 1 or 2, wherein said second external system is a system for controlling at least one elevator.

4. The method according to any of preceding claims 1 - 3, wherein said service call is an elevator call .

5. The method according to any of preceding claims 1 - 4, wherein said API-manager is configured to receive service calls from a plurality of mobile applications.

6. The method according to any of preceding claims 1 - 5, wherein in the method further comprises checking the validity of said service call and as a response to an approved validity check transmitting said request to said external system.

7. The method according to any of preceding claims 1 - 6, wherein said certificate is stored at said mobile.

8. A computer program for a server comprising code adapted to cause the method according to any of claims 1 - 7 when executed on a data-processing system.

9. An apparatus comprising:

at least one processor (103);

at least one memory (104), wherein said memory comprises an API-manager;

a wireless network connection (105);

wherein the apparatus is configured to:

receive a request for a service call;

transmit said received request to the API-manager in said apparatus through an application programming interface ;

transmit an authentication request to an external system from said apparatus;

authenticate said apparatus by using a certificate issued by a certificate authority; and

as a response to a successful authentication, transmit said request for a service call to said ex¬ ternal system.

10. The apparatus according to claim 9, wherein the apparatus is further configured to trans¬ mit said request from said external system to a second external system.

11. The apparatus according to claim 9 or 10, wherein said second external system is a system for controlling at least one elevator.

12. The apparatus according to any of pre¬ ceding claims 9 - 11, wherein said service call is an elevator call.

13. The apparatus according to any of pre¬ ceding claims 9 - 12, wherein said API-manager is con- figured to receive service calls from a plurality of mobile applications.

14. The apparatus according to any of preced¬ ing claims 9 - 13, wherein in said apparatus is fur- ther configured to check the validity of said service call and as a response to an approved validity check to transmit said request to said external system.

15. System comprising:

at least one elevator (102) coupled to a control system (114); and

an external system (110, 112, 113);

an apparatus according to any of preceding claims 8 - 13, wherein

said apparatus is configured to transmit service requests to said external system (110, 112, 113) and said external system is configured to process said service requests and transmit processed service re¬ quests to said control system (114).

Description:
APPLICATION PROGRAMMING INTERFACE MANAGER BACKGROUND

Mobile programmable devices are common nowa- days. Examples of such devices are smart phones, tab ¬ let computers and similar. It is normal that one per ¬ son owns and uses more than one device. These devices are capable of executing computer programs particularly designed for these devices. These computer programs can be downloaded, for example, from an application store or installed, for example, from a computer con ¬ nected to the mobile device. Some applications are ca ¬ pable of communicating with other devices, for example external computing devices that are controlling fur- ther devices. For example, a mobile device may have an application for instructing a vending machine. In practice, a mobile device can be used controlling all kinds of devices that are capable of receiving in ¬ structions from the mobile device. Instructions may be received over a network connection or directly from a mobile device over a short distance networking. Such applications are very well known.

Modern elevators include one or more compu ¬ ting systems. Some of the computing systems are oper- ating the elevator but the elevator may also include systems that are used for other, for example recrea ¬ tional or informative, purposes. For example, it is possible to provide information screen in the elevator car so that passengers can control the content on the screen by using their mobile devices as controllers. The access to control these systems can be easily pro ¬ vided as the passenger security is not involved in case of recreational applications.

As mentioned above, modern elevators are con- trolled by computing systems. For example a destina ¬ tion control system is a system that receives calls from calling devices, processes received calls and al ¬ locates elevators to passengers who have placed the calls. Such systems, however, typically include func ¬ tionality that have issues with regard the elevator and the building safety. For example, it is typical that an elevator control system is attached to an ac ¬ cess control system. The access control system is con ¬ trolling access rights in a building, for example, to which floors a person may place a call and which doors he is able to open. In other words, elevators include a plurality of different features that require verify ¬ ing if the person giving the instructions has rights to do so. SUMMARY

Modern elevators are computer controlled and a computer program sending service requests to an elevator system may be implemented in a mobile device. An API-manager is used in a mobile device for providing a common programming interface for all elevator related applications in the mobile device. The API-manager has a certificate that is used for identifying the person using the mobile device. Thus, it is possible to exe ¬ cute service requests that require authorization or access rights. When the identification is provided at the API-manager third party applications executed in the mobile device do not need own certificates. Fur ¬ thermore, as the API-manager has a certificate service re-quests can be trusted also when the mobile applica- tion is provided by a third party.

In an embodiment a method for controlling an arrangement comprising elevators by a mobile device is disclosed. The method comprises receiving a request for a service call, transmitting the received request using the API-manager to an API-manager in the mobile device through an application programming interface, transmitting an authentication request to an external system from the mobile device, authenticating the mobile device by using a certificate issued by a certif ¬ icate authority; and as a response to a successful au- thentication, transmitting the request for a service call to the external system.

In a further embodiment the method further comprises transmitting the request from the external system to a second external system. In an embodiment the second external system is a system for controlling at least one elevator. In another embodiment the ser ¬ vice call is an elevator call. In another embodiment the API-manager is configured to receive service calls from a plurality of mobile applications. In a further embodiment the method further comprises checking the validity of the service call and as a response to an approved validity check transmitting the request to the external system.

In another embodiment the method described above is implemented as a computer program. In a fur ¬ ther embodiment the method is performed by an appa ¬ ratus comprising a processor, at least one memory, wherein the memory comprises an API-manager and a wireless network connection.

In another embodiment the above described method, computer program and apparatus are implemented in an environment comprising elevators, controllers for elevators and external systems for processing the requests .

The benefits of the API-manager disclosed above include simple and trustworthy identification of a person using the mobile application. Thus, it is possible to allow third parties to provide mobile ap ¬ plication that include controlling elevator systems and similar. Furthermore, the elevator operator receiving service requests receives only requests that have been verified and for which the access rights might have been checked. Thus, the controllers receiv ¬ ing the service request do not receive unnecessary re ¬ quest and are not vulnerable to malicious service re ¬ quests. Furthermore, the API-manager provides a simple way for programmers to control elevators as they do not need to worry about access rights. Furthermore, problems caused by unintentional software failures are reduced because service requests may be verified at the API-manager. Thus, a benefit of the API-manager as disclosed above is a simplified possibility to produce third party applications for mobile devices, which leads into enhanced user experience in elevators.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are included to provide a further understanding of the API-manager and constitute a part of this specification, illus ¬ trate embodiments of the API-manager and together with the description help to explain the principles of the API-manager. In the drawings:

Fig. 1 is a block diagram of an example embodiment involving an API-manager,

Fig. 2 is a flow diagram of a method involving an API-manager

DETAILED DESCRIPTION

Reference will now be made in detail to the embodiments, examples of which are illustrated in the accompanying drawings .

In figure 1 a block diagram of a system using an API-manager is disclosed. In the figure a mobile device 100, for example a mobile phone, a tablet com ¬ puter or a similar, is illustrated. The mobile device comprises at least one processor 103, at least one memory 104 and at least one network connection 105. The mobile device is capable of executing mobile ap- plication 106. The mobile application 106 is a third party application, which in this case means that it is an application that is not provided by the elevator manufacturer or building security system provider. The third party application may be provided by anyone who is capable of producing mobile applications. The mo ¬ bile application 106 may be downloaded to the mobile device 100 from an application store 111 or any other application download service or other mechanism for providing mobile applications to the mobile device 100.

In the embodiment of figure 1 the mobile de ¬ vice 100 is configured to send commands to an elevator system 102 located in a building 101. For example, the person arriving at the building may wish to send an elevator call in advance. The mobile application 106 may be configured in a manner that when the person ar ¬ rives at the building or vicinity of the building, the mobile application 106 approximates the distance to the elevator and the estimated time of arrival at the elevator and sends to the elevator system 102. In the figure the elevator system comprises two different el ¬ evators and respective controllers, such as a destina ¬ tion control system 114, which is further connected to servers, cloud or similar computing system 110.

It is commonly known that external systems are programmed through an application programming interfaces (API) . In the embodiment of figure 1 the API 107 is arranged into the mobile device 100 together with an API manager 108 and respective certificate 109. The purpose of this arrangement is to provide a programmable interface for the mobile application 106 so that the mobile application 106 may send a command or a request to the elevator system, such as the ele- vator system 102. In the embodiment of figure a cloud 110 is disclosed, however, instead of a cloud any suitable server system with storage may be used. The cloud 110 is used for determining the allowability of requests received from a mobile device 100. The allow ¬ ability may depend on a plurality of issues, for exam ¬ ple, if the placed request is a correct or if a person placing the request is authorized to do so.

When the mobile device 100 executes the mo ¬ bile application 106, it will access resources through the API 107. Thus, the commands and request must be in accordance with the API 107. The API-manager 108 then retrieves a corresponding certificate 109. There may be more than one certificate, however, in the first phase a certificate 109 is used for identifying the user of the mobile device 100. The API-manager 108 es ¬ tablishes communication with the cloud 110. The iden- tity of the mobile device and the user of the mobile device are confirmed with the certificate 109. In the embodiment of figure 1 the certificate 109 has been issued by the certificate authority 112 that is main ¬ tained by a trusted entity, which is typically the manufacturer of the elevator system 102. Thus, the same application and certificates may be used for a plurality of buildings.

The certificate authority 112 issues certifi ¬ cates when the user of the mobile device 100, for ex- ample, installs the mobile application 106. The person installing the mobile application 106 must be identi ¬ fied as the application may use systems that require identification. This may be done in person or by using electronic identification means, such as network bank- ing keys. For example, elevators are often arranged with an access control system so that person placing a call must have access to the called floor. Convention ¬ ally this has been provided by using an electronic key that is shown to a reading device at the elevator or calling device.

In the embodiment of figure 1 the mobile de ¬ vice 100 sends a request to the cloud 110 through an API provided at the cloud 113. The request is then processed at the cloud 110. The cloud 110 may include all necessary data, including the access data. When the cloud 110 includes all the data, the allowability of the call can be verified already in the cloud 110. Thus, when the cloud transmits the request to the building 102, it has been already verified as a cor ¬ rect and the control system does not need to deal with incorrect and unauthorized calls. However, it is pos- sible that the cloud 110 does not have, for example, the access information. Thus, the cloud 110 only veri ¬ fies the validity of the call and the control system 114 checks the access information. The user, however, may be identified by using the certificate at the API- manager. For example, this might the case in case of a need for high security where the information is not given to outside.

Certificates mentioned above, as discussed, may be used for determining the identity of the person by means of API-manager 108. Thus, mobile applications as such do not need their own certificates but a plu ¬ rality of mobile applications may use the same API- manager certificate when communicating with elevators and elevator systems.

In figure 2 a method using an API-manager is disclosed. In the method a mobile application for in ¬ structing elevator is installed to a mobile device. The mobile application is equipped with a certificate that is used for identifying the user of the mobile device. Firstly, the application is started. The ap ¬ plication may implement a plurality of elevator relat ¬ ed features, however, in the example of a figure 2 an elevator call is placed, step 200. The application ac ¬ cess the API-manager through the API, step 201. The API-manager is an element comprising API- functionality, a certificate for identifying the per ¬ son and the program code configured to communicate with external systems. In the embodiment of figure 2 the elevator call will be sent to a cloud provided by the elevator manufacturer. Before sending the elevator call the device having the API-manager is authenticat- ed by using the certificate, step 202. When the au ¬ thentication is done the elevator call is sent to the cloud, step 203. In the cloud the elevator call is verified, step 204. For example, the mobile applica ¬ tion may purposively place false calls for various reasons. These calls can be removed before they are forwarded to the elevator systems. For example, if the called floor does not exist, the call can be removed. If the cloud has also the access information or is able to gain the access information, the access to place the call can be verified, step 205. Lastly, the cloud transmits the call to the destination elevator system, step 206. The elevator system may process the placed call further, or it may execute the call di ¬ rectly after receiving the call. In some embodiments it is possible to provide feedback to the mobile de ¬ vice. For example, if the call has been placed for an elevator ride, the elevator system may return an estimated time of arrival.

The above mentioned method may be implemented as computer software which is executed in a mobile de ¬ vice. When the software is executed in a mobile device it is configured to perform the above described meth ¬ od. The software is embodied on a computer readable medium so that it can be provided to the computing de- vice, such as the mobile device 100 of figure 1.

As stated above, the components of the exem ¬ plary embodiments can include computer readable medium or memories for holding instructions programmed ac ¬ cording to the teachings of the present embodiments and for holding data structures, tables, records, and/or other data described herein. Computer readable medium can include any suitable medium that partici- pates in providing instructions to a processor for ex ¬ ecution. Common forms of computer-readable media can include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, any other suitable magnetic medium, a CD-ROM, CD±R, CD±RW, DVD, DVD-RAM, DVD1RW, DVD±R, HD DVD, HD DVD-R, HD DVD-RW, HD DVD-RAM, Blu- ray Disc, any other suitable optical medium, a RAM, a PROM, an EPROM, a FLASH-EPROM, any other suitable memory chip or cartridge, a carrier wave or any other suitable medium from which a computer can read.

It is obvious to a person skilled in the art that with the advancement of technology, the basic idea of the API-manager may be implemented in various ways. The API-manager and its embodiments are thus not limited to the examples described above; instead they may vary within the scope of the claims.