Abstract:
An integrated web browser, instant messaging system is presented. The system operates on mobile devices and other types of embedded devices. The system is an integrated instant messaging and web browsing application controlled by an embedded application on a mobile device. Today most web browsers, instant messaging, and other programs are separate or discrete applications that are executed on an either/or type of situation. The present system provides an integrated application environment that is a single application that shares data between instant messaging and web broswer sub-modules, which allows users to simultaneously message and browse. The system may also be deployed as part of an overall method for enhancing safety and producing revenue for communications networks.

Description:
RELATED APPLICATION 
       [0001]    This application claims the benefit of and priority to U.S. Provisional Application Ser. No. 60/824,754, filed Sep. 6, 2006, the contents of which are incorporated by reference herein in its entirety. 
     
     BACKGROUND 
       [0002]    1. Field 
         [0003]    The present invention relates to website browsing and instant messaging activities on cellular telephones, mobile devices, and other types of embedded devices. 
         [0004]    2. General Background 
         [0005]    In the last two decades, the deployment and use of mobile computing devices has grown such that a large percentage of people living in the United States, Europe, Asia, and other places have a least one device. Mobile phones, personal digital assistant&#39;s (PDAs), laptop computers and a host of similar devices are carried by people world wide as computer and connectivity devices. 
         [0006]    At the same time, advancements in microprocessor technology and in communications protocol have provided many tools that are included in addition to the basic functions of the mobile devices. For example, mobile phones are equipped with games, address books, instant messaging systems, and web browsing system. Similarly, PDAs come equipped with similar suites of software in addition to the core systems and functions. 
         [0007]    To minimize the size of these devices, extend the operating time (limited by batteries) and make them not only more attractive to carry, and other considerations, the computing capabilities are necessarily limited. The input mechanisms are often limited when compared to more traditional computing systems. These include numeric keypads on phones and keyboards operated by thumb in a “hunt and peck” method. More advanced PDA&#39;s have touch screens for input and output. These factors contribute to often cumbersome switching between application programs. Special applications are devised to provide functions and services such as instant messaging, email, and web browsing to compensate for the deficiencies. The mobile applications have been devised following the model used on the larger fixed based predecessor; the familiar computer. The application model in combination with limitations of the mobile platform has resulted in mobile software programs that allow users to execute one program at any given time with little or no visibility into the activities of other important programs executing concurrently. For instance, the user may be browsing the web or viewing a newly arrived instant message, but not simultaneously. These systems all suffer more or less equally from difficulty knowing when to switch between applications. 
         [0008]    Web browsers comprise a class of software applications for transmitting data to-and-from server computers, as well as rendering documents returned by the those computers on the display of a local computer. A web browser enables a user to display and interact with instant, images, and other information typically located on a web page at a website on the World Wide Web or a local area network. 
         [0009]    Similarly, a microbrowser (sometimes minibrowser or mobile browser) is a web browser designed for use on a handheld device such as a PDA or mobile phone. Microbrowsers are optimized so as to display internet content most effectively for small screens on portable devices and have small file sizes to accommodate the low memory capacity and low-bandwidth of wireless handheld devices. 
         [0010]    Instance messaging client applications comprise a class of software applications for transmitting instant messages from one person to another over a computer or telephone network. 
       SUMMARY 
       [0011]    An integrated web browser, instant messaging system is presented. The system operates on mobile devices and other types of embedded devices. The system is an integrated instant messaging and web browsing application controlled by an embedded application on a mobile device. Today most web browsers, instant messaging, and other programs are separate or discrete applications that are executed on an either/or type of situation. The present system provides an integrated application environment that is a single application that shares data between instant messaging and web browser sub-modules, which allows users to simultaneously message and browse. The system may also be deployed as part of an overall method for enhancing safety and producing revenue for communications networks. 
         [0012]    According to a feature of the present disclosure, there is disclosed an instant messaging and web browsing system comprising an instant messaging subsystem, a web browsing subsystem, a display and control module adapted to operate the instant messaging subsystem and the web browsing subsystem substantially simultaneously, wherein a user may view instant messages or web page content and the instant messaging and web browsing system connect to a network. 
         [0013]    Also disclosed according to a feature of the present disclosure is a machine-readable medium having program instructions stored thereon executable by a processing unit for performing the steps of receiving instant messages, sending instant messages, and receiving web page content, wherein receiving of instant messages, sending of instant messages, and receiving of web page content occurs substantially simultaneously. 
         [0014]    According to a feature of the present disclosure, a mobile device comprising a processor, a memory, a network connection, and an integrated instant messaging and web browsing application executable by the processor for: receiving instant messages, sending instant messages, and receiving web page content. 
         [0015]    Finally, according to a feature of the present disclosure, a method comprising providing a network offering, providing a software for use on mobile devices, preapproving a list of web site content to be downloadable to a mobile device, the preapproval list being based on a criteria, and providing access via the software to the preapproved web site content. 
     
     
       DRAWINGS 
         [0016]    The above-mentioned features and objects of the present disclosure will become more apparent with reference to the following description taken in conjunction with the accompanying drawings wherein like reference numerals denote like elements and in which: 
           [0017]      FIG. 1  is block diagram of an embodiment of the present disclosure showing in the interrelationship of the various components of the present disclosure. 
           [0018]      FIG. 2  is a block diagram of an embodiment of a display and control module of the present disclosure. 
           [0019]      FIG. 3A  is a perspective view of an embodiment of mobile device having the integrated instant messaging and web browser system. 
           [0020]      FIG. 3B  is a perspective view of an embodiment of mobile device having the integrated instant messaging and web browser system. 
           [0021]      FIG. 4  is a flow chart of an embodiment of a method of offering internet content over a network. 
       
    
    
     DETAILED DESCRIPTION 
       [0022]    The present inventors have devised a novel system method of providing functionality for users connected to mobile communication networks, such as a cellular phone networks. Disclosed is an instant messaging platform having an embedded web browser for Internet content. The system also comprises a display and control module, which provides the user interface for the dual instant messaging and web browsing sub-systems. Users are informed when an instant message has arrived and may discover who sent the message and the message content without the need to switch applications. In this system, users can easily move back-and-forth between instant messaging and web browsing activities using the user interface without the need to select and open a new program application on their mobile devices. 
         [0023]    Moreover, the present inventors devised a novel business method of improving safety of children on the internet, as well as increasing revenues for communication networking companies. According to the methods, websites are preapproved prior to being made available to users of the network. Thus, access of offensive or dangerous website to children it prevented. Revenues are increased by only preapproving websites that pay the communication&#39;s network a fee. 
         [0024]    According to embodiments shown in  FIG. 1 , mobile device  100  is shown having integrated instant messaging and web browsing system  105 . Mobile device  100  is, according to embodiments, a mobile phone, personal digital assistant (PDA), other embedded devices, and the like. According to other embodiments, mobile device  100  may comprise a mobile computer. Artisans will recognize that although the principles of the present disclosure are couched in terms of mobile computing, the same principles are applicable to nearly any device capable of executing machine readable instruction. 
         [0025]    Accordingly, integrated instant messaging and web browsing system  105  integrates both web browsing module  130 , which provides a platform for viewing content from the internet, and instant messaging module  120 , which provides a platform for sending and receiving instant messages, into a single application. Instant messages may be any short message sent from a device to another device over a network. Integrated instant messaging and web browsing system  105  provides display and control module  110  to users  400  that allow users  400  to easily switch between instant messaging module  120  and web browsing module  130  (as shown in  FIGS. 3A and 3B ) and display web browsing module  130 , instant messaging module  120 , or both on the screen of mobile device  100 . 
         [0026]    According to embodiments, for example as shown in  FIG. 2 , display and control module  110  manages all user interaction from a mobile device&#39;s input mechanism, such as the keypad of a mobile phone, manages separate threads of activities of integrated instant messaging and browsing system  105 , including website browsing and instant messaging activities that may be executing in parallel, and displays content on the screen of mobile device  100 . As shown according to the embodiment of  FIG. 2 , display and control module  110  comprises user interface  111  and background threads  115 . 
         [0027]    User interface  111  comprises a thread that captures inputs from user  400  and renders outputs from several background threads  115  executing in parallel, according to embodiments. User interface  111  comprises the following components: main window module  112 , message bar  113 , and input mechanisms and menu buttons module  114 . 
         [0028]    According to embodiments, main window module  112  renders the primary content selected by user  400  on a display. It may comprise rendering a web page on the display, an instant messaging dialog that is currently in progress on the display, or a system menu, according to embodiments. Similarly according to embodiments, main window module  112  displays instant messages and web browser content simultaneously (in parallel). Artisans will understand how to implement an appropriate output to a display without undue experimentation. 
         [0029]    Likewise according to embodiments, message bar  113  conveys messages to user  400 , including the arrival of new instant messaging messages, for example. According to embodiments, message bar  113  is super-imposed over the content of main window module  112  that is being displayed for a brief time while the message is conveyed to the user. According to similar embodiments, message bar  113  may occupy a portion of the display permanently, until cleared, or for a short period of time. The other contents of the display will be shifted around the portion of the display having a message bar  113 . According to still other embodiments, message bar  113  is “ticker tape”-tape banner that occupies a relatively small portion of the display and provides user  400  with instant messaging alerts, such as an instant message received, or other messages from integrated instant messaging and browsing system  105  or mobile device  100 . Accordingly, in some embodiments, user  400  will be able to choose the desired behavior of message bar  113  as a modifiable setting. According to embodiments, message bar  113  may also display a notification when each web page has completed downloading and rendering and is ready to be viewed. 
         [0030]    Finally, input mechanisms and menu buttons module  114  allow user to interact with display and control module  110 . They form a set of commands and inputs that are interpreted when the user activates specific input mechanisms on mobile device  100 . According to embodiments, input mechanisms are buttons, thumb wheels, touch pads, touch screens, and other input mechanisms for mobile devices and non-mobile devices. Moreover, input mechanisms and menu buttons module  114  map commands to corresponding input mechanisms on a device. For example and as shown in  FIG. 3A  and  FIG. 3B , the “Switch” and “Enter” commands are mapped to the buttons that they reside in closest proximity with. Another example is the input of text from the number pad of a cellular phone. Similarly, for example, menu items are navigated with arrow keys; as each menu option is navigated to with the arrow keys, it is highlighted. Pressing an “Enter” or “OK” button will send a command to select the highlighted option. Artisans will known and understand the many variations of mapping input mechanisms with commands and inputs. 
         [0031]    Input from input mechanisms and menu buttons module  114  is interpreted based on the type of content in main window  112 , according to embodiments. For example and according to embodiments, a down-arrow on mobile device  100  does not have a function (associated command to execute) when main window  112  is rendering an instant messaging dialog. However, it moves a logical cursor when main window  112  is rendering a system menu or a web page with links. Thus, input mechanisms and menu buttons module  114  may be context sensitive, depending on the thread or threads being shown on the display, according to embodiments. 
         [0032]    Typically, for example, user  400  may be viewing a web page within main window  112  and receive a new instant messaging message, which is indicated to the user via message bar  113 . User  400  may then continue with web browsing in main window  112  or execute a command using input mechanisms and menu buttons module  114  to switch to a revised main window  112  showing the instant messaging dialog and allow user  400  to engage in a conversation with another user. 
         [0033]    Background threads  115 , operating in parallel, comprise instant messaging reader thread  117 , instant messenger writer thread  117 , and web browser thread  118 . Instant messaging reader thread  117  invokes instant messaging module  120  with instructions to accept messages sent by instant messaging server  300 , according to embodiments. Similarly, instant messenger reader thread  117  interacts with user interface  111  to display incoming instant messages, according to embodiments. For example, instant messenger reader thread  117  causes message bar  113  to alert user  400  that a new instant message has arrived if content displayed by main window module  112  is displaying web pages; if the content displayed by main window module  112  is instant messaging, then instant messenger reader thread  117  causes the incoming message to be accordingly displayed. 
         [0034]    According to embodiments, instant messaging writer thread  117  invokes the instant messaging module  120  with instructions to send messages to messaging server  300 . Instant messaging writer thread  117  is invoked, according to embodiments, when user  400  activates input mechanisms and menu buttons module  114  with one or more commands wherein text is entered and a command indicating that the test that has been entered and is ready to pass to instant messaging module  120 . 
         [0035]    According to embodiments, web browser thread  118  invokes web browser module with instructions to request a specific web-based service and then caches (stores) the reply results. Web browser thread  118  also interacts with user interface  111  to both display stored web pages and receive input from user  400  directing instant messaging and web browsing system  105  to the webpages to be viewed. According to embodiments, users may directly input uniform resource indicator (URI) addresses to access specific webpages or may select webpages from a menu. 
         [0036]    Each of instant messaging reader thread  117 , instant messaging writer thread  117 , web browser thread  118 , and user interface  111  occur in parallel: instant messaging messages may be sent, instant messaging messages may be received, and web pages may be requested and cached for rendering simultaneously within the confines of a single program application, according to embodiments. Because each thread operates in parallel with the other threads, instant messaging messages, for instance, are received within instant messaging reader thread  117  while user  400  is making web page requests within the web browser thread  118 . 
         [0037]    According to embodiments, an internal application-programming interface (API)/callback mechanism is used to alert user interface  111  when one or more background threads  115  have performed an activity that requires rendering either in main window  112  or in message bar  113 . According to embodiments, when instant message reader thread  117  receives a message, it calls the API within user interface  111 , and then user interface  111  conveys that message in message bar  113 . The other features are similarly communicated between the various modules, threads, and interfaces of the present disclosure. 
         [0038]    Multiple web browser threads  118  may be invoked in parallel, according to embodiments. For example, user interface  111  may render one web page, the result of one thread, and then render the next web page, the result of another thread, as per user&#39;s  400  request as indicated by user  400  using input mechanisms and menu buttons module  114 . According to embodiments, each web browser thread  118  comprises a main window module  112  content set; thus, user may use a “Switch” function to browse each individual display page of content much like opening individual web browser windows in traditional computing platforms. 
         [0039]      FIGS. 3A and 3B  show mobile device  100  in two iterations. Display and control module  110 A is configured to show both a webpage and a instant messaging area on the screen of mobile device  100 . According to embodiments, user  400  may switch between various displays by activating a “Switch”command, for example. Pressing it once will “close” integrated web browser module  130  (shown at  110 B). Artisans will recognize that as web browsing module  130  and instant messaging module  120  are part of a single program application, according to embodiments, “closing” integrated web browser module  130  or instant messaging module  120  merely causes the screen to display only web browser module  130  or instant messaging module  120  depending at the time the input is activated. The “closed” module remains available and will continue to operate in the background. Thus, a web page may be selected and web browser module  130  will load the webpage, even if the web browser module  130  screen is “closed” and instant messaging module  120  screen is activated. According to embodiments, a percentage of a screen may be devoted to web browsing module  130  and a percentage of a screen may simultaneously display instant messaging module (shown as  110 A in  FIG. 3 .) 
         [0040]    According to embodiments, display and control module  110   a  also provides an integrated method of switching between instant messaging mode, as shown as a tool bar at the bottom of the screen with commands “Switch” and “Enter” corresponding with two keypad buttons on mobile device  100 . Artisans will recognize that other commands may be mapped to a tool bar, according to embodiments. According to other embodiments, toolbar will be omitted to conserve screen space and users  400  must learn which commands correspond to which buttons on their respective input devices. 
         [0041]    According to embodiments, web browser module  130  manages all interaction with external web servers  200  and assists display and control module  110  when rendering materials is returned by those web servers  200 . 
         [0042]    Likewise according to embodiments, instant messaging module  120  manages all interaction with external instant messaging servers  300  and assists display and control module  110  when rendering messages returned by those instant messaging servers  300 . 
         [0043]    Web browser module  130  and instant messaging module  120  operates in parallel, according to embodiments, so network messages may be received while websites are being browsed. Display and control module  110  may display materials received by web server  200 , messages received by instant messaging server  300 , or a combination of both types of materials if both types of materials are be received in parallel. 
         [0044]    Communications between user  400  and the display of display and control module  110  is performed through the physical interface provided by mobile device  100 . For a cellular telephone, for example, this comprises a display screen, keypad, and other input mechanisms built into the telephone. Similarly, for PDAs may comprise a screen, keyboard and other buttons, thumbwheel, touch screen, or combinations thereof. Depending on the device, artisans will recognize the applicable input mechanisms that may be employed to operate the systems and method of the present disclosure. 
         [0045]    According to embodiments, display and control module  110  is configurable to ensure that user  400  may only request specific web sites. If this configuration has bene employed, then display and control module  110  will only allow those specific web server addresses to be passed to the web browser module  130 . Thus, according to embodiments integrated instant messaging and browsing system  105  provides a platform in which responsible parties for mobile device  100  may filter content viewed by users  400 . Moreover according to embodiments, mobile communications companies may contract with web sites to provide their website to users  400  of the mobile communications company via integrated instant messaging and web browser system  105 , providing an additional source of revenue to the mobile communications company. 
         [0046]    According to embodiments, integrated instant messaging and browsing system  105  works in conjunction with existing instant messaging servers  300  and web servers  200 . Thus, communications networks need not install any additional server software because integrated instant messaging and web browsing system  105  seamlessly connects to existing instant messaging servers  300  and web servers  200 . 
         [0047]    Integrated instant messaging and web browsing system  105  may either be preloaded on mobile device  100  at part of the operating system, embedded on a chip contained within mobile device  100  (i.e., be “embedded”), or as an add-on program application. Users  400  may also download and install integrated instant messaging and web browsing system  105 , according to embodiments. 
         [0048]    According to embodiments, communications between the website browser module  130  and web servers  200  is performed using the Hypertext Transfer Protocol (HTTP). Accordingly, other protocols are similarly contemplated, according to embodiments including, DHCP, DNS, PTP, IMAP4, IRC, MIME, POP3, SIP, SMTP, SNMP, SSH, TELNET, HTTP, HTTPS, BGP, RPC, RTP, RTCP, TLS/SSL, SDP, SOAP, L2TP, PPTP, and others known and understood by artisans, according to embodiments. According to embodiments, website browser module  130  communicates with web servers  200  via TCP internet protocol, which in turn can operate over any of several types of physical networks, including cellular phone networks. Other communications protocols are likewise contemplated according to embodiments, such as TCP, TCP/IP, UDP, DCCP, SCTP, GTP, WAP Datagram protocol, and others that would be known and understood by artisans. 
         [0049]    According to embodiments, communications between the instant messaging module  120  and instant messaging server  300  is performed using the Extensible Messaging and Presence Protocol (XMPP), according to embodiments. Other instant messaging protocols are likewise contemplated, including Gadu-Gadu, Cspace, IRC, Meca Network, MSNP, OSCAR, Protocol for Synchronous Conferencing, TOC, TOC2, SIP/SIMPLE, Yahoo Messenger, DirectNet, XMPP, Zephyr Notification, Gale, Skype, and combinations thereof, according to embodiments. Instant messaging module  120  also operates over the TCP Internet Protocol, according to embodiments, and may also operate over any of several types of physical networks as previously described. Other communications protocols are likewise contemplated according to embodiments, such as TCP, TCP/IP, UDP, DCCP, SCTP, GTP, WAP Datagram protocol, and others that would be known and understood by artisans. 
         [0050]    The integrated instant messaging and web browsing system  105  and method herein may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The system may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices. The computer programs are stored in a memory medium or storage medium or they may be provided to a processing unit through a network or I/O bus. 
         [0051]    In one aspect, integrated instant messaging and web browsing system  105  disclosed includes at least one central processing unit (CPU) or processor. The CPU can be coupled to a memory, ROM or computer readable media containing the computer-executable instructions for generating and using fingerprints for integrity management. Computer readable media can be any available media that can be accessed by the system and includes both volatile and nonvolatile media, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory, portable memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the fingerprint generation and matching systems. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media. Combinations of any of the above should also be included within the scope of computer readable media. The computer readable media may store instructions or data which implement all or part of the system described herein. 
         [0052]    Also disclosed herein and shown in  FIG. 4  are business methods for wireless communications companies. According to embodiments, wireless communications companies may employ the use of a software suite, such as integrated instant messaging and web browsing system  105  disclosed herein. The mobile communications company, according to embodiments, allows access only to websites preapproved by the mobile communications company. Accordingly, by limiting users access to only preapproved web content, mobile communications companies may provide a value added to parent and guardians who are worried about the content their children view on the internet. Moreover, according to embodiments, by making the list or preapproved website available to parents and guardians, the parents and guardians may know exactly what content is viewable on children&#39;s mobile communications devices. 
         [0053]    Similarly and according to embodiments, mobile communications companies may earn revenue by preapproving only web sites that subscribe to the mobile communications companies&#39; approval list. For example, ACME.com may offer child friendly content of cartoon episode recaps. ACME.com would be attractive and safe for children to view, which would make ACME.com eligible to be included in the preapproved websites available to children. However, the mobile communications company would not include ACME.com until ACME.com paid a set price to be listed and available to subscribers of the mobile communications network. 
         [0054]    According to an embodiment, a website is submitted to an entity having a network with which mobile device can communicate  1010 . The first step, according to an embodiment, is a process of screening the content of the website  1020 . After the content is found to be nonobjectionable, the website must pay a fee to the entity having a network  1030 . The fee payment and content approval steps may be juxtaposed according to embodiments. According to still other embodiments, the step requiring payment of a few  1030  is optional and may be omitted from the method. If either the content is not approved or a fee is not paid, the website is not approved  1040  and users of the network will be unable to access the website  1050 . Conversely, it the website is approved  1060 , users of the network will be able access the website via the network and view the contents of the website  1070 . 
         [0055]    Accordingly, a preapproved website list may be included as part of the software suite provided on user&#39;s mobile device that is compatible with a given network. Thus, users would not be able to directly type in URI and view the content of the URI, but would rather select an available website from a preexisting list built into the software. To that end, according to embodiments, mobile communications companies may sort websites according to the subscription fee paid by the website to make those that paid a higher subscription fee more visible to subscribers to the mobile communication company&#39;s network. 
         [0056]    According to still similar embodiments, available networks are categorized (e.g., news, sports, children&#39;s, television, etc.). Thus, users navigate to a website after navigating to a specific category. According to embodiments, the first available websites shown would be those that paid a premium subscription rate. 
         [0057]    While the apparatus and method have been described in terms of what are presently considered to be the most practical and effective embodiments, it is to be understood that the disclosure need not be limited to the disclosed embodiments. It is intended to cover various modifications and similar arrangements included within the spirit and scope of the claims, the scope of which should be accorded the broadest interpretation so as to encompass all such modifications and similar structures. The present disclosure includes any and all embodiments of the following claims.