WO2020139078A1 - System for managing operation mode based on service availability and method thereof - Google Patents
System for managing operation mode based on service availability and method thereof Download PDFInfo
- Publication number
- WO2020139078A1 WO2020139078A1 PCT/MY2019/050134 MY2019050134W WO2020139078A1 WO 2020139078 A1 WO2020139078 A1 WO 2020139078A1 MY 2019050134 W MY2019050134 W MY 2019050134W WO 2020139078 A1 WO2020139078 A1 WO 2020139078A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- service
- application
- operation mode
- module
- list
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/562—Brokering proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/60—Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
Definitions
- This invention relates to services provided in a mobile application platform, and more particularly to a system and method for managing operation modes for application modules based on service availability via the mobile application platform.
- a third party application provider may provide a wide range of valuable location-based services to user via a mobile application platform. For example, assisting user to plan route from current location to another designated location, suggesting nearby accommodation, fuel stations, attractive places and restaurants, and notifying traffic and weather conditions within user’s vicinity based on the current location of the mobile device.
- a variety of mobile application platforms have been developed by the third party application providers to perform location-based operations having commercial significance, for instance in retail environment.
- Information in respect of the retail environment may comprise data concerning layout of available retail stores nearby, as well as goods and services provided by the retail stores.
- Such mobile application platforms involve a step of determining position of the mobile device and providing a set of information supplied by the retail stores at or near the position of the mobile device.
- existing mobile application platforms are mostly limited to be used within a specific retail store.
- GB2425921 B discloses a retail management system for interaction with a mobile user interface apparatus in a retail environment.
- the mobile user interface apparatus supports detection of arrival of a registered mobile device in said retail environment to subsequently enable location-based and personalised services to user.
- GB‘921 also provides routing information to direct the user to specified goods or services and is only tailored to user's current store position.
- EP 2372627 A2 discloses apparatus and methods to provide city services, such as parking service in a city by means of the mobile device.
- the mobile device is configured to receive information from local sensor nodes in vicinity of the mobile device.
- the local sensor nodes are referred to parking sensor nodes.
- the mobile device is able to locate available parking space based on the information received from the parking sensor nodes, even if the mobile device is positioned in a moving vehicle.
- a significant barrier to this is due to availability of the location-based services of the mobile application platform changes based on context and location of the mobile device. This is caused by reliance of the mobile applications to available services provided by external parties, since the mobile application platforms are normally distributed by the third party application provider and require external services to function. Moreover, nature of the services provided by the external parties also differs depending on the context or location of the mobile device. The prior art have insufficiently addressed the challenges to manage operation mode of available services in the single mobile application platform in order to provide relevant services and functionality at different context and location of the mobile device.
- the present invention relates to a computer implemented system for managing operation mode based on service availability via a platform for use in a mobile device, wherein the platform comprising a service discovery module to gather and consolidate service information available at current context and location; a service registry to maintain the service information received from the service discovery module; a plurality of application modules to provide a plurality of application functionality to user of the platform; an application registry to maintain application information functionality of the plurality of application modules; and an application controller to receive the service information and application information from the service registry and the application registry to manage the operation modes for each application module based on service availability, characterized by a service matcher to determine a target operation mode for each application module by evaluating an ordered list of the operation mode for each application module in the application registry to find a match with the service information in the service registry.
- a service discovery module to gather and consolidate service information available at current context and location
- a service registry to maintain the service information received from the service discovery module
- a plurality of application modules to provide a plurality of application functionality to user
- the application information includes a list of application modules, the ordered list of operation modes for each application module and a list of required services for the operation modes for each application modules.
- the ordered list of operation modes for each application module is arranged in an order according to a list of required services to provide a thorough application functionality to the user.
- the target operation mode is a first entry in the ordered list of the operation mode having a complete list of required services matching with the service information in the service registry.
- the service information includes a list of current available services comprises local services and external services.
- the platform is in communication with at least one of a plurality of service brokers, wherein the service brokers collect the service information from a corresponding site service module available at current context and location of the mobile device.
- the present invention relates to a computer implemented method of managing operation mode based on service availability via a platform for use in a mobile device, characterized by the steps of performing service discovery process by a service discovery module to discover available services in current context and location; determining a target operation mode for each application module by a service matcher; and executing change of operation mode in the application module by updating the target operation mode as a current operation mode by an application controller.
- the step of performing service discovery process by the service discovery module to discover available services in current context and location comprising steps of sending service discovery broadcast messages via communication networks connected to the platform; awaiting service discovery response messages from at least one service broker within the connected communication networks; collecting service information available at current context and location from the service discovery response messages by the service discovery module; determining if the list of the service information in the service registry differs from the list of the service information obtained from the service discovery response messages; updating the list of the service information in the service registry with the list of the service information obtained from the service discovery response messages if the lists differ; and notifying the application controller of a change in service availability.
- the step of determining a target operation mode for each application module by a service matcher comprising steps of invoking the service matcher by the application controller upon receiving notification of the change in service availability; evaluating in order, an ordered list of operation modes for each application module; and determining a first entry, in the ordered list of operation modes, having a complete list of required services matching with the service information in the service registry as the target operation mode.
- the step of the method further comprising steps of recurring the step of performing the service discovery process at a regular time interval by the service discovery module.
- Figure 1 is a diagram illustrating general architecture of a system for managing operation mode based on service availability in accordance to the present invention.
- Figure 2 is an illustration of an application information maintained by an application registry in accordance to the present invention.
- Figure 3 illustrates a block diagram of an evaluation to determine a target operation mode based on current context and location.
- Figure 4 illustrates an exemplary embodiment to further demonstrate evaluation to determine the target operation mode based on the current context and location.
- Figure 5 is a flow chart representing a method of managing operation mode based on service availability in accordance to the present invention.
- Figure 6 is a flow chart representing further detailed steps of initializing a platform by an application controller in accordance to the present invention.
- Figure 7 is a flow chart representing further detailed steps of performing service discovery process in accordance to the present invention.
- Figure 8 illustrates an exemplary work flow for the method of managing operation mode based on service availability in accordance to the present invention.
- a mobile application platform is a type of application software developed as a platform to run on a mobile device, such as a smartphone or tablet computer.
- the mobile application platform is referred as platform hereinafter.
- the platform is preferably in communication with a site, wherein the site resides at a different location from the platform and contains service information from external parties that provides services and functionality in a commercial building environment, public places and common areas such as a retail environment, airports, schools, hospitals, office buildings, etc.
- the mobile device is preferably having a geographical positioning system for tracking location of the mobile device to provide location information of the mobile device to the site.
- the present invention discloses a system (100) for managing operation mode based on service availability via a platform (10) for use in a mobile device.
- the platform (10) is a mobile application platform installed and run on the mobile device.
- the platform (10) comprises a service discovery module (1 1 ), a service registry (12), an application registry (13), a plurality of application modules (14), an application controller (15) and a service matcher (16).
- the platform (10) is in communication with a site (20) via a network, wherein the site (20) comprises a plurality of site service modules (21 ) and a plurality of service brokers (22), wherein each service broker (22) caters for each corresponding site service module (21 ) as shown in Fig. 1 .
- Each of the site service module (21 ) further having a plurality of services.
- the network is a communication network connecting the mobile device to the site (20) such as but not limited to a radio wireless local area networking (Wi-Fi network).
- Wi-Fi network radio wireless local area networking
- the plurality of site service modules (21 ) is configured to provide external services via a communication network, wherein the external services are services which are externally accessed from the platform (10) which reside on machines, servers or computers that are different from location of the platform. This is in contrast to local services which are locally running on the same mobile device as that of the platform (10).
- the external services contain service information or service description of current context and location of the site (20) wherein the local services contain service information or service description of pertaining to the current context of the platform (10).
- the plurality of service brokers (22) are configured to listen to service discovery broadcast message from the service discovery module (1 1 ) at the platform (10) and collect the service information or service description accordingly from each corresponding site service module (21 ), during a service discovery process.
- the plurality of service brokers (22) is further configured to deliver service discovery responses to the service discovery module (1 1 ), wherein the service discovery responses comprising a list of the external services that are currently available based on the context and location of the mobile device.
- the service brokers (22) only deliver the service information of the external services wherein the local services are directly registered with the service registry (12).
- the service discovery module (1 1 ) is configured to gather and consolidate service information of the external services received from the plurality of service brokers (22), by sending service discovery broadcast message to connected network and receiving the service discovery responses from at least one service broker (22).
- the service information of the external services in the service discovery responses as well as the service information of the local services are then maintained by the service registry (12).
- the service discovery module (1 1 ) is also configured to update the service registry (12) if there is any change in service availability, whereby the service registry (12) subsequently notifying the application controller (15) of the change in the service availability.
- the list of services is empty upon initialization of the platform (10) which is being filled up and populated with the external and local services upon the service discovery process.
- the application registry (13) is configured to maintain application information and provides the application information to the application controller (15).
- the application information is part of configuration for the platform (10) wherein the application information includes a list of application modules (14), an ordered list of operation modes for each application module (14) and a list of required services for the operation modes for each application modules (14).
- the required services for the operation modes for each application modules (14) are determined prior to development of the platform (10) in the mobile device.
- the list of operation modes and their associated required services is included during development of the application module (14) in the platform (10).
- the ordered list of operation modes for each application module (14) is arranged in an order according to a list of required services to provide thorough application functionality to the user.
- the order of the list of operation modes for each application module (14) is configured during development of the platform, wherein the operation mode with a most full-featured (i.e. most useful) is placed at a top of the list of operation modes with each subsequent operation mode having fewer features or less useful feature.
- the last operation mode on the list of operation modes is the least useful but is still valuable to the user.
- the configuration for the platform (10) is fixed when the platform (10) is developed and does not change during operation of the platform (10). However, reconfiguration of the platform (10) may be performed if there is a need to update the application information, nevertheless the platform (10) needs to be reinstalled in the mobile device to re-deploy the new configuration.
- the plurality of application modules (14) are configured to provide a plurality of application functionality to end-user of the platform (10).
- the application functionality may include but not limited to store promotions, indoor navigation and vehicle parking guidance.
- Each of the application modules (14) comprises execution code for the application module of the platform (10), a list of operation modes for the application module and the required services for the operation modes of the application module.
- each of the application modules (14) is configured together with the lists of operation modes and the required services to be retrieved by the application registry (13) during initialization.
- the application controller (15) receives the service information and application information from the service registry (12) and the application registry (13) respectively.
- the application controller (15) is further configured to manage the operation modes of the application modules (14) running on the platform (10) by invoking the service matcher (16) for each application module (14) entries within the application registry (13) and noting target operation mode of the application modules (14) as determined by the service matcher (16).
- the application controller (15) further notifies each application module (14) whose target operation mode returned by the service matcher (16) is different from current operation mode of that application module (14).
- the service matcher (16) is configured to determine the target operation mode for the application modules (14) by evaluating the ordered list of operation modes for each application module (14) in the application registry (13) to find a first entry where all required services are listed as available in the service registry (12).
- the target operation mode is defined as a first entry in the ordered list of the operation modes having the complete list of required services matching the service information in the service registry (12). Evaluation to determine the target operation mode based on the current context and location starts at the top of entry list and stops as soon as a matching operation mode is found. The evaluation is done by the service matcher (16) which is invoked by the application controller (15) for each operation mode in the entries. Consequently, the platform (10) may choose the most full-featured or most useful operation mode for the application module (14).
- FIG. 2 is an illustration of the application information maintained by the application registry (13) wherein the application information comprises the list of application modules (14), the ordered list of operation modes for each application module (14) and the list of required services for the operation modes for each application modules (14).
- the list of application modules (14) contains an entry for each application module (14) in the platform (10). Each entry of the application module (14) having its own list of operation modes configured to be in order during configuration of the platform (10). Each operation mode in the ordered list having its own list of required services for the associate application module (14) to operate in that operation mode.
- Figure 3 is depicted a block diagram of the evaluation to determine the target operation mode based on the current context and location.
- the target operation is essentially determined by matching available services (i.e. external services and local services) with the operation modes and its associated services required for the operation modes.
- Shown in Figure 4 is an exemplary embodiment to further demonstrate evaluation to determine the target operation mode based on the current context and location.
- the application module (14) provides a functionality of a vehicle parking guidance based on service availability.
- the application module (14) of the vehicle parking guidance is designed to guide user in a parking lot to find an available bay such as but not limited to parking bays in shopping complexes. In the example, there are five active operation modes and one dormant or inactive operation mode.
- the order of evaluation starts from the top of the entry list and evaluation is complete as soon as a match is found whereby remaining entries are not evaluated after the match is found.
- the application module (14) of the vehicle parking guidance is able to provide the most useful functionality of the operation mode, i.e. bay-navigation operation mode. Thereon, the application module (14) may further guide the user to a specific available parking bay.
- the target operation mode determined by the service matcher (16) is the bay-location operation mode, whereby the application module (14) can only display where the available parking bays are without guiding the user to the specific available parking bay. If there is no external service providing the service information about availability of individual parking bays but there are service information about parking zones whereby each parking zone may comprise of tens or hundreds of individual bays, then the target operation mode determined by the service matcher (16) may be Zone-Navigation, Zone-Location or Zone-Available Bays, depending on the availability of the service information for the map of the parking lot and the location tracking.
- the application module (14) of the vehicle parking guidance in accordance to the present invention is able to manage the target operation modes for the user based on the service availability in the current context and location of the mobile device. Similar implementation may be applied to other application modules (14) providing different functionality for example store promotions and indoor navigation.
- the application module (14) may display related promotions and products to the user. If the user selects on a particular promotion, the application module (14) may provide a real-time map to guide the user from current location to a specific department store with the promotion. If only the promotion list service is available, the application module (14) may only display pages or screens with list of the promotion without navigation to the specific department store.
- Figure 5 illustrates a method (200) of managing operation mode based on service availability via the platform (10) in accordance to the present invention.
- the method (200) starts by initializing the platform (10) by the application controller (15) (210), performing service discovery process by a service discovery module (1 1 ) to discover available services in current context and location (220), determining the target operation mode for each application module (14) (230) by the service matcher (16), notifying the application modules (14) of a change in operation mode (240) by the application controller (15), and executing change of operation mode in the application module (14) (250) by updating the target operation mode as the current operation mode by the application controller (15).
- the method (200) comprises a step of recurring the step of performing the service discovery process at a regular time interval to discover available services in current context and location by the service discovery module (1 1 ) (220).
- the application controller (15) may set up a recurring timer to trigger the service discovery module (1 1 ) to perform a new cycle of the service discovery process. For example, the application controller (15) may set a five minute recurring timer. Thereby the service discovery module (1 1 ) is triggered to check availability of new services every five minutes. It is essential as the mobile device may change its current context and location if the user moves to a network or area in which a previously available service is no longer present, or an area where a previously unavailable service becomes available to the platform (10). Then, the platform (10) running on the mobile device needs to respond to the changes to update the operation modes of the application modules (14) as necessary.
- Figure 6 illustrates the steps of initializing the platform (10) by the application controller (15) (210) further comprising steps of initializing the application registry (13) (21 1 ) with the application information, initializing the service registry (12) with an empty list of available services (212), populating the service registry (12) with the list of local services available to the platform (10) (213), initializing each of the application modules (14) (214), invoking the service discovery module (1 1 ) to trigger the service discovery process (215), and setting up a recurring timer (216) according to the regular time interval wherein at the end of each cycle of the service discovery process, a new service discovery process is triggered by invoking the service discovery module (1 1 ).
- the list of available services is empty upon initialization and said list is populated upon the service discovery process. Therefore, in reference to Figure 5, upon recurring the step of performing the service discovery process after a regular time interval by the service discovery module (1 1 ) (220), the list of available services is completely replaced by the list of local services and external services from the current cycle of the service discovery process.
- Figure 7 illustrates the step of performing service discovery process by a service discovery module (1 1 ) to discover available services in current context and location (220), comprising steps of sending the service discovery broadcast messages via the communication networks connected to the platform (10) (221 ), awaiting service discovery response messages from at least one service brokers (22) within the connected communication networks (222), collecting service information of available external services from the service discovery response messages by the service discovery module (1 1 ) (223) and concluding the service discovery response messages upon expiry of configured time period for each cycle of the service discovery process (224), wherein the service discovery module (1 1 ) stops waiting for the service discovery responses after the configured time period is expired.
- the step (220) further comprising step of determining if list of the services (i.e.
- the service registry (12) differs from list of available external services obtained from the service discovery response messages (225). If the aforementioned lists are same, then the system (100) concluding the service discovery process and no further action is required for the service discovery module (1 1 ) in the current cycle of the service discovery process. Otherwise, the list of the available external services in the service registry (12) is updated (226) by completely replacing the list of services in the service registry (12) with the list of available external services obtained from the service discovery response messages received from the service brokers (22) and notifying the application controller (15) of a change in service availability. Then, a new cycle of the service discovery process is triggered (227) at the regular time interval.
- Figure 8 illustrates an exemplary work flow for the method of managing operation mode based on service availability via the platform (10) in accordance to the present invention.
- the application module (14) provides the application information including required services for each operation modes in each application module (14) to the application registry (13) (301 ), then, the application module (14) notifies the application information to the application controller (15) (302).
- the application controller (15) retrieves the application information from the application registry (13) (303), and the application controller (15) triggers the service discovery process to the service discovery module (1 1 ) (304).
- the service discovery module (1 1 ) sends the service discovery broadcast message to the service broker (22) (305) to start the service discovery process.
- the service broker (22) retrieves service information from available external services from the site service module (21 ) (306) and sends the list of available external services to the service discovery module (1 1 ) via the service discovery response (307).
- the service discovery module (1 1 ) consolidates the service information from the service discovery response until the service discovery process ends (308).
- the service discovery module (1 1 ) then registers the available external services to the service registry (12) (309) and notifies about the available external services to the application controller (15) (310).
- the application controller (15) retrieves the service information of the external services from the service registry (12) upon receiving notification from the service discovery module (1 1 ) (31 1 ) and sends the service information of the external services to the service matcher (16) (312).
- the service matcher (16) determines the target operation mode (313) based on the service information received and notifies the determined target operation mode to the application module (14) (314).
- the application module (14) then updates the target operation mode as current operation mode (315).
- the terms“a” and“an,” as used herein, are defined as one or more than one.
- the term“plurality,” as used herein, is defined as two or more than two.
- the term“another,” as used herein, is defined as at least a second or more.
- the terms “including” and/or “having,” as used herein, are defined as comprising (i.e. , open language).
Abstract
The present invention relates to a system (100) for managing operation mode based on service availability via a platform (10) for use in a mobile device, wherein the platform (10) comprising a service discovery module (11), a service registry (12), a plurality of application modules (14), an application registry (13), and an application controller (15) and a service matcher (16) to determine a target operation mode for each application module (14) based on the service availability. The present invention also relates to a method (200) of managing operation mode based on service availability comprising the steps of performing service discovery process to discover available services in current context and location (220); determining a target operation mode for each application module (14) (230) and executing change of operation mode in the application module (14) (250) by updating the target operation mode as a current operation mode.
Description
SYSTEM FOR MANAGING OPERATION MODE BASED ON SERVICE AVAILABILITY
AND METHOD THEREOF
FIELD OF INVENTION
This invention relates to services provided in a mobile application platform, and more particularly to a system and method for managing operation modes for application modules based on service availability via the mobile application platform.
BACKGROUND OF THE INVENTION
It has been an increasing trend to implement location-based technologies to enable user mobility via mobile devices. By identifying location of the mobile device, a third party application provider may provide a wide range of valuable location-based services to user via a mobile application platform. For example, assisting user to plan route from current location to another designated location, suggesting nearby accommodation, fuel stations, attractive places and restaurants, and notifying traffic and weather conditions within user’s vicinity based on the current location of the mobile device.
A variety of mobile application platforms have been developed by the third party application providers to perform location-based operations having commercial significance, for instance in retail environment. Information in respect of the retail environment may comprise data concerning layout of available retail stores nearby, as well as goods and services provided by the retail stores. Such mobile application platforms involve a step of determining position of the mobile device and providing a set of information supplied by the retail stores at or near the position of the mobile device. However, existing mobile application platforms are mostly limited to be used within a specific retail store.
By way of background, a number of systems and methods of the aforementioned mobile application platforms are developed to serve user with location-based services. As an example, a prior art of GB2425921 B (GB‘921 ) discloses a retail management system for interaction with a mobile user interface apparatus in a retail environment. The mobile user interface apparatus supports detection of arrival of a registered mobile device in said
retail environment to subsequently enable location-based and personalised services to user. GB‘921 also provides routing information to direct the user to specified goods or services and is only tailored to user's current store position.
Another prior art of patent EP 2372627 A2 (EP‘627) discloses apparatus and methods to provide city services, such as parking service in a city by means of the mobile device. According to EP‘627, the mobile device is configured to receive information from local sensor nodes in vicinity of the mobile device. In an embodiment of the parking service application, the local sensor nodes are referred to parking sensor nodes. Hence, the mobile device is able to locate available parking space based on the information received from the parking sensor nodes, even if the mobile device is positioned in a moving vehicle.
However, it is also common to find the mobile application platforms disclosed in the prior arts are similar in nature, except for some customizations. For example different retail stores may develop their own mobile application platform providing similar services and functionality, such as store promotions, indoor navigation, vehicle parking guidance, etc. which is explicitly suitable for the specific retail store. This means that customers may need to install multiple mobile application platforms (e.g. one mobile application platform for each retail store) to essentially using similar services and functionality at different locations. To date, there is no single mobile application platform able to cater the user with the similar services and functionality at different context and location of the mobile device without having to install multiple mobile application platforms.
A significant barrier to this is due to availability of the location-based services of the mobile application platform changes based on context and location of the mobile device. This is caused by reliance of the mobile applications to available services provided by external parties, since the mobile application platforms are normally distributed by the third party application provider and require external services to function. Moreover, nature of the services provided by the external parties also differs depending on the context or location of the mobile device.
The prior art have insufficiently addressed the challenges to manage operation mode of available services in the single mobile application platform in order to provide relevant services and functionality at different context and location of the mobile device.
Consequently, there exists a need to provide a system and method for managing the operation mode of services provided in the mobile application platform based on service availability, in an attempt to support communication between multiple retail environments and the single mobile application platform.
SUMMARY OF INVENTION
The following presents a simplified summary of the invention in order to provide a basic understanding of some aspects of the invention. This summary is not an extensive overview of the invention. Its sole purpose is to present some concepts of the invention in a simplified form as a prelude to the more detailed description that is presented later.
It is an objective of the present invention to provide a single mobile application platform supporting similar services and functionality to be used in many contexts and locations.
It is another objective of the present invention to provide a system and method for managing operation mode based on service availability via a mobile application platform for use in a mobile device.
It is also an objective of the present invention to provide a system and method for determining a target operation mode for application modules developed in the mobile application platform, based on service availability.
The present invention relates to a computer implemented system for managing operation mode based on service availability via a platform for use in a mobile device, wherein the platform comprising a service discovery module to gather and consolidate service information available at current context and location; a service registry to maintain the service information received from the service discovery module; a plurality of application modules to provide a plurality of application functionality to user of the platform; an application registry to maintain application information functionality of the plurality of application modules; and an application controller to receive the service information and
application information from the service registry and the application registry to manage the operation modes for each application module based on service availability, characterized by a service matcher to determine a target operation mode for each application module by evaluating an ordered list of the operation mode for each application module in the application registry to find a match with the service information in the service registry.
In an embodiment of the present invention, the application information includes a list of application modules, the ordered list of operation modes for each application module and a list of required services for the operation modes for each application modules.
In an embodiment of the present invention, the ordered list of operation modes for each application module is arranged in an order according to a list of required services to provide a thorough application functionality to the user.
In an embodiment of the present invention, the target operation mode is a first entry in the ordered list of the operation mode having a complete list of required services matching with the service information in the service registry.
In an embodiment of the present invention, the service information includes a list of current available services comprises local services and external services.
In an embodiment of the present invention, the platform is in communication with at least one of a plurality of service brokers, wherein the service brokers collect the service information from a corresponding site service module available at current context and location of the mobile device.
The present invention relates to a computer implemented method of managing operation mode based on service availability via a platform for use in a mobile device, characterized by the steps of performing service discovery process by a service discovery module to discover available services in current context and location; determining a target operation mode for each application module by a service matcher; and executing change of operation mode in the application module by updating the target operation mode as a current operation mode by an application controller.
In an embodiment of the present invention, the step of performing service discovery process by the service discovery module to discover available services in current context and location comprising steps of sending service discovery broadcast messages via communication networks connected to the platform; awaiting service discovery response messages from at least one service broker within the connected communication networks; collecting service information available at current context and location from the service discovery response messages by the service discovery module; determining if the list of the service information in the service registry differs from the list of the service information obtained from the service discovery response messages; updating the list of the service information in the service registry with the list of the service information obtained from the service discovery response messages if the lists differ; and notifying the application controller of a change in service availability.
In an embodiment of the present invention, the step of determining a target operation mode for each application module by a service matcher comprising steps of invoking the service matcher by the application controller upon receiving notification of the change in service availability; evaluating in order, an ordered list of operation modes for each application module; and determining a first entry, in the ordered list of operation modes, having a complete list of required services matching with the service information in the service registry as the target operation mode.
In an embodiment of the present invention, the step of the method further comprising steps of recurring the step of performing the service discovery process at a regular time interval by the service discovery module.
BRIEF DESCRIPTION OF THE DRAWINGS
The features of the invention will be more readily understood and appreciated from the following detailed description when read in conjunction with the accompanying drawings of the preferred embodiment of the present invention.
Figure 1 is a diagram illustrating general architecture of a system for managing operation mode based on service availability in accordance to the present invention.
Figure 2 is an illustration of an application information maintained by an application registry in accordance to the present invention.
Figure 3 illustrates a block diagram of an evaluation to determine a target operation mode based on current context and location.
Figure 4 illustrates an exemplary embodiment to further demonstrate evaluation to determine the target operation mode based on the current context and location.
Figure 5 is a flow chart representing a method of managing operation mode based on service availability in accordance to the present invention.
Figure 6 is a flow chart representing further detailed steps of initializing a platform by an application controller in accordance to the present invention.
Figure 7 is a flow chart representing further detailed steps of performing service discovery process in accordance to the present invention.
Figure 8 illustrates an exemplary work flow for the method of managing operation mode based on service availability in accordance to the present invention.
DESCRIPTION OF THE PREFERRED EMBODIMENT
The above mentioned features and objectives of this invention will become more apparent and better understood by reference to the following detailed description. It should be understood that the detailed description made known below is not intended to be exhaustive or limit the invention to the precise disclosed form, as the invention may assume various alternative forms. On the contrary, the detailed description covers all the relevant modifications and alterations made to the present invention, unless the claims expressly state otherwise.
A mobile application platform is a type of application software developed as a platform to run on a mobile device, such as a smartphone or tablet computer. For brevity, the mobile application platform is referred as platform hereinafter. In the present invention, the platform is preferably in communication with a site, wherein the site resides at a different location from the platform and contains service information from external parties that provides services and functionality in a commercial building environment, public places and common areas such as a retail environment, airports, schools, hospitals, office
buildings, etc. The mobile device is preferably having a geographical positioning system for tracking location of the mobile device to provide location information of the mobile device to the site.
Reference is now made to Figure 1 , wherein the present invention discloses a system (100) for managing operation mode based on service availability via a platform (10) for use in a mobile device. In a preferred embodiment of the present invention, the platform (10) is a mobile application platform installed and run on the mobile device. The platform (10) comprises a service discovery module (1 1 ), a service registry (12), an application registry (13), a plurality of application modules (14), an application controller (15) and a service matcher (16). The platform (10) is in communication with a site (20) via a network, wherein the site (20) comprises a plurality of site service modules (21 ) and a plurality of service brokers (22), wherein each service broker (22) caters for each corresponding site service module (21 ) as shown in Fig. 1 . Each of the site service module (21 ) further having a plurality of services. The network is a communication network connecting the mobile device to the site (20) such as but not limited to a radio wireless local area networking (Wi-Fi network).
The plurality of site service modules (21 ) is configured to provide external services via a communication network, wherein the external services are services which are externally accessed from the platform (10) which reside on machines, servers or computers that are different from location of the platform. This is in contrast to local services which are locally running on the same mobile device as that of the platform (10). The external services contain service information or service description of current context and location of the site (20) wherein the local services contain service information or service description of pertaining to the current context of the platform (10).
The plurality of service brokers (22) are configured to listen to service discovery broadcast message from the service discovery module (1 1 ) at the platform (10) and collect the service information or service description accordingly from each corresponding site service module (21 ), during a service discovery process. The plurality of service brokers (22) is further configured to deliver service discovery responses to the service discovery module (1 1 ), wherein the service discovery responses comprising a list of the external services that are currently available based on the context and location of the mobile device. The service brokers (22) only deliver the service information of the external
services wherein the local services are directly registered with the service registry (12).
The service discovery module (1 1 ) is configured to gather and consolidate service information of the external services received from the plurality of service brokers (22), by sending service discovery broadcast message to connected network and receiving the service discovery responses from at least one service broker (22). The service information of the external services in the service discovery responses as well as the service information of the local services are then maintained by the service registry (12). The service discovery module (1 1 ) is also configured to update the service registry (12) if there is any change in service availability, whereby the service registry (12) subsequently notifying the application controller (15) of the change in the service availability. The list of services is empty upon initialization of the platform (10) which is being filled up and populated with the external and local services upon the service discovery process.
The application registry (13) is configured to maintain application information and provides the application information to the application controller (15). The application information is part of configuration for the platform (10) wherein the application information includes a list of application modules (14), an ordered list of operation modes for each application module (14) and a list of required services for the operation modes for each application modules (14). The required services for the operation modes for each application modules (14) are determined prior to development of the platform (10) in the mobile device.
The list of operation modes and their associated required services is included during development of the application module (14) in the platform (10). The ordered list of operation modes for each application module (14) is arranged in an order according to a list of required services to provide thorough application functionality to the user. The order of the list of operation modes for each application module (14) is configured during development of the platform, wherein the operation mode with a most full-featured (i.e. most useful) is placed at a top of the list of operation modes with each subsequent operation mode having fewer features or less useful feature. The last operation mode on the list of operation modes is the least useful but is still valuable to the user. The configuration for the platform (10) is fixed when the platform (10) is developed and does not change during operation of the platform (10). However, reconfiguration of the platform
(10) may be performed if there is a need to update the application information, nevertheless the platform (10) needs to be reinstalled in the mobile device to re-deploy the new configuration.
The plurality of application modules (14) are configured to provide a plurality of application functionality to end-user of the platform (10). The application functionality may include but not limited to store promotions, indoor navigation and vehicle parking guidance. Each of the application modules (14) comprises execution code for the application module of the platform (10), a list of operation modes for the application module and the required services for the operation modes of the application module. During development of the platform (10), each of the application modules (14) is configured together with the lists of operation modes and the required services to be retrieved by the application registry (13) during initialization.
The application controller (15) receives the service information and application information from the service registry (12) and the application registry (13) respectively. The application controller (15) is further configured to manage the operation modes of the application modules (14) running on the platform (10) by invoking the service matcher (16) for each application module (14) entries within the application registry (13) and noting target operation mode of the application modules (14) as determined by the service matcher (16). The application controller (15) further notifies each application module (14) whose target operation mode returned by the service matcher (16) is different from current operation mode of that application module (14).
The service matcher (16) is configured to determine the target operation mode for the application modules (14) by evaluating the ordered list of operation modes for each application module (14) in the application registry (13) to find a first entry where all required services are listed as available in the service registry (12). The target operation mode is defined as a first entry in the ordered list of the operation modes having the complete list of required services matching the service information in the service registry (12). Evaluation to determine the target operation mode based on the current context and location starts at the top of entry list and stops as soon as a matching operation mode is found. The evaluation is done by the service matcher (16) which is invoked by the application controller (15) for each operation mode in the entries. Consequently, the
platform (10) may choose the most full-featured or most useful operation mode for the application module (14).
Referring to Figure 2 is an illustration of the application information maintained by the application registry (13) wherein the application information comprises the list of application modules (14), the ordered list of operation modes for each application module (14) and the list of required services for the operation modes for each application modules (14). The list of application modules (14) contains an entry for each application module (14) in the platform (10). Each entry of the application module (14) having its own list of operation modes configured to be in order during configuration of the platform (10). Each operation mode in the ordered list having its own list of required services for the associate application module (14) to operate in that operation mode.
Figure 3 is depicted a block diagram of the evaluation to determine the target operation mode based on the current context and location. The target operation is essentially determined by matching available services (i.e. external services and local services) with the operation modes and its associated services required for the operation modes. Shown in Figure 4 is an exemplary embodiment to further demonstrate evaluation to determine the target operation mode based on the current context and location. In the exemplary embodiment, the application module (14) provides a functionality of a vehicle parking guidance based on service availability. The application module (14) of the vehicle parking guidance is designed to guide user in a parking lot to find an available bay such as but not limited to parking bays in shopping complexes. In the example, there are five active operation modes and one dormant or inactive operation mode. The order of evaluation starts from the top of the entry list and evaluation is complete as soon as a match is found whereby remaining entries are not evaluated after the match is found.
If the platform (10) has an access to the external services providing the service information about the availability of individual parking bays, map of the parking lot as well as a service to provide location tracking of the mobile device on which the platform (10) is running, then the application module (14) of the vehicle parking guidance is able to provide the most useful functionality of the operation mode, i.e. bay-navigation operation mode. Thereon, the application module (14) may further guide the user to a specific available parking bay. If the platform (10) only has an access the external services
providing the service information about availability of individual parking bays and map of the parking lot without the location tracking, then the target operation mode determined by the service matcher (16) is the bay-location operation mode, whereby the application module (14) can only display where the available parking bays are without guiding the user to the specific available parking bay. If there is no external service providing the service information about availability of individual parking bays but there are service information about parking zones whereby each parking zone may comprise of tens or hundreds of individual bays, then the target operation mode determined by the service matcher (16) may be Zone-Navigation, Zone-Location or Zone-Available Bays, depending on the availability of the service information for the map of the parking lot and the location tracking.
From the above example, it should be appreciated that different parking areas would provide different service information and thereby the application module (14) of the vehicle parking guidance in accordance to the present invention is able to manage the target operation modes for the user based on the service availability in the current context and location of the mobile device. Similar implementation may be applied to other application modules (14) providing different functionality for example store promotions and indoor navigation. In example of the store promotions, if promotion list, location tracking and indoor map services are available, the application module (14) may display related promotions and products to the user. If the user selects on a particular promotion, the application module (14) may provide a real-time map to guide the user from current location to a specific department store with the promotion. If only the promotion list service is available, the application module (14) may only display pages or screens with list of the promotion without navigation to the specific department store.
Figure 5 illustrates a method (200) of managing operation mode based on service availability via the platform (10) in accordance to the present invention. The method (200) starts by initializing the platform (10) by the application controller (15) (210), performing service discovery process by a service discovery module (1 1 ) to discover available services in current context and location (220), determining the target operation mode for each application module (14) (230) by the service matcher (16), notifying the application modules (14) of a change in operation mode (240) by the application controller (15), and executing change of operation mode in the application module (14) (250) by updating the target operation mode as the current operation mode by the application controller (15).
In a preferred embodiment, the method (200) comprises a step of recurring the step of performing the service discovery process at a regular time interval to discover available services in current context and location by the service discovery module (1 1 ) (220). The application controller (15) may set up a recurring timer to trigger the service discovery module (1 1 ) to perform a new cycle of the service discovery process. For example, the application controller (15) may set a five minute recurring timer. Thereby the service discovery module (1 1 ) is triggered to check availability of new services every five minutes. It is essential as the mobile device may change its current context and location if the user moves to a network or area in which a previously available service is no longer present, or an area where a previously unavailable service becomes available to the platform (10). Then, the platform (10) running on the mobile device needs to respond to the changes to update the operation modes of the application modules (14) as necessary.
Figure 6 illustrates the steps of initializing the platform (10) by the application controller (15) (210) further comprising steps of initializing the application registry (13) (21 1 ) with the application information, initializing the service registry (12) with an empty list of available services (212), populating the service registry (12) with the list of local services available to the platform (10) (213), initializing each of the application modules (14) (214), invoking the service discovery module (1 1 ) to trigger the service discovery process (215), and setting up a recurring timer (216) according to the regular time interval wherein at the end of each cycle of the service discovery process, a new service discovery process is triggered by invoking the service discovery module (1 1 ).
In a preferred embodiment, the list of available services is empty upon initialization and said list is populated upon the service discovery process. Therefore, in reference to Figure 5, upon recurring the step of performing the service discovery process after a regular time interval by the service discovery module (1 1 ) (220), the list of available services is completely replaced by the list of local services and external services from the current cycle of the service discovery process.
Figure 7 illustrates the step of performing service discovery process by a service discovery module (1 1 ) to discover available services in current context and location (220), comprising steps of sending the service discovery broadcast messages via the communication networks connected to the platform (10) (221 ), awaiting service discovery
response messages from at least one service brokers (22) within the connected communication networks (222), collecting service information of available external services from the service discovery response messages by the service discovery module (1 1 ) (223) and concluding the service discovery response messages upon expiry of configured time period for each cycle of the service discovery process (224), wherein the service discovery module (1 1 ) stops waiting for the service discovery responses after the configured time period is expired. The step (220) further comprising step of determining if list of the services (i.e. combination of both local services and previous external services) in the service registry (12) differs from list of available external services obtained from the service discovery response messages (225). If the aforementioned lists are same, then the system (100) concluding the service discovery process and no further action is required for the service discovery module (1 1 ) in the current cycle of the service discovery process. Otherwise, the list of the available external services in the service registry (12) is updated (226) by completely replacing the list of services in the service registry (12) with the list of available external services obtained from the service discovery response messages received from the service brokers (22) and notifying the application controller (15) of a change in service availability. Then, a new cycle of the service discovery process is triggered (227) at the regular time interval.
The step of determining a target operation mode for each application module (14) (230) by a service matcher (16), comprising steps of evaluating in order, the ordered list of operation modes for the application module (14), and determining the first entry found in the ordered list of operation modes for the application module (14) as the target operation mode, wherein the first entry having a complete list of required services for the operation modes with reference to current available services in the service registry (12).
Figure 8 illustrates an exemplary work flow for the method of managing operation mode based on service availability via the platform (10) in accordance to the present invention. According to the exemplary work flow, the application module (14) provides the application information including required services for each operation modes in each application module (14) to the application registry (13) (301 ), then, the application module (14) notifies the application information to the application controller (15) (302). The application controller (15) retrieves the application information from the application registry (13) (303), and the application controller (15) triggers the service discovery process to the service discovery module (1 1 ) (304). The service discovery module (1 1 )
sends the service discovery broadcast message to the service broker (22) (305) to start the service discovery process. The service broker (22) retrieves service information from available external services from the site service module (21 ) (306) and sends the list of available external services to the service discovery module (1 1 ) via the service discovery response (307). The service discovery module (1 1 ) consolidates the service information from the service discovery response until the service discovery process ends (308). The service discovery module (1 1 ) then registers the available external services to the service registry (12) (309) and notifies about the available external services to the application controller (15) (310). The application controller (15) retrieves the service information of the external services from the service registry (12) upon receiving notification from the service discovery module (1 1 ) (31 1 ) and sends the service information of the external services to the service matcher (16) (312). The service matcher (16) determines the target operation mode (313) based on the service information received and notifies the determined target operation mode to the application module (14) (314). The application module (14) then updates the target operation mode as current operation mode (315).
The terms“a” and“an,” as used herein, are defined as one or more than one. The term“plurality,” as used herein, is defined as two or more than two. The term“another,” as used herein, is defined as at least a second or more. The terms “including” and/or “having,” as used herein, are defined as comprising (i.e. , open language).
While this invention has been particularly shown and described with reference to the exemplary embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention as defined by the appended claims.
Claims
1 . A computer implemented system (100) for managing operation mode based on service availability via a platform (10) for use in a mobile device, wherein the platform (10) comprising:
a service discovery module (1 1 ) to gather and consolidate service information available at current context and location;
a service registry (12) to maintain the service information received from the service discovery module (1 1 );
a plurality of application modules (14) to provide a plurality of application functionality to user of the platform (10);
an application registry (13) to maintain application information functionality of the plurality of application modules (14); and
an application controller (15) to receive the service information and application information from the service registry (12) and the application registry (13) to manage the operation modes for each application module (14) based on service availability,
characterized by
a service matcher (16) to determine a target operation mode for each application module (14) by evaluating an ordered list of the operation mode for each application module (14) in the application registry (13) to find a match with the service information in the service registry (12).
2. The system (100) according to claim 1 , wherein the application information includes a list of application modules (14), the ordered list of operation modes for each application module (14) and a list of required services for the operation modes for each application module (14).
3. The system (100) according to claim 2, wherein the ordered list of operation modes for each application module (14) is arranged in an order according to a list of required services to provide a thorough application functionality to the user.
4. The system (100) according to claim 1 , wherein the target operation mode is a first entry in the ordered list of the operation mode having a complete list of required services matching with the service information in the service registry (12).
5. The system (100) according to claim 1 , wherein the service information includes a list of current available services comprises local services and external services.
6. The system (100) according to claim 1 , wherein the platform (10) is in communication with at least one of a plurality of service brokers (22), wherein the service brokers (22) collect the service information from a corresponding site service module (21 ) available at current context and location of the mobile device.
7. A computer implemented method (200) of managing operation mode based on service availability via a platform (10) for use in a mobile device, characterized by the steps of:
performing service discovery process by a service discovery module (1 1 ) to discover available services in current context and location (220);
determining a target operation mode for each application module (14) (230) by a service matcher (16); and
executing change of operation mode in the application module (14) (250) by updating the target operation mode as a current operation mode by an application controller (15).
8. The method (200) according to claim 7, wherein performing service discovery process by the service discovery module (1 1 ) to discover available services in current context and location (220) comprising steps of:
sending service discovery broadcast messages via communication networks connected to the platform (10) (221 );
awaiting service discovery response messages from at least one service broker (22) within the connected communication networks (222);
collecting service information available at current context and location from the service discovery response messages by the service discovery module (1 1 ) (223);
determining if list of the service information in a service registry (12) differs from list of the service information obtained from the service discovery response messages (225);
updating the list of the service information in the service registry (12) with the list of the service information obtained from the service discovery response messages (226); and
notifying the application controller (15) of a change in service availability.
9. The method (200) according to claim 7, wherein determining a target operation mode for each application module (14) (230) by a service matcher (16) comprising steps of:
invoking the service matcher (16) by the application controller (15) upon receiving notification of the change in service availability;
evaluating in order, an ordered list of operation modes for each application module (14); and
determining a first entry, in the ordered list of operation modes, having a complete list of required services matching with the service information in the service registry (12) as the target operation mode.
10. The method (200) according to claim 7, wherein the method (200) further comprising steps of recurring the step of performing the service discovery process at a regular time interval by the service discovery module (1 1 ).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
MYPI2018003035 | 2018-12-28 | ||
MYPI2018003035 | 2018-12-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020139078A1 true WO2020139078A1 (en) | 2020-07-02 |
Family
ID=71127384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/MY2019/050134 WO2020139078A1 (en) | 2018-12-28 | 2019-12-27 | System for managing operation mode based on service availability and method thereof |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2020139078A1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009145982A (en) * | 2007-12-11 | 2009-07-02 | Dainippon Printing Co Ltd | Service management server, service information provision method, and service information distribution program |
US20090275348A1 (en) * | 2008-05-02 | 2009-11-05 | Weinreich Andrew P | Location-Based Services Platform |
JP4731822B2 (en) * | 2004-03-30 | 2011-07-27 | 京セラ株式会社 | Mobile phone terminal device, program management method, and computer program therefor |
KR20120124818A (en) * | 2011-05-04 | 2012-11-14 | 엘지전자 주식회사 | Mobile terminal and method for controlling application thereof |
KR101584984B1 (en) * | 2009-07-14 | 2016-01-13 | 주식회사 엘지유플러스 | Mobile communication terminal for providing location based service and location based service providing mothod thereof application recommendation server |
-
2019
- 2019-12-27 WO PCT/MY2019/050134 patent/WO2020139078A1/en active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4731822B2 (en) * | 2004-03-30 | 2011-07-27 | 京セラ株式会社 | Mobile phone terminal device, program management method, and computer program therefor |
JP2009145982A (en) * | 2007-12-11 | 2009-07-02 | Dainippon Printing Co Ltd | Service management server, service information provision method, and service information distribution program |
US20090275348A1 (en) * | 2008-05-02 | 2009-11-05 | Weinreich Andrew P | Location-Based Services Platform |
KR101584984B1 (en) * | 2009-07-14 | 2016-01-13 | 주식회사 엘지유플러스 | Mobile communication terminal for providing location based service and location based service providing mothod thereof application recommendation server |
KR20120124818A (en) * | 2011-05-04 | 2012-11-14 | 엘지전자 주식회사 | Mobile terminal and method for controlling application thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8812027B2 (en) | Geo-fence entry and exit notification system | |
US8806478B2 (en) | Customizing operating system based on detected carrier | |
US6806813B1 (en) | Method for location-based asset management | |
US8817712B2 (en) | Apparatus for providing location based service and method thereof | |
EP2499846B1 (en) | Method and apparatus for switching modes | |
CN106537884B (en) | Beacon discovery service | |
EP3820172B1 (en) | Communication solution for internet of vehicles | |
US8875127B2 (en) | Operating system customization | |
US9038060B2 (en) | Automatically installing operating system specific to a detected network | |
US20030212684A1 (en) | System and method for adapting preferences based on device location or network topology | |
US10440563B2 (en) | Mobility management node selection to support cloud-centric environments | |
CN101484888A (en) | Method and apparatus for monitoring wireless network access | |
JP2002152790A (en) | Method and device for radio communication system for providing message of location base | |
US20150011237A1 (en) | Geo-fence entry and exit notification system | |
US9846892B2 (en) | Zone-based location-based service | |
CN101213864A (en) | User-driven calibration for location system | |
US10684890B2 (en) | Network deployment for cellular, backhaul, fiber optic and other network infrastructure | |
KR101645728B1 (en) | An apparatus for providing location based service and a method thereof | |
WO2020139078A1 (en) | System for managing operation mode based on service availability and method thereof | |
KR101073113B1 (en) | Location-based method and system for dynamically managing network physical objects | |
US11411829B1 (en) | Provisioning managed network nodes and/or managing network nodes | |
JP2010273086A (en) | Communication system and communication method | |
US20240161148A1 (en) | Information processing apparatus and information processing method | |
JP2003284112A (en) | Mobile wireless communication terminal and communication method therefor | |
Meriste et al. | Location awareness of information agents |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19905674 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19905674 Country of ref document: EP Kind code of ref document: A1 |