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 PDF

Info

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
Application number
PCT/MY2019/050134
Other languages
French (fr)
Inventor
Mohamad Aizul Bin MOHAMAD TALLAHA
Se Keng NGOI
Chin Teong LOOI
Ariffin Bin AHMAD
Guan Huai NG
Original Assignee
Mimos Berhad
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mimos Berhad filed Critical Mimos Berhad
Publication of WO2020139078A1 publication Critical patent/WO2020139078A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/562Brokering proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-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 ).
PCT/MY2019/050134 2018-12-28 2019-12-27 System for managing operation mode based on service availability and method thereof WO2020139078A1 (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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