AU2016101011A4 - Presenting webpages - Google Patents

Presenting webpages Download PDF

Info

Publication number
AU2016101011A4
AU2016101011A4 AU2016101011A AU2016101011A AU2016101011A4 AU 2016101011 A4 AU2016101011 A4 AU 2016101011A4 AU 2016101011 A AU2016101011 A AU 2016101011A AU 2016101011 A AU2016101011 A AU 2016101011A AU 2016101011 A4 AU2016101011 A4 AU 2016101011A4
Authority
AU
Australia
Prior art keywords
webpage
data
data container
webpages
container
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
AU2016101011A
Inventor
Pete Field
Silvia Pfeiffer
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.)
Coviu Global Pty Ltd
Original Assignee
Coviu Global 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 AU2015902848A external-priority patent/AU2015902848A0/en
Application filed by Coviu Global Pty Ltd filed Critical Coviu Global Pty Ltd
Priority to AU2016101011A priority Critical patent/AU2016101011A4/en
Application granted granted Critical
Publication of AU2016101011A4 publication Critical patent/AU2016101011A4/en
Assigned to Coviu Global Pty. Ltd. reassignment Coviu Global Pty. Ltd. Request for Assignment Assignors: NATIONAL ICT AUSTRALIA LIMITED
Anticipated expiration legal-status Critical
Expired legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

Abstract There is provided a computer-implemented method for presenting webpages that are loaded on a device by a computing process. The method comprises generating a first data container that persists independently of the computing process; generating a second data container in a first webpage of the webpages; receiving, in the first data container, first data received at the device; sending the first data from the first data container to the second data container in the first webpage; and causing the first data and the first webpage to be presented on the device. Service Representative Signalling Server 103 Call Centre Terminal Communication Network Web Server 101 Webpage2.html JS Snippet 1 Webpagel.html 154 First Data Container JS Snippet 2 Webpage Presenting System User

Description

Presenting webpages [1] Technical Field [2] The present disclosure generally relates to presenting webpages. The present disclosure includes computer-implemented methods, software, and computer systems for presenting webpages.
[3] Background [4] With the development of the Internet, a user tends to obtain information by visiting a website via the Internet. The website is normally hosted by a server and includes multiple webpages containing the information to be presented to the user. By establishing a communication connection with the server according to an appropriate communication protocol, for example, Internet Protocol (IP) stack, the webpages are loaded to a client computer that the user is using, and are presented to the user via the client computer, such as on a display. As a result, the user obtains the information by browsing the webpages using the client computer.
[5] Webpage browsing experience of the user depends on multiple factors including network bandwidth, web browser performance, contents included in the webpages, etc.
[6] Throughout this specification the word "comprise", or variations such as "comprises" or "comprising", will be understood to imply the inclusion of a stated element, integer or step, or group of elements, integers or steps, but not the exclusion of any other element, integer or step, or group of elements, integers or steps.
[7] Any discussion of documents, acts, materials, devices, articles or the like which has been included in the present disclosure is not to be taken as an admission that any or all of these matters form part of the prior art base or were common general knowledge in the field relevant to the present disclosure as it existed before the priority date of each claim of this application.
[8] Summary [9] There is provided a computer-implemented method for presenting webpages that are loaded on a device by a computing process, the method comprising: generating a first data container that persists independently of the computing process; generating a second data container in a first webpage of the webpages; receiving, in the first data container, first data received at the device; sending the first data from the first data container to the second data container in the first webpage; and causing the first data and the first webpage to be presented on the device.
[10] It is an advantage of the present disclosure that the first data container persists independently of the computing process that loads the webpages, and the first data is sent from the first data container to the second data container in the first webpage for presentation. This way even if a refresh operation of the first webpage causes the reloading of the first webpage onto the device according to existing Internet Protocol (IP) stack, the refresh operation does not cause a regeneration of the first data container to receive the first data. Therefore, the present disclosure may avoid data interruption and reduce connection delay when refreshing the first webpage on the device, and thus improve webpage browsing experience at the device.
[11] The method may further comprise: generating a third data container in a second webpage of the webpages; sending the first data from the first data container to the third data container in the second webpage, and causing the first data and the second webpage to be presented on the device.
[12] It is a further advantage of the present disclosure that a redirection operation of the first webpage to the second webpage causes the loading of the second webpage onto the device according to the existing IP stack, but does not cause a regeneration of the first data container in which the first data is received. The first data is sent from the first data container to the third data container in the second webpage for presentation. Therefore, the present disclosure may also avoid data interruption and reduce connection delay when redirecting the first webpage on the device, and thus improve webpage browsing experience at the device.
[13] Generating the first data container may comprise: invoking one or more of the following: a first web browser, a web browser extension, a web browser tab or window, or an application other than a web browser, on the device as the first data container; and invisibly maintaining the first data container .
[14] Sending the first data from the first data container to the second data container may comprise sending the first data from the first data container to a storage, and receiving, in the second data container, the first data from the storage.
[15] The first webpage may be defined by Hyper Text Markup Language (HTML) and Javascript codes.
[16] The second data container in the first webpage may comprise a first HTML element in the HTML codes on which the first data is to be presented.
[17] Sending the first data from the first data container to the second data container may comprise: sending the first data from the first data container to the first HTML element by using message passing.
[18] The message passing may comprise a PostMessage function, a data channel or a web socket transfer.
[19] Causing the first data and the first webpage to be presented may comprise causing a first webpage presenting application on the device to present the first webpage according to the HTML codes, and to present the first data on the first HTML element.
[20] The first HTML element may comprise a first canvas element, a first image element, a first iframe element, or a first div element. The first HTML element may be other suitable HTML elements that are able to render data.
[21] The second webpage may be defined by Hyper Text Markup Language (HTML) and Javascript codes.
[22] The third data container in the second webpage may comprise a second HTML element in the HTML code on which the first data is to be presented.
[23] Causing the first data and the second webpage to be presented may comprise causing a second webpage presenting application on the device to present the second webpage according to the HTML codes, and to present the first data on the second HTML element.
[24] The second HTML element may comprise a second canvas element, a second image element, a second iframe element, or a second div element. The second HTML element may be other suitable HTML elements that are able to render data.
[25] The first data may comprise data representing one or more of video, voice, text, image, animation, icon, avatar, medical data, and electronic form.
[26] There is provided a computer software program, including machine executable instructions, when executed by a processor, causes the processor to perform any one of the methods as describe above.
[27] There is provided a computer system for presenting webpages that are loaded on the computer system by a computing process, the computer system comprising: a processor comprising: a data container generation unit to generate a first data container that persists independently of the computing process; and a webpage presenting unit to receive, in the first data container, first data received at the computer system; send the first data from the first data container to a second data container in a first webpage of the webpages; and cause the first data and the first webpage to be presented on the computer system.
[28] The webpage presenting unit may further send the first data from the first data container to a third data container in a second webpage of the webpages, and cause the first data and the second webpage to be presented on the computer system.
[29] There is provided a computer-implemented method for presenting webpages that are loaded on a first device by a computing process, the method comprising: generating a first data container that persists independently of the computing process; establishing a communication connection between the first device and a second device; generating a second data container in a first webpage of the webpages; receiving, in the first data container, first data communicated between the first device and the second device over the communication connection; sending the first data from the first data container to the second data container; and causing the first data and the first webpage to be presented on the first device.
[30] The method may further comprise generating a third data container in a second webpage of the webpages, sending the first data from the first data container to the third data container, and causing the first data and the second webpage to be presented on the first device.
[31] Sending the first data from the first data container to the second data container may comprise sending the first data from the first data container to a storage and receiving, in the second data container, the first data from the storage.
[32] Brief Description of Drawings [33] Features of the present disclosure are illustrated by way of non-limiting examples, and like numerals indicate like elements, in which:
Fig. 1 illustrates an example communication system in accordance with the present disclosure;
Figs. 2(a) and (b) illustrate an example webpage presentation system in accordance with the present disclosure;
Fig. 2(c) illustrates an example call centre terminal used in the present disclosure;
Figs. 3(a) to (d) illustrates example processes for presenting the webpages in accordance with the present disclosure; and
Fig. 4 illustrates an example schematic diagram of a computer system in accordance with the present disclosure.
[34] Best modes of the present disclosure [35] System description [36] Fig. 1 illustrates an example communication system 100 in accordance with the present disclosure.
[37] Although the communication system 100 is described as a customer service system in the present disclosure, and examples in the present disclosure are described with reference to a scenario where a user 113 communicates with a service representative 111 through the customer service system 100, the present disclosure may also be used in other communication systems and scenarios without departing from the scope of the present disclosure.
[38] The communication system 100 as shown in Fig. 1 includes a communication network 101, a signalling server 103, a webpage presenting system 105, a web server 107, and a call centre terminal 109. The communication network 101 may be any suitable networks, such as a wireline network, a cellular network, a wireless local area network (WLAN), an optical network, etc. The communication network 101 may also be a combination of the suitable networks.
[39] The communication network 101 communicates data between network elements in the customer service system 100. The data communicated over the communication network 101 includes video, voice, text, image, animation, icon, avatar, medical data, electronic form data, or other computer data. Further, the data may also include signalling data that controls operation of the network elements in the communication system 100.
[40] The web server 107 stores webpages of a website to be visited by the user 113. The web server 107 may be identified by an Internet Protocol (IP) address or a domain name. For ease of description, the web server 107 is identified in the present disclosure by a domain name, ‘‘btip://www.you.rsite.corn’’. As shown in Fig. 1, the web server 107 stores webpage 1 and webpage 2, which are defined by HTML files, webpagel.html and webpage2.html, respectively.
[41] An example working process of the communication system 100 is described below with reference to Figs. 2(a) to (c).
[42] Figs. 2(a) and (b) illustrates an example webpage presentation system 105 in accordance with the present disclosure.
[43] As shown in Fig. 2(a), the user 113 requests to visit the website “http://www.yoursite.com”, which is hosted by the web server 107, by typing the domain name of the website into a web address box 141 of an Internet browser 135 through a keyboard 132, a touch screen on a display 133, or using other suitable means. In response to receiving the inputted request, a device 105, particularly, the webpage presenting system 105, establishes an TCP/IP connection 154 as shown in Fig. 1 with the web server 107 according to the existing Internet Protocol (IP) stack. The device 105, i.e., the webpage presenting system 105, loads the default webpage indicated by the domain name, i.e., webpagel.html from the web server 107 through a computing process. Webpage 1 is loaded into a webpage buffer 117 of the webpage presenting system 105, and then presented on the display 133 by the Internet browser 135. This way, the user 113 is able to view the webpage 1 of the website “http://www.voiirsite.com”. It should be noted that the computing process of loading the webpages may comply with the existing IP stack and may be integrated with the Internet browser 135. For example, the computing process may be invoked by the webpage presenting system 105 or the Internet browser 135 running on the webpage presenting system 105 during the establishment of the TCP/IP connection 154 according to the existing IP stack.
[44] As shown in Fig. 2(a), the Internet browser 135 includes a “refresh” button 143. If the user 113 clicks on or touches the “refresh” button 143, the TCP/IP connection 154 between the webpage presenting system 105 and web server 107 is disconnected and is re-established. The re-establishment of the TCP/IP connection 154 results in the webpage 1 being reloaded from the web server 107 into the webpage buffer 117 of the webpage presenting system 105 by the computing process as described above. As a result, the user 113 can view the updated webpage 1 if updated webpage 1 is presented to the user 113 by the Internet browser 135. It should be noted that, according to the existing IP stack, the loading the of webpages by the computing process also results in destruct and regeneration of the any HTML elements defined in the webpages, which may in turn result in re-establishment of any communication connection associated with the regenerated HTML elements.
[45] The webpage 1 as shown in Fig. 2(a) includes a link 139 to the webpage 2, the user 113 can request to visit the webpage 2 by clicking on or touching the link 139.
[46] As shown in Fig. 2(b), upon receipt of the request to visit the webpage 2, the webpage presenting system 105 loads webpage2.html from the web server 107 into the webpage buffer 117. The webpage 2 is presented to the user 113 on the display 133 by the Internet browser 135, as shown in Fig. 2(b). As a result, the user 113 is redirect to the webpage 2.
[47] The Internet browser 135 in the present disclosure supports multi-tab browsing, the webpage 1 and the webpage 2 are presented in different browser tabs of the Internet browser 135 for illustration purposes only. The webpage 2 may replace the webpage 1 in the same browser tab for webpage redirection without departing from the scope of the present disclosure. In another example, the Internet browser 135 is a multi-window browser, the webpages 1 and 2 can be presented in the same browser window or different windows without departing from the scope of the present disclosure.
[48] While browsing a webpage for example webpage 1, the user 113 may need help with the use of the website or services provided by the website. For the user 113 to be better served, a communication connection 155 as shown in Fig. 1 is established by the signalling server 103 between the webpage presenting system 105 and a call centre terminal 109. An example call centre terminal 109 used in the present disclosure is shown in Fig. 2(c). This way, the webpage presenting system 105 receives, over the communication connection 155, data from the call centre terminal 109 representing information the service representative 111 at the call centre terminal 109 intends to convey to the user 113. The data represents one or more of video, voice, text, image, animation, icon, avatar, medical data, electronic form data, or other computer data. Therefore, the user 113 obtains the information once the data is presented to the user 113 by the webpage presenting system 105. For example, the user 113 may be able to see and hear the service representative 111 if the data represents the image and voice of the service representative 111.
[49] Figs. 3(a) to (d) illustrates an example process for presenting the webpages according to the present disclosure. The example process involves methods 300, 400, 500 and 501 that are performed at the web server 107, the signalling server 103, and the webpage presenting system 105, respectively. It should be noted that the order of the steps of methods 300, 400, 500 and 501 may not be limited to the order shown in Figs. 3(a) to (d).
[50] As shown in Fig. 3(a), the method 300 accesses 301, 303 the webpages 1 and 2 stored on the web server 107. In this example, the webpage 1 and 2 is defined by Hyper Text Markup Language (HTML) and Javascript codes. In other examples, the webpages 1 and 2 may be defined by other programing languages without departing from the scope of the present disclosure.
[51] The method 300 adds 305 a first code such as a first JavaScript snippet in the webpage 1, which is shown as the JS snippet 1 in Fig. 1. Further, the method 300 adds 307 a second code such as a second JavaScript snippet in the webpage 2, which is shown as the JS snippet 2 in Fig. 1. The first and the second codes include instructions for the webpage presenting system 105 to communicate with the call centre terminal 109 and present the data from the call centre terminal 109, as described with reference to methods 500, 501 shown in Figs. 3(c) and 3(d).
[52] In response to the request to visit the webpage 1, the webpage 1 with the first code is loaded into the webpage buffer 117 of the web presenting system 105 and presented on the display 133 by the Internet browser 135. As a result, the user 113 can view the webpage 1 on the display 133. When the user 113 needs to communicate with the service representative 111, the user 113 clicks on or otherwise selects a “help” button 153 on the webpage 1. In response, a connection request to establish a communication connection 155 with the call centre terminal 109 is sent from the webpage presenting system 105 to the signalling server 103.
[53] Fig. 3(b) illustrates the method 400 for establishing the communication connection 155 between the webpage presenting system 105 and the call centre terminal 109 by the signalling server 103.
[54] Upon receipt 410 of the connection request at the signalling server 103, the signalling server 103 sends 420 a call information request to the webpage presenting system 105 and the call centre terminal 109. Once the webpage presenting system 105 receives the call information request, the webpage presenting system 105 sends call information to the signalling server 103. The call information includes an IP address, a port number of the webpage presenting system 105 for the communication connection 155. The call information may also include additional information such as a call rate, Quality of Service (QoS) requirements, coding and decoding schemes, etc., without departing from the scope of the present disclosure. In another example, the webpage presenting system 105 includes the call information in the connection request. Therefore, the signalling server 103 receives the call information without sending the call information request to the webpage presenting system 105.
[55] Upon receipt of the call information request at the call centre terminal 109, the call centre terminal 109 sends call information to the signalling server 103. The call information include an IP address, a port number of the call centre terminal 109 for the communication connection 155. The call information may also include additional information such as a call rate, Quality of Service (QoS) requirements, coding and decoding schemes, etc., without departing from the scope of the present disclosure. In another example, the call information of the call centre terminal 109 may be stored in the web server 107. Therefore, the signalling server 103 obtains the call information of the call centre terminal 109 from the web server 107 without sending the call information request to the call centre terminal 109.
[56] Upon receipt 430 of the call information from the webpage presenting system 105 and the call centre terminal 109, the signalling server 103 exchanges 440 the call information between the webpage presenting system 105 and the call centre terminal 109. Particularly, the signalling server 103 sends the call information of the webpage presenting system 105 to the call centre terminal 109, and the call information of the call centre terminal 109 to the webpage presenting system 105. This way, the webpage presenting system 105 and the call centre terminal 109 know the call information of each other, and negotiate the communication connection 155 based on the call information. The communication connection 155 may take different forms without departing from the scope of the present disclosure. For example, the communication connection 155 can be a peer-to-peer connection that connects the webpage presenting system 105 and the call centre terminal 109 without a server therebetween. The communication connection 155 can also be a server-client connection where the webpage presenting system 105 and the call centre terminal 109 are connected via a server.
[57] Although the communication connection 155 is established via the signalling server 103 as described above, the communication connection 155 may be established in other ways, for example, by the direct call information exchange between the webpage presenting system 105 and the call centre terminal 109 without the signalling server 103 involved.
[58] The webpage presenting system 105 requests access to one or more user interfaces 121, 123, 125, 126 to use human-machine interaction devices 127, 129, 131, 132 that are connected to the webpage presenting system 105 via the respective user interfaces 121, 123, 125, 126. For example, the webpage presenting system 105 requests access to the microphone interface 121 to use the microphone 127 connected via the microphone interface 121.
[59] On the other hand, the call centre terminal 109 requests access to one or more user interfaces 145, 147, 149, 150 to use the respective human-machine interaction devices 157, 159, 161, 162 that are connected to the call centre terminal 109 via the user interfaces 145, 147, 149, 150, as shown in Fig. 2(c). For example, the call centre terminal 109 requests access to the camera interface 147 to use the camera 159 connected via the camera interface 147.
[60] It should be noted that user interfaces in the present disclosure are not limited to the user interfaces described above or shown in Figs 1, and 2. For example, the user interfaces may also include an data interface (not shown) with which a data storage device or medical device or other device is connected without departing from the scope of the present disclosure.
[61] Using the communication connection 155 and the human-machine interaction devices 157, 159, 161, 162, the service representative 111 provides customer service to the user 113 by conveying information to the user 113. As shown in Fig. 2(c), the information is converted into data representing the information by the human-machine interaction devices 157, 159, 161, 162. For example, the microphone 157 captures the voice of the service representative 111 and converts the voice into voice data. The camera 159 captures the images of the service representative 111 and converts the images to image or video data. The data are communicated from the call centre terminal 109 to the webpage presenting system 105 over the communication connection 155. Other than voice and image/video information, the data may also represent text, animation, icon, avatar, medical data, electronic form data, or other computer data without departing from the scope of the present disclosure.
[62] The data received from the call centre terminal 109 and the webpages loaded from web server 107 are presented to the user 113 by the Internet browser 135. This way, the user 113 is able to be served by the customer representative 111 while browsing the webpages.
[63] An example process with reference to webpage refresh [64] Fig. 3(c) illustrates the method 500 for presenting the webpages loaded from the web server 107 and the data received from the call centre terminal 109 by the webpage presenting system 105.
[65] Once the communication connection 155 between the webpage presenting system 105 and the call centre terminal 109 is established, the instructions included in the first code (i.e., the JS Snippet 1 in Fig. 1) added to the webpage 1 is executed by the webpage presenting system 105 to perform the method 500.
[66] The method 500 generates 510 a data container 115 in the webpage presenting system 105, as shown in Fig. 1. The data container 115 can also be generated upon loading of the webpage 1 without departing from the scope of the present disclosure.
The data container 115 persists independently of the computing processing of loading the webpages from the web server 107. That is, the loading of the webpages by the computing process does not result in destruct and regeneration of the data container 115. Further, any communication connection associated with the data container 115 is not re-established as a result of the computing process of loading more webpages. On the other hand, the existence status of the data container 115 may not affect the communication connection 154 between the web server 107 and webpage presenting system 105. The data container 115 is shown as a first data container 115 in Figs. 1, 2(a) and 2(b) to distinguish from other data containers.
[67] The method 500 generates 515 a second data container 151 in the webpage 1 as shown in Fig. 2(a). In other words, the method 500 modifies the webpage 1 by creating a new element, i.e., the second data container 151, in the webpage 1. To be compatible with the webpage 1 defined by the HTML and Javascript codes, the second data container 151 in the webpage 1 is an HTML element. The HTML element can be a canvas element, an image element, an i frame element, or a div element. The HTML element may be other suitable HTML elements that are able to render data without departing from the scope of the present disclosure. As described below, the second data container 151 is used to receive the data sent from the first data container 115 in the webpage presenting system 105. When presented on the display 133, the data is displayed on the second data container 151.
[68] In the present disclosure, the first data container 115 is a web browser running on the webpage presenting system 105, such as Internet Explorer (IE), or Google Chrome. In another example, the first data container 115 can be a web browser extension, for example, an add-on for IE or an extension for Google Chrome. In a further example, since the Internet browser 135 presenting the webpages supports multi-tab browsing, the first data container 115 can be a separate tab of the Internet browser 135 or a separate window. The first data container 115 can also be an independent application other than a web browser. In order to reduce the distraction caused by the first data container 115, the first data container 115 is invisibly maintained where possible. For example, if the first data container 115 is a browser extension, the first data container 115 may operate in the associated Internet browser without being presented to the user. In this case, the first data container 115 and the data contained in the first data container 115 are not presented to the user 113 while presenting the webpages of the website “http://w ww.yourslte.com” on the webpage presenting device 105, particularly, the display 133.
[69] The data sent from the call centre terminal 109 is received 520 in the first data container 115 at the webpage presenting system 105. The method 500 sends 530 the data from the first data container 115 to the second data container 151 in the webpage 1 that has been generated . In an HTML implementation, for example, the first data container 115 is invisibly maintained by being in an invisible tab of the Internet browser 135, and the second data container 151 in the webpage 1 is an iframe. In this case, the data may be sent from the invisible tab of the Internet browser 135 to the iframe by using message passing. The message passing includes the “PostMessage” function, a data channel or a web socket transfer. In another example, especially when the amount of the data is large, the data is sent to a separate storage device (not shown in Figs. 1 and 2), and the method 500 then access the data from the separate storage device and receives the data in the second data container 151 in the webpage 1.
[70] As a result of sending the data from the first data container 115 to the second data container 151 in the webpage 1, the second data container 151 is populated by the data received from the call centre terminal 109 representing the information the service representative 111 intends to convey to the user 113.
[71] The method 500 causes 540 the webpage 1 with the second data container 151 populated by the data from the first data container 115 to be presented by the Internet browser 135. If the data contains image or video data, the image or video data is visually presented to the user 113 on the display 133, particularly, the second data container 151 in the webpage 1. On the other hand, if the data contains voice data, the Internet browser 135 uses the speaker 131 to present the voice data to the user 113 audibly via the audio interface 126. It should be noted that the voice data may not be necessarily sent from the first data container 115 to the second data container 151 since the voice data can be presented to the user 113 from the first data container 115 directly via the audio interface 126. If the data contains data of other types, for example, text, animation, icon, avatar, medical data, electronic form data, or other computer data, the Internet browser 135 presents the data of these types to the user 113 in an appropriate way.
[72] When the user 113 refreshes the webpage 1 by clicking on or touching the “refresh” button 143 to view the updated webpage 1, the TCP/IP connection 154 between the webpage presenting system 105 and the web server 107 is disconnected and re-established. As a result, the webpage 1 with the first code (i.e., the JS snippet 1) is loaded from the web server 107 again to the webpage buffer 117 of the webpage presenting system 105. Further, according to the existing IP stack, the second data container 151 is destructed upon loading of the webpage 1 since the second data container 151 is part of the webpage 1 as a result of step 515. However, unlike the second data container 151, the first data container 115 is not part of the webpage 1 as a result of step 510. Therefore, when the webpage 1 is reloaded to the webpage buffer 117 of the webpage presenting system 105, the first data container 115 is not destructed but persists independently of the computing process of loading the webpages. The instructions included in the first code is executed by the webpage presenting system 105 to perform the method 500. The method 500 does not re-generate the first data container 115 since the first data container 115 persists. Other the other hand, since the second data container 151 is destructed upon loading of the webpage 1 when the user 113 refreshes the webpage 1, the method 500 generates 515 the second data container 151 in the webpage 1. The method 500 continues to receive 520, in the first data container 115, the data from the call centre terminal 109 and sends 530 the first data from the first data container 115 to the second data container 151 re-generated in the webpage 1. The method 500 then causes 540 the webpage 1 with the second data container 151 populated by the data from the first data container 115 to be presented by the Internet browser 135.
[73] As described above, since the first data container 115 persists independently of the computing process of loading the webpages, the first data container 115 is not destructed and regenerated to receive the data from the call centre terminal 109. Therefore, the communication connection 155 between the webpage presenting system 105 and the call centre terminal 109 is not re-established as a result of the loading of the webpage 1 to the webpage presenting system 105. The data received from the call centre terminal 109 is presented to the user 113 with the reloaded webpage 1 without the need to re-establish the communication connection 155 between the webpage presenting system 105 and the call centre terminal 109. Therefore, the present disclosure avoids data interruption caused by refreshing webpages and thus improve webpage browsing experience.
[74] An example with reference to webpage redirection [75] Fig. 3(d) illustrates a method 501 for presenting the webpages loaded from the web server 107 and the data received from the call centre terminal 109 by the webpage presenting system 105.
[76] The webpage 1 as shown in Fig. 2(a) includes the link 139 to the webpage 2, the user 113 requests to visit webpage 2 by clicking on or otherwise selecting the link 139.
[77] In response to the inputted request, the webpage presenting system 105 loads the webpage 2 with the second code (i.e., the JS snippet 2 in Fig. 1) from the web server 107 into the webpage buffer 117.
[78] Upon the loading of the webpage 2, the instructions included in the second code is executed by the webpage presenting system 105 to perform the method 501.
[79] The method 501 generates 550 a data container in the webpage 2, which is shown as a third data container 153 in Fig. 2(b) to distinguish from other data containers. In other words, the method 501 modifies the webpage 2 by creating a new element, i.e., the third data container 153, in the webpage 2. To be compatible with the webpage 2 defined by the HTML and Javascript codes, the third data container 153 in the webpage 2 is an HTML element. The HTML element can be a canvas element, an image element, an iframe element, a div element. The HTML element can be other suitable HTML elements that are able to render data without departing from the scope of the present disclosure. As described below, the third data container 153 is used to receive the data sent from the first data container 115 in the webpage presenting system 105. When presented on the display 133, the data is displayed on the third data container 153, as shown in Fig. 2(b).
[80] Upon receipt of the data in the first data container 115 from the call centre terminal 109, the method 501 sends 560 the data from the first data container 115 to the third data container 153 in the webpage 2 that has been generated. As a result, the third data container 153 in the webpage 2 is populated by the data received from the call centre terminal 109 representing the information the service representative 111 intends to convey to the user 113.
[81] The method 501 causes 570 the webpage 2 with the third data container 153 populated by the data to be presented by the Internet browser 135, as shown in Fig. 2(b).
[82] The method 501 is not only applicable to webpage redirection, but also applicable to webpage refresh. For example, when the user 113 refreshes the webpage 2 by clicking on or touching the “refresh” button 143 to view the updated webpage 2, the TCP/IP connection 154 between the webpage presenting system 105 and the web server 107 is disconnected and re-established. As a result, the webpage 2 with the second code (i.e., the JS snippet 2) is loaded from the web server 107 again to the webpage buffer 117 of the webpage presenting system 105. Further, according to the existing IP stack, the third data container 153 is destructed upon loading of the webpage 2 since the third data container 153 is part of the webpage 2 as a result of step 550. However, unlike the third data container 153, the first data container 115 is not part of the webpage 2 as a result of step 510. Therefore, when the webpage 2 is reloaded to the webpage buffer 117 of the webpage presenting system 105, the first data container 115 is not destructed but persists independently of the computing process of loading the webpages. The instructions included in the second code is executed by the webpage presenting system 105 to perform the method 501.
[83] The method 501 generates 550 the third data container 153 in the webpage 2 since the third data container 153 is destructed upon loading of the webpage 2 when the user 113 refreshes the webpage 2. The method 501 continues to send 560 the data from the first data container 115 to the third data container 153 in the webpage 2 that has been generated. The method 500 then causes 570 the webpage 2 with the third data container 153 populated by the data to be presented by the Internet browser 135.
[84] As described above, the first data container 115 persists independently of the computing process of loading the webpages. Therefore, the first data container 115 is not destructed and regenerated to receive the data from the call centre terminal 109 when the user 113 is directed to the webpage 2 from the webpage 1. Further, the communication connection 155 between the webpage presenting system 105 and the call centre terminal 109 is not re-established as a result of the loading of the webpage 2 to the webpage presenting system 105. The data received from the call centre terminal 109 is presented to the user 113 with the webpage 2 without the need to re-establish the communication connection 155 between the webpage presenting system 105 and the call centre terminal 109. Therefore, the present disclosure avoids data interruption caused by redirecting webpages and thus improves webpage browsing experience.
[85] In the examples described above with reference to methods 500, 501, the data is sent from the first data container 115 to the second or third data container 151, 153, which is local data transmission on webpage presenting system 105. The resulting delay is much less than that caused by the disconnection and re-establishment of the communication connection 155. Therefore, the overall connection delay is dramatically reduced.
[86] The user 113 can be redirected to a webpage that is not part of the website “http;//www.yoursite.com”. In this case, the webpage does not include the data container generated by the method 300 as described above with reference to the web server 107. Therefore, video/image data received from the call centre terminal 109 is not able to be presented to the user 113. However, since the first data container 115 and the communication connection 155 are intact, voice data is still able to be presented to the user 113 by playing the voice data directly from the first data container 115 via the speaker 131. Asa result, the service representative 111 is able to continue to provide customer service to the user 113 by voice.
[87] It should be noted that in the description above, the webpages 1, 2 are presented using the Internet browser 135. In particular, the webpages 1, 2 are presented in tab 1 and tab 2 of the Internet browser 135, respectively. However, the webpages 1, 2 can be presented using any suitable webpage presenting application that is able to present webpages without departing from the scope of the present disclosure. The suitable webpage presenting application includes, for example, an Internet browser, a tab of an Internet browser, an extension associated with an Internet browser, a window of an Internet browser, and a non-Internet browser application with the ability to present webpages.
[88] Further, although there is only one webpage presenting system 105 shown in Fig. 1, there can be more webpage presenting systems 105 in the system 100. The webpage presenting systems 105 do not only communication with the call centre terminal 109, they are also able to communicate with each other.
[89] For example, one user using a first webpage presenting system 105 and another user using a second webpage presenting system 105 visit the web server 107 at the same time, they may browse the same or different webpages on the web server 107. A communication connection 155 is established between the first webpage presenting system 105 and the second webpage presenting system 105. Data communicated over the communication connection 155 and webpages loaded in the webpage buffer 117 of respective webpage presenting systems 105 are presented in a similar way as described above. In this example, the data communicated over the communication connection 155 can include data representing images, video, audio and an electronic form. One user provides images of his or her identity documents to the other user to verify his or her identity. Then the user may view, fill in and sign the electronic form with visual and/or vocal assistance from the other user. This way, both users are not interrupted by the webpage refresh or redirection operation while they are browsing the webpages that may contain information related to the electronic form.
[90] Hardware description [91] Fig. 4 illustrates an example schematic diagram of a computer system 600 used to implement the methods 500, 501 described above with reference to the webpage presenting system 105.
[92] The computer system 600 includes a processor 610, a memory 620, a bus 630, a communication interface 120, and user interfaces 119, 121, 123, 125, 126. The processor 610, the memory 620, the communication interface 120, and the user interfaces 119, 121, 123, 125, 126 are connected through the bus 630 to communicate with each other.
[93] The processor 610 performs machine executable instructions stored in an instruction unit 640 of the memory 620 to implement the example methods 500, 501 described above with reference to the webpage presenting system 105. The machine executable instructions are included in a computer software program. The computer software program resides in the instruction unit 640 in this example. In other examples, the computer software program is stored in a computer readable medium that is not part of the computer system 600, and is read into the instruction unit 640 of the memory 620 from the computer readable medium.
[94] The processor 610 further includes a data container generation unit 611 and a webpage presenting unit 613. The units 611 and 613 of the processor 610 are organised in a way shown in Fig. 4 for illustration and description purposes only, and any other suitable arrangement can be used. Specifically, one or more units in the processor 610 may be part of another unit. For example, data container generation unit 611 may be integrated with the webpage presenting unit 613. In another example, the data container generation unit 611 in the processor 610 may be separate from the processor 610 without departing from the scope of the present disclosure.
[95] The communication interface 120 of the computer system 600 is used to connect the computer system 600 to the communication network 101, as shown in Fig. 1. The communication interface 120 may be an Internet interface, a WLAN interface, a cellular telephone network interface, a Public Switch Telephone Network (PSTN) interface, and an optical communication network interface, or any other suitable communication interface.
[96] As described above, in response to the request to visit the website, the processor 610 loads the webpage 1 into the webpage buffer 117 using a computing process as described above. The data container generation unit 611 of the processor 610 generates the first data container 115 that persists independently of the computing process of the loading the webpages as described above. The first data container 115 resides in the memory 620 in this example, as shown in Fig. 4. The data container generation unit 611 of the processor 610 also generates the second data container 151 in the webpage 1 as described above.
[97] Once the communication connection 155 between the webpage presenting system 105 and the call centre terminal 109 is established via the signalling server 103 as describe above, the webpage presenting unit 613 receives, in the first data container 115, the data received from the call centre terminal 109. The webpage presenting unit 613 sends the data from the first data container 115 to the second data container 151 in the webpage 1. The webpage presenting unit 613 causes the data and the webpage 1 to be presented, for example, displaying the data on the display 133 connected to the webpage presenting system 105 via the display interface 119, playing the data through the speaker 131 connected to the webpage presenting system 105 via the audio interface 126, as described above.
[98] When the user 113 is redirected to the webpage 2 as described above, the webpage presenting unit 613 loads the webpage 2 into the webpage buffer 117 and generates the third data container 153 in the webpage 2. The webpage presenting unit 613 sends the data from the first data container 115 received from the call centre terminal 109 to the third data container 153 in the webpage 2. The webpage presenting unit 613 causes the data and the webpage 2 to be presented on the webpage presenting system 105 as described above.
[99] The memory 620 stores other instructions, when performed by the processor 610, causing the processor 610 to implement variations and details of the methods (for example, methods 500, 501) described with reference to the webpage presenting system 105.
[100] It should be understood that the example methods of the present disclosure might be implemented using a variety of technologies. For example, the methods described herein may be implemented by a series of machine executable instructions residing on a suitable computer readable medium. Suitable computer readable media may include volatile (e.g. RAM) and/or non-volatile (e.g. ROM, disk) memory, carrier waves and transmission media. Exemplary carrier waves may take the form of electrical, electromagnetic or optical signals conveying digital data steams along a local network or a publically accessible network such as internet.
[101] It should also be understood that, unless specifically stated otherwise as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as "determining", “obtaining”, or "receiving" or “sending” or “generating” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that processes and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.

Claims (5)

  1. CLAIMS:
    1. A computer-implemented method for presenting webpages that are loaded on a device by a computing process, the method comprising: generating a first data container that persists independently of the computing process; generating a second data container in a first webpage of the webpages; receiving, in the first data container, first data received at the device; sending the first data from the first data container to the second data container in the first webpage; and causing the first data and the first webpage to be presented on the device.
  2. 2. The computer-implemented method according to claim 1, further comprising: generating a third data container in a second webpage of the webpages; sending the first data from the first data container to the third data container in the second webpage; and causing the first data and the second webpage to be presented on the device.
  3. 3. A computer software program, including machine-executable instructions, when executed by a processor, causes the processor to perform the method of any one of the preceding claims.
  4. 4. A computer system for presenting webpages that are loaded on the computer system by a computing process, the computer system comprising: a processor comprising: a data container generation unit to generate a first data container that persists independently of the computing process; and a webpage presenting unit to receive, in the first data container, first data received at the computer system; send the first data from the first data container to a second data container in a first webpage of the webpages; and cause the first data and the first webpage to be presented on the computer system.
  5. 5. The computer system according to claim 4, wherein the webpage presenting unit is further to: send the first data from the first data container to a third data container in a second webpage of the webpages; and cause the first data and the second webpage to be presented on the computer system.
AU2016101011A 2015-07-17 2016-07-06 Presenting webpages Expired AU2016101011A4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2016101011A AU2016101011A4 (en) 2015-07-17 2016-07-06 Presenting webpages

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AU2015902848A AU2015902848A0 (en) 2015-07-17 Presenting webpages
AU2015902848 2015-07-17
AU2016101011A AU2016101011A4 (en) 2015-07-17 2016-07-06 Presenting webpages

Publications (1)

Publication Number Publication Date
AU2016101011A4 true AU2016101011A4 (en) 2016-08-04

Family

ID=56551076

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2016101011A Expired AU2016101011A4 (en) 2015-07-17 2016-07-06 Presenting webpages

Country Status (1)

Country Link
AU (1) AU2016101011A4 (en)

Similar Documents

Publication Publication Date Title
US10574771B2 (en) Methods and systems for rewriting scripts to redirect web requests
US10924574B2 (en) Systems and methods for managing loading priority or sequencing of fragments of a web object
US9565265B2 (en) Method and apparatus for automatically optimizing the loading of images in a cloud-based proxy service
US7941755B2 (en) Method and apparatus for web page co-browsing
US10356156B2 (en) Method and device for loading webpage
US9443257B2 (en) Securing expandable display advertisements in a display advertising environment
US11233841B2 (en) Systems and methods for configuration-based optimization by an intermediary
US8527862B2 (en) Methods for making ajax web applications bookmarkable and crawlable and devices thereof
US10296558B1 (en) Remote generation of composite content pages
US8719421B2 (en) Cross domain interaction of a web application
US20180176282A1 (en) Setting First-Party Cookies by Redirection
US20140195588A1 (en) Multiple device co-browsing of a single website instance
US11258872B1 (en) Techniques for accelerating page rendering
KR20000053468A (en) Systems, methods and computer program products for dynamic placement of web content tailoring
US9749202B1 (en) Remote session preview management
CN103970760B (en) A kind of web-page requests processing method and processing device
US20150215374A1 (en) Delivering an update for a web application
WO2015088996A1 (en) Web page rendering on wireless devices
CN108021564A (en) A kind of method and apparatus of page reorientation
US20150242526A1 (en) System and Method of Embedded Application Tags
AU2019100103A4 (en) A system and method for delivering in-app content using mobile messaging
AU2016101011A4 (en) Presenting webpages
CN107656935B (en) Webpage display method and device
US10878471B1 (en) Contextual and personalized browsing assistant
US20140101284A1 (en) System and method for customization of web content

Legal Events

Date Code Title Description
FGI Letters patent sealed or granted (innovation patent)
PC Assignment registered

Owner name: COVIU GLOBAL PTY. LTD.

Free format text: FORMER OWNER(S): NATIONAL ICT AUSTRALIA LIMITED