AU2013100202A4 - Data access system and method - Google Patents

Data access system and method Download PDF

Info

Publication number
AU2013100202A4
AU2013100202A4 AU2013100202A AU2013100202A AU2013100202A4 AU 2013100202 A4 AU2013100202 A4 AU 2013100202A4 AU 2013100202 A AU2013100202 A AU 2013100202A AU 2013100202 A AU2013100202 A AU 2013100202A AU 2013100202 A4 AU2013100202 A4 AU 2013100202A4
Authority
AU
Australia
Prior art keywords
user
data
computing system
controller
function
Prior art date
Legal status (The legal status 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 status listed.)
Expired
Application number
AU2013100202A
Other versions
AU2013100202B4 (en
Inventor
John Noel Avery
Kenneth Tan
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ENTERPRISE GLUE Pty Ltd
Original Assignee
ENTPR GLUE Pty Ltd
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
Priority claimed from AU2012261789A external-priority patent/AU2012261789B2/en
Application filed by ENTPR GLUE Pty Ltd filed Critical ENTPR GLUE Pty Ltd
Priority to AU2013100202A priority Critical patent/AU2013100202B4/en
Application granted granted Critical
Publication of AU2013100202A4 publication Critical patent/AU2013100202A4/en
Publication of AU2013100202B4 publication Critical patent/AU2013100202B4/en
Anticipated expiration legal-status Critical
Expired legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

A data access method and system for accessing data on an external computing system, the method comprising: 5 registering a registrable application with a host computing system, said host computing system being or providing a social networking website; retrieving user data from the host computing system with a controller of the registrable application; passing the user data from 10 the controller to a user database; initiating a data transfer between the controller and the external computing system with the controller; controlling a rendering engine with the controller, the rendering engine being configured to render a display of a user computer of a user of the 15 host computing system in a manner compatible with the host computing system such that the registrable application appears to the user as embedded in or integrated into an interface of the host computing system; and mediating the data transfer between the controller and the external 20 computing system with a transaction management layer. The data on the external computing system relates to at least one of telecommunications services, financial services and services of a utility. 4100189_1 (GHMaters) P77111.AU.5

Description

- 1 DATA ACCESS SYSTEM AND METHOD Related Application This application is divided from and claims the benefit of 5 the filing and priority dates of patent application no. 2012261789 filed 17 December 2012, which is in turn based on and claims the benefit of the filing and priority dates of patent application no. 2009200895 filed 6 March 2009 and associated with patent application no. 2008901118 10 filed 7 March 2008, the contents of all three of which as filed are incorporated herein by reference. Field of the Invention The present invention relates to a system, method and 15 computer program product for providing data access, and is of particular but by no means exclusive application is providing data access to an external database via a social networking website. 20 Background of the Invention In some existing approaches, a user of mobile telephony services who wishes to view his or her account balance can log on to a web site of his or her telephony service provider or carrier, or use a SMS-based application loaded 25 on the telephone handset or a SIM Toolkit application on the telephone handset with the relevant functionality. In other existing approaches, the account balance can be ascertained by calling a call centre maintained by his or her service provider's or telephone an interactive voice 30 response system. Similar steps are commonly required to purchase and redeem mobile telephony credit or to pay bills for mobile telephony services. Commonly, the user is a customer of multiple service 35 providers (such as mobile telephony, fixed telecommunications, banking and utilities), so may wish to access multiple accounts via the aforementioned channels, 4100189_1 (GHMaters) P77111.AU.5 - 2 a separate channel being provided by each service provider and - in some cases - class of service. Consequently, users that wish to view all their service 5 provider bills, view all their respective service account balances or settle these accounts must generally employ multiple channels (including web sites, interactive voice response systems and call centres) as they have service providers (which in any event is contingent on each 10 service provider's providing such functionality). If online, the user must leave his or her homepage and either use other transaction technologies (e.g. phone, SMS) or visit external (non-homepage) websites to effect the desired transaction. 15 Summary of the Invention According to a first broad aspect of the present invention, therefore, there is provided a data access system for accessing data on one or more external 20 computing systems, such as via a host computing system, comprising: a registrable application, adapted to be registrable with a host computing system as a registered application; 25 a rendering engine for rendering a display in a manner compatible with the host computing system; a controller adapted to control retrieval of user data of the host computing system (typically via the registrable application), to pass the user data to a user 30 database and to control the rendering engine; and a transaction management layer for mediating data transfer between the controller and the one or more external computing systems. 35 In a particular embodiment, the user data is stored on the host computing system in the form of user profiles. 4100189_1 (GHMaters) P77111.AU.5 - 3 In a particular embodiment, the controller constitutes the registrable application, and hence is registrable with the host computing system as a registered application and adapted to retrieve the user data from the host computing 5 system and pass the user data to the user database, or the registrable application comprises the controller. It will be appreciated by those skilled in the art that each of the components of the system may be provided as 10 software, hardware or firmware, or as a combination of these. In addition, a component - such as the controller - may itself be provided as a plurality of modules. Furthermore, the system may comprise a hardware system running applications that provide or constitute the 15 features of the system, or as software executed or executable on a computing system. It should also be noted that the various components of the system may be distributed, including by being located in a plurality of countries. 20 The user database may be initially unpopulated. The user database may initially comprise only the software for maintaining the user data that will subsequently populate the user database. 25 The display generally comprises a display of a user computer of a user of the host computing system, such as a personal computer with an internet browser used to access a remote website provide by the host computing system. 30 The host computing system typically has an interface that, in some embodiments, allows users to interact with each other. 35 The controller may control initiation of data transfer between the controller and one or more external computing systems based on the user data. 4100189_1 (GHMaters) P77111.AU.5 Also, the user data of the host computing system pertaining to a plurality of users of the host computing system may be linked, such as by including in one or more 5 sets of user data links to one or more other sets of user data. For instance, in an embodiment, the user data is linked so that a user can view user data of another user, or in 10 another embodiment, the user data is linked so that a user can initiate a transaction relating to another user. In one particular embodiment, the system is operable by a user of the host computing system to conduct transactions 15 with the external computing system according to at least some of the user data. The host computing system typically provides the aforementioned functionality in the form of a Web 2.0 20 Application or a social networking website where the interface is a web based interface which is accessed via the internet, and links are provided between users' profiles, categorised by some predicate (e.g. user A is a "friend of" user B). Examples of host computing systems 25 are the Facebook (trade mark) and Myspace (trade mark), websites, in which the interface is an HTML based interface accessed via the internet, applications - such as that provided by the system of this aspect of the invention - can be registered with the main site by 30 registering them through the Facebook or Myspace site and, once registered, can render information to the interface using a custom mark-up language called (in the case of Facebook) FBML. An application that is registered in, for example, Facebook is assigned an application key and a 35 secret key that the application can use to access user information, and the location of the application (such as in the form of a URL) is passed to the registering 4100189_1 (GHMaters) P77111.AU.5 - 5 application (in this example, Facebook) so that the registered application can be found. Hence, applications, such as that according to the present invention, can access information from the user profile using a custom 5 REST based API. According to this invention, therefore, service provider transaction functionality can be provided within a user's chosen social networking site such as Facebook or Myspace, 10 so that the user can manage their accounts while continuing with his or her social networking and other activities, without using other transaction technologies or leaving his or her social networking or other such sites. 15 Interest and registered users of social networking websites and other Web 2.0 sites are growing at a rapid rate. These social networking and personal expression websites are particularly popular with youth as a way of 20 expressing themselves, sharing their personal lives in a controlled manner with their friends and family, and making new friends. Many users visit these sites several and in some cases many times a day, and regularly update their content with pictures, videos, blogs, opinions and 25 so forth. Many users actually use these web sites as their homepages and point of presence on the Internet. Though not exclusively, youths are also significant users of mobile phone services, and many of these youths are 30 users of prepaid mobile services, although the proposed invention is equally applicable to postpaid mobile phone subscribers, fixed and mobile broadband subscribers, fixed line subscribers, cable and satellite pay TV subscribers, and subscribers of more than one of these 35 telecommunications services, where they consume these services and either pay for them as they go or pay for them in arrears. This concept can also be extended to 4100189_1 (GHMaters) P77111.AU.5 - 6 financial services and utilities for presenting billing, invoicing and customer alerts directly to the personal online space (which is increasingly in the form of one or more Web 2.0 or social networking sites) of their 5 customers. In particular, many youths spend an increasing amount of time on these Web 2.0 or social networking sites; various embodiments of the present invention allow such users to 10 gain access to their mobile phone account balances, to top-up these accounts, to give credit to friends and to purchase credit, without leaving their personal pages. This is more convenient, more efficient and compatible with the entire concept of having their own personal space 15 on the Internet, and compatible with the types of social interactions which occur on these types of sites especially sending each other gifts (which in the case of mobile services can be applying credit from your account to that of a friend). 20 According to the present invention, such balance enquiry, balance top-up, bill payment and voucher purchase functionality becomes in effect another application that a subscriber on the relevant social network site can add to 25 their profile and can share with friends. For example, in Facebook, a balance enquiry and top-up application is presented - according to one embodiment of the present invention - as a box that is added to a user's 30 profile. According to this embodiment, the user can - in effect - use the website to tunnel into the relevant service provider's back-office (e.g. customer relationship management, billing, payments gateway or network elements) to retrieve the relevant balance information or to apply a 35 payment to a specified account. In this embodiment, giving credit (i.e. by one user to another) essentially comprising a withdrawal from one user's account and a 4100189_1 (GHMaters) P77111.AU.5 deposit into another user's account. This tunnelling involves traversing the relevant service provider's security infrastructure and connecting to the relevant back-office system or systems. 5 The system can carry out the necessary messaging, protocol conversion, data formatting (bi-directional) and so forth to ensure that the relevant front-end (Web 2.0 application or social networking site) does not have to understand the 10 idiosyncrasies of the specific service provider's back-end systems, or the specifics of the communication mechanism, while still being able to access these back-end systems and to transact with them. 15 According to a second broad aspect of the present invention, there is provided a data access method for accessing data on one or more external computing systems, such as via a host computing system, comprising: registering a registrable application with the 20 host computing system; controlling retrieval of user data from the host computing system with a controller; passing the user data from the controller to a user database; 25 controlling a rendering engine configured to render a display in a manner compatible with the host computing system with the controller; and mediating data transfer between the controller and the one or more external computing systems with a 30 transaction management layer. In a particular embodiment, the method can be performed by a user of the host computing system to conduct transactions with the external computing system according 35 to at least some of the user data. According to a third broad aspect of the present 4100189_1 (GHMaters) P77111.AU.5 - 8 invention, there is provided a computer program product for accessing data on one or more external computing systems, such as via a host computing system, comprising: a registrable application, adapted to be 5 registrable with a host computing system as a registered application; a rendering engine for rendering a display in a manner compatible with the host computing system; a controller adapted to control retrieval from 10 the host computing system of user data of users of the host computing system, to control passing of the user data to a user database and to control the rendering engine; and a transaction management layer for mediating data 15 transfer between the controller and the one or more external computing systems. In a particular embodiment, the product can be used by a user of the host computing system to conduct transactions 20 with the external computing system according to at least some of the user data. In a particular broad aspect of the invention, there is provided a data access method for accessing data on one or 25 more external computing systems, comprising: registering a registrable application with a host computing system, said host computing system being or providing a social networking website; retrieving user data from the host computing 30 system with a controller of the registrable application; passing the user data from the controller to a user database; initiating a data transfer between the controller and the one or more external computing systems with the 35 controller; controlling a rendering engine with the controller, the rendering engine being configured to 4100189_1 (GHMaters) P77111.AU.5 - 9 render a display of a user computer of a user of the host computing system in a manner compatible with the host computing system such that the registrable application appears to the user as embedded in or integrated into an 5 interface of the host computing system; and mediating the data transfer between the controller and the one or more external computing systems with a transaction management layer; wherein each of the one or more external 10 computing systems is a back-end system of at least one of a telecommunications provider, a financial services provider and a utility. The method may include linking the user data of the host 15 computing system pertaining to a plurality of users of the host computing system, and the user can view user data of another user of the host computing system or initiate a transaction relating to the other user of the host computing system. 20 The data transfer may relate to or constitute at least one of: i) a transfer of credit from an account of the user to an account of another user of the host computing system, 25 ii) a bill or invoice payment, iii) payment for a prepaid or postpaid service, iv) a gift, and v) a purchase of credit or of a voucher. 30 According to this aspect of the invention, there is also provided a data access system for accessing data on one or more external computing systems, comprising: a registrable application, adapted to be registrable as a registered application with a host 35 computing system that is or provides a social networking website, the registrable application comprising: a rendering engine for rendering a display 4100189_1 (GHMaters) P77111.AU.5 - 10 of a user computer of a user of the host computing system in a manner compatible with the host computing system such that the registrable application appears to a user as embedded in or integrated into an interface of the host 5 computing system; and a controller adapted to retrieve user data of the user of the host computing system from the host computing system, to pass the user data to a user database and to control the rendering engine; and 10 a transaction management layer for mediating data transfer between the controller and the one or more external computing systems; wherein the controller initiates the data transfer between the controller and the one or more 15 external computing systems based on the user data, and wherein each of the one or more external computing systems is a back-end system of at least one of a telecommunications provider, a financial services provider and a utility. 20 It should be noted that any of the various individual features of each of the above aspects of the invention, and any of the various individual features of the embodiments described herein including in the claims, can 25 be combined as suitable and desired. Brief Description of the Drawing In order that the invention may be more clearly ascertained, embodiments will now be described, by way of 30 example, with reference to the accompanying drawing, in which: Figure 1 is a schematic view of the physical architecture of a computing system according to an embodiment of the present invention, shown with a user 35 computer and external systems; Figure 2 is a schematic view of the functional architecture of the computing system of figure 1, shown 4100189_1 (GHMaters) P77111.AU.5 - 11 with the user computer and the external systems; Figure 3 is a schematic view of an example of the computing system of figure 1, in which the social networking site comprises Facebook; 5 Figure 4 tabulates the various functions provided by the controller, transaction management layer, rendering engine and user database of the computing system of figure 1; Figure 5 tabulates the various functions provided 10 by an exemplary mobile telephony application (termed the 'MyMobile Application') and their interaction with the rendering application of the computing system of figure 1; Figures 6 to 9 are screen mockups of the MyMobile Application as hosted by Facebook. 15 Detailed Description Figure 1 is a schematic view of the physical architecture of a computing system 10 according to an embodiment of the present invention, comprising a host computing system in 20 the form of a website server 12 (providing with a social networking site, discussed below) and a data access and rendering system 14; figure 1 also illustrates a user computer 16 of a user of site 32 and a plurality of external back-end systems 18. A user or users interact 25 with site 32 via a web browser (not shown) running on user computer 16, which downloads and displays the website of site 32. Data access and rendering system 14 includes a server 20 30 (that includes a controller and rendering engine, discussed below), a user database server 22 (that includes a user database, discussed below), and a transaction management layer server 24 (that includes a transaction management layer, discussed below). Transaction 35 management layer server 24 also implements a firewall 26 to provide security between data access and rendering system 14 and external back-end systems 18. 4100189_1 (GHMaters) P77111.AU.5 - 12 External back-end systems 18 are typically systems that, in existing systems, support online billing, account enquiry and the like transactions, via the websites (or 5 call centre operators, etc) of the owners of those back end systems 18. Briefly, data access and rendering system 14 makes it possible for the user of site 32 to access data on, and conduct transactions with, external back-end systems 18 without using the websites (or call centres, 10 etc) of the owners of those back-end systems 18. Figure 2 is a schematic view of the functional architecture 30 of computing system 10, shown with user computer 16 and back-end systems 18. Architecture 30 15 includes - on website server 12 - a social networking site 32 hosting users via website 34 (for example, users may access site 32 using the website 34). Site 32 comprises user data 36 (including user profile data 38, such as the user's name, age and location, and friend data 40 about a 20 user's nominated friends). Site 32 includes a data interface 42 in the form of a language API or web service interface to provide access to user profile data 38 and friend data 40. 25 According to this embodiment, site 32 also includes a visual application interface 44 that enables applications to be embedded in web site 34 using, for example, HTML or a language API. 30 Server 20 of data access and rendering system 14 includes a rendering engine 46 that renders the desired information into site 32, and a controller 48 that drives rendering engine 46 and hence the rendered view. Controller 48 is registrable with site 32 and, once so registered, acquires 35 information about the user from site 32 (via data interface 42) and supplies instructions to rendering engine 46 accordingly. User database server 22 of data 4100189_1 (GHMaters) P77111.AU.5 - 13 access and rendering system 14 includes a user database 50 of user data that includes system data 52 and access rules 54; access rules 54 specify what kind of information should be displayed to the user. For example, a user may 5 specify that only friends who belong to a specific networking group can view call details (comprising minutes spent talking) to other members of that group. Controller 48 applies access rules 54 to profile data 38 and friend data 40 (received via data interface 42) to ensure that 10 the information acquired from the back-end systems 18 via transaction management layer 56, which is to be provided to rendering engine 46, is appropriate to the current view. 15 Transaction management layer server 24 of data access and rendering system 14 includes a transaction management layer 56 that incorporates a set of business rules for accessing information in external back-end systems 18 (which are third party systems related to respective 20 services to which access is provided according to this embodiment). Data access and rendering system 14 is configured to receive and capture from external back-end systems 18 information specific to each respective back end system 18, such as a user's mobile number. Data 25 access and rendering system 14 is configured to store that information in user database 50, and associate it with the user's profile data 38 received from site 32. Transaction management layer 56 provides a consistent interface for performing potentially complex business transactions 30 involving external back-end systems 18. For example, topping up a mobile telephony account may involve validating a credit voucher on one external back-end system 18, adding credit to an account on another external back-end system 18, and activating the phone service on 35 another external back-end system 18. In one specific example of computing system 10, site 32 4100189_1 (GHMaters) P77111.AU.5 - 14 comprises the Facebook (trade mark) web site. Figure 3 is thus a schematic view of the architecture 60 of a computing system with an architecture comparable to the architecture 30 of computing system 10 (see figure 2), so 5 like reference numerals have been used to identify like features. Facebook provides a web site which users can access to share information with their friends. It enables users to 10 embed third party applications. Referring to figure 2, Facebook site 32 includes a Facebook API 42 that provides access to a user's profile data 38 and friend's data 24 if the users have added the application. 15 The Facebook Markup Language (FBML) 44 supported by Facebook site 32 enables an application to embed its view inside the Facebook platform. Hence, data access and rendering system 14 - in this example - includes a Flex application 46 (comprising a rich internet application 20 created in Flex (trade mark)) that provides users with a highly interactive application that can be used to access data about, in this example, the users' mobile phone account. 25 Data access and rendering system 14 includes a PHP application 48 that drives the integration of the Flex application 46 with Facebook site 32. PHP application 48 acquires the appropriate user information via Facebook API 42 and provides it to the view layer (i.e. Flex 30 application 46) and transaction management layer 56. Transaction management layer 56, in this example, is implemented using the Business Process Execution Language (BPEL), and BPEL transaction management layer 56 contains a set of processes that wrap a complex set of interactions 35 with various back-end systems 18. In this example, back end systems 18 include an online billing system 62, an offline billing system 64, a voucher management system 66 4100189_1 (GHMaters) P77111.AU.5 - 15 and a provisioning system 68. Accordingly, the system structure has a number of advantages including that: a user can access a number of 5 different external systems through a single interface in real-time or near real-time such that transactions can be performed on the external systems; the user's details for accessing the external systems are kept separate to user details for the host system and the user can 10 selectively allow access to the (or parts of the) external systems to other users without providing the other users with access details for the external systems. Figure 4 tabulates at 70 the various functions provided by 15 controller 48, transaction management layer 56, rendering engine 46 and user database 50 (and hence, in the example of figure 3, PHP controller application 48, BPEL transaction management layer 56, Flex application 46 and user database 50. 20 Thus, referring to figure 4, controller 48 function Add Application is used to add an application to the user's profile data 38 (upon the request of the user of site 32), and calls functions Validate Application and Register. 25 Controller 48 function View Profile is triggered when a user views a user's profile data 38 when data access and rendering system 14 has added an application. Controller 48 then determines which view to render based on which 30 profile is being viewed and which user is viewing, employing or calling functions View Own Profile and View Friend's Profile. Controller 48 function View Main is triggered when a user 35 views the main page of an added application. Controller 48 determines which view to render based on the registration status of the user, employing or calling 4100189_1 (GHMaters) P77111.AU.5 - 16 functions Validate Application and View Main of controller 48 and Render Register of rendering engine 46. Controller 48 function Do Action enables a user to perform 5 a system specific action. Such actions depend on the specific application and back-end system(s) 18 being called. Controller 48 function Remove Application allows site 32 10 (and by extension the user) to remove an application from a user's profile. Controller 48 function Validate Application is adapted to use a site specific mechanism to authenticate with the 15 host site in order to verify the identity of the application. Controller 48 function Register is employed when controller 48 receives information from the rendered 20 register view (with function Render Register of rendering engine 46) and validates the application (with function Validate Application of controller 48); Register then adds system data 52 and access rules 54 to the user database 50. This function optionally includes extended 25 functionality to validate user data 36 in an application specific way (see functional description of MyMobile example below for further details). Controller 48 function View Own Profile prompts controller 30 48 to validate with site 32 (with function Validate Application) and acquire user data 36 from site 32 before invoking an implementation specific action (with function Invoke Action). A combination of the results and acquired data is then sent to rendering engine 46 via function 35 Render Own Profile (see the functional breakdown of the exemplary MyMobile Application below for an example). 4100189_1 (GHMaters) P77111.AU.5 - 17 Controller 48 function View Friend's Profile is used when controller 48 validates with site 32 (with function Validate Application) and acquires user data 36 and friend data 40 from site 32. View Friend's Profile then acquires 5 access rules 54 (with function Get Access Rule) from user database 50 and applies the access rules 54 (with function Apply Access Rules) before invoking an implementation specific action (with function Invoke Action). A combination of the results and acquired data is then sent 10 to rendering engine 46 with function Render Friends Profile (see the functional breakdown of the exemplary MyMobile Application below). Controller 48 function View Main is used when controller 15 48 validates with site 32 (with function Validate Application) and acquires user data 36 from site 32. One or more implantation specific actions are invoked (with function Invoke Action) and a combination of the results and acquired data is sent to rendering engine 46 with 20 function Render Main. Controller 48 function View All Friends prompts controller 48 to validate with site 32 (with function Validate Application) and acquire user data 36 and friend data 40 25 from site 32. For each friend who has Data access and rendering system 14, controller 48 acquires (with function Get Access Rule) and applies (with function Apply Access Rules) access rules 54 before invoking an implementation specific action (with function Invoke Action). A 30 combination of the results and acquired data is then sent to rendering engine 46 with function Render All Friends (see the functional breakdown of the exemplary MyMobile Application below). 35 Controller 48 function View Application Specific is used by controller 48 to validate with site 32 (with function Validate Application) and acquires user data from the host 4100189_1 (GHMaters) P77111.AU.5 - 18 site 32 before invoking one or more implementation specific actions (with function Invoke Action). A combination of the results and acquired data is then sent to rendering engine 46 via rendering engine 46 Render 5 Application Specific (see the functional breakdown of the exemplary MyMobile Application below). Controller 48 function Alter Data is employed when controller 48 receives new user details from rendering 10 engine 46 via function Change View. Controller 48 uses this input to alter the system data (with functions Add System Data, Change System Data and Delete System Data) and access rules 54 (with functions Add Access Rule, Change Access Rule and Delete Access Rule). 15 Controller 48 function Apply Access Rule is used when controller 48 finds any access rules 54 that match the user who is requesting the data view and grants or denies access to the data based on these rules. 20 Controller 48 function Invoke Action controls controller 48 to acquire system data 52 (with function Get System Data) and then invokes an application specific action via transaction management layer 56 with transaction 25 management layer 56 function Invoke Action. Rendering Engine 46 function Render Main uses a rendering API of site 32, as well as data provided from controller 48, to render a main application view within site 32. 30 Rendering Engine 46 function Render Register is employed when rendering engine 46 uses the rendering API of site 32 to render a view for taking registration information from the user; this information may include authentication 35 information for back-end systems 44 or details about how friends can access their data. It is application specific. 4100189_1 (GHMaters) P77111.AU.5 - 19 Rendering Engine 46 function Render Own Profile is used when rendering engine 46 uses the rendering API of site 32 to render a view displaying a user's own profile 5 information. Rendering Engine 46 function Render Friends Profile uses the rendering API of site 32 to render a view displaying a friend's profile information. 10 Rendering Engine 46 function Render All Friends uses the rendering API of site 32 to render a main view displaying details about a user's friends. 15 Rendering Engine 46 function Render Application Specific* uses the rendering API of site 32 to render a view displaying some application specific information (see functional breakdown of exemplary MyMobile Application for an example). 20 Rendering Engine 46 function Render Change View uses the rendering API of site 32 to render a view requesting information about access rules 54 and system data 52, and then invokes controller 48 function Alter User Data to set 25 these values. Rendering Engine 46 function Render Logo is an internal function for rendering the logo using the rendering API of site 32. This segregation enables branding to be changed 30 quickly and easily. Rendering Engine 46 function Render Advertising is also an internal function, and rendering advertisements using the rendering API of site 32. This segregation enables 35 advertising to be changed quickly and easily. User Database 50 function Add System Data is used by user 4100189_1 (GHMaters) P77111.AU.5 - 20 database 50 to store a new record linking a user to data about their accounts on back-end system 18. User Database 50 function Change System Data is used by 5 user database 50 to alter a record linking a user to data about their accounts on back-end system 18. User Database 50 function Get System Data is used by user database 50 to retrieve a set of records linking a user to 10 data about their accounts on back-end systems 18. User Database 50 function Delete System Data is used by user database 50 to remove a record linking a user to data about their accounts on back-end systems 18. 15 User Database 50 function Add Access Rule is used by user database 50 to store a new record defining the access allowed for different friends or groups of friends. 20 User Database 50 function Change Access Rule is used by user database 50 to alter a record defining the access allowed for different friends and groups of friends. User Database 50 function Get Access Rule is used by user 25 database 50 to retrieve a set of records defining the access allowed for different friends or groups of friends. User Database 50 function Delete Access Rule is used by user database 50 to remove a record defining the access 30 allowed for different friends or groups of friends. Transaction management layer 56 function Invoke Action I used by transaction management layer 56 to invoke an application specific action (see functional breakdown of 35 exemplary MyMobile Application for an example). In one example, Data access and rendering system 14 can be 4100189_1 (GHMaters) P77111.AU.5 - 21 used to add an application to site 32 for accessing and modifying a mobile telephony account; this exemplary application is termed the 'MyMobile Application', and is designed to be added to Facebook (cf. figure 3). Figure 5 5 tabulates at 80 the various functions provided by the MyMobile Application. Controller 48 function Add application: controller 48 enables Facebook (and by extension the user) to add the 10 application to a user's profile, by calling functions Validate Application and Render Register. Controller 48 function View Profile: controller 48 is triggered when a user views a user profile with the 15 application added. The controller 48 then determines which view to render: if a user is viewing their own profile the View Own Profile function is called, and if a user is viewing someone another user's profile the View Friends Profile function is called. 20 Controller 48 function View Main: controller 48 is triggered when a user views the applications main page. After validating (with function Validate Application) and acquiring the user ID from Facebook, controller 48 25 determines which view to render based on the registration status of the user. If the user is registered, the user calls function View Main Page or otherwise function Render Register. 30 Controller 48 function Get Current Balance: controller 48 acquires the user's MSISDN and account data (with function Get System Data) and invokes the Get Current Balance function in transaction management layer 56. 35 Controller 48 function Get Current Balance Summary: controller 48 acquires the user's MSISDN and account data (with function Get System Data) and invokes the Get 4100189_1 (GHMaters) P77111.AU.5 - 22 Current Balance Summary function in transaction management layer 56. Controller 48 function Top Up: controller 48 acquires the 5 user's MSISDN and account data (with function Get System Data) and invokes the Top Up function in transaction management layer 56. Controller 48 function Gift Credit: controller 48 acquires 10 the initiating and receiving user's MSISDN and account data (with function Get System Data) and invokes the Gift Credit function in the transaction management layer 56. Controller 48 function Get Usage History: controller 48 15 acquires the user's MSISDN and account data (with function Get System Data) and invokes the Get Usage History function in transaction management layer 56. Controller 48 function Remove Application: controller 48 20 uses the Facebook API 42 to remove the application from the user's profile data 38. Controller 48 function Validate Application: controller 48 uses Facebook's application key and an encrypted 25 application secret key to authenticate with Facebook in order to verify the identity of the application. Controller 48 function Register: controller 48 receives information from the Render Register function and 30 validates that information either by sending a code via SMS to the user's MSISDN, or be asking the user to enter a validation PIN used to enter the mobile vendors website. In the case of SMS validation, the user is referred back to the register view (with function Render Register) where 35 he or she must enter this code to proceed. Once either code is confirmed controller 48 adds access rules 54 (with function Add Access Rule) and system data 38 (with 4100189_1 (GHMaters) P77111.AU.5 - 23 function Add System Data). Controller 48 function View Own Profile: controller 48 validates with the host site 32 (with function Validate 5 Application) and acquires user data from site 32, which it uses as input to the Get Current Balance function. The user data and the result of the Get Current Balance function are then sent to rendering engine 46 with rendering engine 46 function Render Own Profile. 10 Controller 48 function View Friends Profile: controller 48 validates with site 32 (with function Validate Application) and acquires user data 36 and friend data 34 from site 32. It then applies access rules 54 (with 15 function Apply Access Rule) to determine what information the logged-in user is able to view. The user may be able to view no information, balance summary, or balance details. If the user is authorized to view balance information, controller 48 calls the Get Current Balance 20 function. If the user is authorized to see only a balance summary, controller 48 calls the function Get Current Balance Summary. This data is then sent to rendering engine 46 with function Render Friends Profile. 25 Controller 48 function View Main Page: controller 48 determines which of the main screens the user is viewing (via information passed by the navigation buttons) and invokes the View Front Page, View All Friends, View Top Up, View Gift or View Statement controller functions. 30 Controller 48 function View Front Page: controller 48 validates with site 32 (with function Validate Application) and acquires user data 36 from site 32. It then invokes the Get Current Balance function. The user 35 data 36 and results of this function are sent to the rendering engine 46 via function Render Main. 4100189_1 (GHMaters) P77111.AU.5 - 24 Controller 48 function View All Friends: controller 48 validates with the host site 32 (with function Validate Application) and acquires user and friend data from the host site. For each friend who has the application added 5 the system applies the access rules 54 (with function Apply Access Rule). For each friend where the user is authorized to see the balance summary the Get Current Balance Summary function is invoked. The results of these queries are then combined with the user data 36 and sent 10 to the rendering engine 46 via function Render All Friends. Controller 48 function View Top Up: controller 48 validates with the host site 32 (with function Validate 15 Application) and acquires user data 36 from the host site 32. It then invokes the Get Current Balance function. The user data 36 and results of this function are sent to the rendering engine 46 via function Render Top Up. 20 Controller 48 function View Gifting: controller 48 validates with the host site 32 (with function Validate Application) and acquires user data 36 from the host site 32. The user data 36 is sent to the rendering engine 46 via function Render Gifting. 25 Controller 48 function View Statement: controller 48 validates with the host site 32 (with function Validate Application) and acquires user data 36 from the host site 32. It then invokes the Get Usage History function. The 30 user data 32 and results of this function are sent to the rendering engine 46 via function Render Statement. Controller 48 function Alter Data: controller 48 receives new user details from the rendering engine 46 via the 35 function Render Change View. It uses this input to alter the system data 52 (via User database 50 function Add System Data, User database 50 function Change System Data, 4100189_1 (GHMaters) P77111.AU.5 - 25 User database 50 function Delete System Data) and access rules 54 (via User database 50 function Add Access Rule, User database 50 function Change Access Rule, User database 50 function Delete Access Rule). 5 Controller 48 function Apply Access Rule: controller 48 finds any access rules 54 (with User database 50 function Get Access Rule) that match the user who is requesting the data view and grants or denies access to the data based on 10 these rules (see MyMobile Access Rules for details). Rendering engine 46 function Render Main: rendering engine 46 uses the host site's rendering API 42 and data provided from the controller 48 to render a main application view 15 which contains a user's balance, advertisements and vendor logos as well as a panel of buttons which provide more options (Add Credit, Statement, My Friends). Rendering engine 46 function Render Register: rendering 20 engine 46 uses the host site's rendering API 42 to render a view for taking registration information (MSISDN and account number) from the user. It also enables users to create specific access rules for their friends or use the default access rules. 25 Rendering engine 46 function Render Own Profile: rendering engine 46 uses the host site's rendering API 42 to render a view displaying a user's own profile information: MSISDN, balance, as well as advertising and the vendors 30 logo. Rendering engine 46 function Render Friends Profile: rendering engine 46 uses Facebook's rendering API 42 to render a view displaying a friends profile information 35 which contains an indication the user's balance summary (tick for "has credit", cross for "does not have credit"), as well as the option to gift (give) credit to a friend 4100189_1 (GHMaters) P77111.AU.5 - 26 who currently does not have credit. Rendering engine 46 function Render All Friends: rendering engine 46 uses Facebook's rendering API 42 to render a 5 main view displaying details about a user's friends. This contains a list of friends with a balance summary (tick for "has credit", cross for "does not have credit") for each, as well as the option to gift (give) credit to a friend who currently does not have credit. It also 10 includes the same advertising, logos and navigation buttons found on the main page (see Render Main function above). Rendering engine 46 function Render Top Up: rendering 15 engine 46 uses Facebook's rendering API 42 to render a view displaying the user's current balance and options for topping up a mobile phone account via a pre-purchased voucher or by purchasing credit online. It also includes the same advertising, logos and navigation buttons found 20 on the main page (see Render Main function above). Rendering engine 46 function Render Gifting: rendering engine 46 uses Facebook's rendering API 42 to render a view displaying a friends balance summary (tick or cross) 25 and the ability to gift credit in to various parts of the user's balance (i.e. give them credit for SMS, for calls, or for data). It also includes the same advertising, logos and navigation buttons found on the main page (see Render Main function above). 30 Rendering engine 46 function Render Statement: rendering engine 46 uses Facebook's rendering API 42 to render a view displaying a list of a user's recent call history. 35 Rendering engine 46 function Render Change View: rendering engine 46 uses Facebook's rendering API 42 to render a view where user's can enter information about access rules 4100189_1 (GHMaters) P77111.AU.5 - 27 and system data and then invokes function Alter Data to set these values. Rendering engine 46 function Render Logo is an internal 5 function to render the logo using host site's rendering API 42. This segregation enables branding to be changed quickly and easily. Rendering engine 46 function Render Advertising is an 10 internal function to render advertisements using host site's rendering API 42. This segregation enables advertising to be changed quickly and easily. User database 50 function Add System Data: user database 15 50 stores a new record linking a user to data about their accounts on the back-end system 18. User database 50 function Change System Data: user database 50 alters a record linking a user to data about 20 their accounts on the back-end system 18. User database 50 function Get System Data: user database 50 retrieves a set of records linking a user to data about their accounts on the back-end system 18. 25 User database 50 function Delete System Data: user database 50 removes a record linking a user to data about their accounts on the back-end system 18. 30 User database 50 function Add Access Rule: user database 50 stores a new record defining the access allowed for different friends or groups of friends. User database 50 function Change Access Rule: user 35 database 50 alters a record defining the access allowed for different friends and groups of friends. 4100189_1 (GHMaters) P77111.AU.5 - 28 User database 50 function Get Access Rule: user database 50 retrieves a set of records defining the access allowed for different friends or groups of friends. 5 User database 50 function Delete Access Rule: user database 50 removes a record defining the access allowed for different friends or groups of friends. Transaction management layer 56 function Get Current 10 Balance: transaction management layer 56 calls the online billing system 62 to acquire a user's current balance. It returns this balance. Transaction management layer 56 function Get Current 15 Balance Summary: transaction management layer 56 calls the online billing system 62 to acquire a user's current balance. If the value is larger than 0 it returns true otherwise it returns false. 20 Transaction management layer 56 function Top Up - The transaction management layer 56 calls the voucher management system 66 to validate the voucher details entered by the user. If the voucher is valid the system calls the activation system to ensure the user's service 25 is active, it then calls the online billing system 62 to set expiry date for the credit, it then applies the top up to the online and offline billing systems (62, 64). Transaction management layer 56 function Gift Credit: 30 transaction management layer 56 calls the online and offline billing systems (62, 64) to adjust the balance of the user giving the gift by subtracting the gifted amount. The transaction management layer 56 calls the online and offline billing systems (62, 64) to adjust the balance of 35 the user receiving the gift by adding the gifted amount to the appropriate buckets. 4100189_1 (GHMaters) P77111.AU.5 - 29 Transaction management layer 56 function Get Usage History: transaction management layer 56 calls the online billing system 62 to acquire recent usage history. 5 MyMobile access rules are constrained by the information made available to an application by the host site 32. The MyMobile application used in several examples is hosted by Facebook and thus the access rules 54 for MyMobile are constrained by the Facebook API. 10 MyMobile access rules 54 are used to grant access; if no matching rule is found access is denied. Rules 54 are given a type: Group: Either Friends or Anyone; Friends are 15 people added to your Facebook profile. Individual: A specific Facebook user can be granted different rights; only applies to individuals who are added as friends. Network: People that belong to a specific 20 network; only applies to people that belong to the network who are also added as friends. Individual rules take precedence over network rules which take precedence over group rules. 25 Example Rules Data: Rules View Type Applies To MSISDN Balance Balance Summary Group Anyone No (cannot No (cannot No be changed) be changed) Group Friends No No Yes Individual JohnDoe Yes Yes Yes Individual JaneDoe Yes Yes Yes Network CompanyNetwork Yes No No 4100189_1 (GHMaters) P77111.AU.5 - 30 Figures 6 to 9 are screen mockups of the operation of the MyMobile Application as hosted by Facebook. Referring to figure 6, the upper register of the figure comprises the view 90 from the Facebook profile box showing a user's 5 balance. Clicking the "More" button 92 prompts the opening of the main view 94 (in the lower register of the figure), that is, the view 94 from the MyMobile Application's main page in Facebook. Navigation buttons in the left hand menu 96 enable users to perform various 10 actions. Referring to figure 7, the upper register of the figure comprises again the view 94 from the main page (see figure 6), from which the user can navigate to various screens. 15 For example, the My Friends view 98 shows a list of friends who have the MyMobile application added; for each friend a summary of their balance is provided (if the access rules allow it). If a friend has no credit they can be given credit (by using the "Give Credit" button 20 100). Thus, advantageously, a user can allow selected other users to view a status, such as a credit balance and/or modify a balance. The former has a practical advantage to users of prepaid services, for example, in that they can automatically advertise to their friends 25 that they have no credit and hence cannot use the prepaid service. If the "Statement" button 102 is clicked, detailed account information 104, showing call history and cost, is 30 displayed; this view also enables a user to pay any outstanding bill, initiated by click on the "Pay Now" button 106. Accordingly, it is possible to envisage a user giving another user (such as a parent) the ability to view and modify an account in a controlled way (e.g. deposits 35 only) without having to provide account details to the other user. In this way, the embodiment provides for controlled account access to other users. 4100189_1 (GHMaters) P77111.AU.5 - 31 Referring to figure 8, clicking the "Give Credit" button 100 when viewing a friend's balance summary prompts view 108, and enables the user to give credit to another user. 5 The gift can be spread across various "buckets" 110a, 110b, 110c corresponding - in this example - to Voice, SMS and Data use. In the illustrated example, the user is shown as being about to give $4 to Voice and $5 to SMS, but nothing to Data use. 10 Figure 9 illustrates the MyMobile Application 112 as hosted on Facebook 114. As will be seen, the MyMobile Application 112 appears to the user as integrated into Facebook 114. 15 Modifications within the scope of the invention may be readily effected by those skilled in the art. It is to be understood, therefore, that this invention is not limited to the particular embodiments described by way of example 20 hereinabove. In the claims that follow and in the preceding description of the invention, except where the context requires otherwise owing to express language or necessary 25 implication, the word "comprise" or variations such as "comprises" or "comprising" is used in an inclusive sense, that is, to specify the presence of the stated features but not to preclude the presence or addition of further features in various embodiments of the invention. 30 Further, any reference herein to prior art is not intended to imply that such prior art forms or formed a part of the common general knowledge in Australia or any other country. 35 41001891 (GHMaters) P77111.AU.5

Claims (5)

1. A data access method for accessing data on one or more external computing systems, comprising: 5 registering a registrable application with a host computing system, said host computing system being or providing a social networking website; retrieving user data from the host computing system with a controller of the registrable application; 10 passing the user data from the controller to a user database; initiating a data transfer between the controller and the one or more external computing systems with the controller; 15 controlling a rendering engine with the controller, the rendering engine being configured to render a display of a user computer of a user of the host computing system in a manner compatible with the host computing system such that the registrable application 20 appears to the user as embedded in or integrated into an interface of the host computing system; and mediating the data transfer between the controller and the one or more external computing systems with a transaction management layer; 25 wherein each of the one or more external computing systems is a back-end system of at least one of a telecommunications provider, a financial services provider and a utility. 30
2. A method as claimed in claim 1, including linking the user data of the host computing system pertaining to a plurality of users of the host computing system, and the user can view user data of another user of the host computing system or initiate a transaction relating to the 35 other user of the host computing system.
3. A method as claimed in claim 1, wherein the data 4100189_1 (GHMaters) P77111.AU.5 - 33 transfer relates to or constitutes at least one of: i) a transfer of credit from an account of the user to an account of another user of the host computing system, ii) a bill or invoice payment, 5 iii) payment for a prepaid or postpaid service, iv) a gift, and v) a purchase of credit or of a voucher.
4. A data access system for accessing data on one or more 10 external computing systems, comprising: a registrable application, adapted to be registrable as a registered application with a host computing system that is or provides a social networking website, the registrable application comprising: 15 a rendering engine for rendering a display of a user computer of a user of the host computing system in a manner compatible with the host computing system such that the registrable application appears to a user as embedded in or integrated into an interface of the host 20 computing system; and a controller adapted to retrieve user data of the user of the host computing system from the host computing system, to pass the user data to a user database and to control the rendering engine; and 25 a transaction management layer for mediating data transfer between the controller and the one or more external computing systems; wherein the controller initiates the data transfer between the controller and the one or more 30 external computing systems based on the user data, and wherein each of the one or more external computing systems is a back-end system of at least one of a telecommunications provider, a financial services provider and a utility. 35
5. A system as claimed in claim 4, wherein the data transfer relates to or constitutes at least one of: 4100189_1 (GHMaters) P77111.AU.5 - 34 i) a transfer of credit from an account of the user to an account of another user of the host computing system, ii) a bill or invoice payment, iii) payment for a prepaid or postpaid service, 5 iv) a gift, and v) a purchase of credit or of a voucher. 4100189_1 (GHMaters) P77111.AU.5
AU2013100202A 2008-03-07 2013-02-25 Data access system and method Expired AU2013100202B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2013100202A AU2013100202B4 (en) 2008-03-07 2013-02-25 Data access system and method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2008901118 2008-03-07
AU2012261789A AU2012261789B2 (en) 2008-03-07 2012-12-17 Data access system and method
AU2013100202A AU2013100202B4 (en) 2008-03-07 2013-02-25 Data access system and method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
AU2012261789A Division AU2012261789B2 (en) 2008-03-07 2012-12-17 Data access system and method

Publications (2)

Publication Number Publication Date
AU2013100202A4 true AU2013100202A4 (en) 2013-03-21
AU2013100202B4 AU2013100202B4 (en) 2013-05-02

Family

ID=47891219

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2013100202A Expired AU2013100202B4 (en) 2008-03-07 2013-02-25 Data access system and method

Country Status (1)

Country Link
AU (1) AU2013100202B4 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080005125A1 (en) * 2006-07-03 2008-01-03 Dewey Gaedeke System for displaying user generated content in a web browser

Also Published As

Publication number Publication date
AU2013100202B4 (en) 2013-05-02

Similar Documents

Publication Publication Date Title
US9336500B2 (en) System and method for authorizing and connecting application developers and users
US20120296823A1 (en) Content owner verification and digital rights management for automated distribution and billing platforms
KR101049646B1 (en) Automatic input method of personal information using network address book and its system
US20090248533A1 (en) Systems and methods for conducting transactions
CN105956842A (en) Electronic membership card management method and device
JP4897971B2 (en) User ID processing method and processing system
DE60302416T2 (en) A method of managing prepaid accounts and executing transactions in an electronic commerce system
KR100788507B1 (en) The payment method using mobile phone without authentification in website
AU2017200711B2 (en) Data access system and method
AU2013100202A4 (en) Data access system and method
KR20120042616A (en) The method to relay telecommunication network service and application program on the relay service site
US20030185362A1 (en) Communication system and communication service method through internet call intermediation
AU2012100812B9 (en) Data access system
AU2012100813B9 (en) Data access method
AU2012100813B4 (en) Data access method
AU2009200895B9 (en) Data access system and method
US10832258B2 (en) Bounty tracking for referral
KR101471926B1 (en) Processing method for financial products admission and financial server for the same
KR101694458B1 (en) Method for providing local culture sharing service
KR20050035979A (en) User authentication system using a one-time connection number
US20180096320A1 (en) Account top-up feature to interface with a vendor application programming interface
US20050015346A1 (en) Method and arranagement for transaction processing in connection with mobile telecommunication
KR101355682B1 (en) Smart public telephone system and method using cloud computing
JP2020119220A (en) Information processing method, program, terminal, server, and information processing device
US12002026B2 (en) Method for context-based selection and activation of applications on a mobile device

Legal Events

Date Code Title Description
FGI Letters patent sealed or granted (innovation patent)
FF Certified innovation patent
GD Licence registered

Name of requester: TELSTRA CORPORATION LIMITED

MK22 Patent ceased section 143a(d), or expired - non payment of renewal fee or expiry