# US 2016/0261968 A1 · An automatic system and method for conversion of smart phone applications to basic phone applications

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2016/0261968 A1
- Document ID: US20160261968A1
- Status: Published application
- Kind: A1
- Application number: 15/029,068
- Filed: 2014-10-13
- Published: 2016-09-08
- Earliest claimed: 2013-10-14
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Eric Mibuari; Osamuyimen Stewart; Bryant Walcott
- Web page: https://patentgrep.com/patent/US20160261968A1

## CPC

- H04W 4/50: Service provisioning or reconfiguring
- H04W 4/16: Communication-related supplementary services, e.g. call-transfer or call-hold
- H04M 1/72403: with means for local support of applications that increase the functionality
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)

## Abstract

A system and method is disclosed for converting smart cell phone applications to applications that operate on basic cell phones. The invention has a classifying process that classifies one or more functions of a cell phone application into those functions capable being performing by a basic cell phone and those functions, missing functions, that can not be performed by a basic cell phone. Substitute functions for the missing functions are developed. An emulator monitors the execution of the cell phone application and provides the substitute cell phone functions at points in the execution where a missing function is to be executed. Therefore, the smart phone application is converted into a basic phone application that can be executed by the basic cell phones with reduced functionality. The invention can run on a smart phone or a server. The invention can also be provided as a server based service for basic cell phone users.

## Claims

### Claim at position 1

1-20. (canceled)

### Claim 21

A device comprising machine-readable instructions configured to cause the device to implement an emulator, the emulator comprising:
an application tracer (AT) configured to identify a node in a pruned Smart Application Model that correlates to a location in an executing smart phone application, and to extract an instruction from a node in a Basic Phone Interaction Graph that correlates to the identified node in the pruned Smart Application Model;
an interaction handler (III) configured to receive the instruction from the AT, prepare a message from the instruction, and transmit the message to a user.

### Claim 22 (depends on 21)

The device of claim 21, wherein the device is a server configured to interact with a basic phone via a cellular network.

### Claim 23 (depends on 21)

The device of claim 21, wherein the smart phone application comprises machinereadable instructions residing on the server, and wherein the AT is configured to track the execution of the smart phone application on the server.

### Claim 24 (depends on 21)

The device of claim 21, wherein the smart phone application comprises machinereadable instructions residing on a server, and wherein the pruned Smart Application Model and the Basic Phone Interaction Graph each comprise machine-readable information stored in a memory on the server.

### Claim 25 (depends on 21)

The device of claim 21, wherein the pruned Smart Application Model comprises features of the smart phone application that can be implemented on a basic phone or that are recoverable for implementation on the basic phone.

### Claim 26 (depends on 21)

The device of claim 21, wherein the Basic Phone Interaction Graph comprises nodes topologically equivalent to the nodes of the pruned Smart Application Model, and wherein the nodes of the Basic Phone Interaction Graph comprise an instruction.

### Claim 27 (depends on 21)

The device of claim 21, wherein the IH is further configured to receive messages from the user, convert the messages to a User Interface input, and relay the User Interface input to the AT, and optionally to signal a transition to a subsequent state.

### Claim 28 (depends on 21)

The device of claim 21, wherein the device is a multipurpose computer, a special purpose computer, or a mobile device other than a basic phone.

### Claim 29 (depends on 21)

The device of claim 21, wherein the IH converts the message received from the AT to text suitable for transmission as a USSD or SMS message prior to transmitting the message to the user.

### Claim 30 (depends on 21)

A method of executing a smart phone application on a basic phone using the device of claim 21, the method comprising:
initiating the smart phone application on the server by the AT in response to a request received from a basic phone; and
tracking the smart phone application on the server by the AT.

### Claim 31 (depends on 30)

The method of claim 30, wherein initiating the smart phone application comprises identifying a homepage node in the User Interface Frames Graph, and wherein tracking the smart phone application comprises:
identifying a corresponding node in the pruned Smart Phone Application Model;
relating the identified node in the pruned Smart Phone Application Model to a corresponding node in the Basic Phone Interaction Graph; and
extracting an instruction from the corresponding node in the Basic Phone Interaction Graph.

### Claim 32 (depends on 30)

The method of claim 30, further comprising:
extracting, by the AT, an instruction from the Basic Phone Interface Graph;
passing the extracted instruction to the IH;
converting, by the IH, the extracted message into a USSD or SMS message; and
transmitting, by the IH, the USSD or SMS message to the basic phone.

### Claim 33 (depends on 30)

The method of claim 30, further comprising receiving input from the basic phone, wherein the IH converts the input to a User Interface Input, and relays the User Interface input to the AT.

### Claim 34 (depends on 30)

The method of claim 30, wherein tracking the smart phone application on the server by the AT comprises:
arriving at a screen in the smart phone application that corresponds to a node in the pruned Smart Application Model having pruned child nodes;
passing, by the AT, a termination message to the IH.

### Claim 35

A server comprising:
a network interface for receiving instructions from an executing smart phone application;
a pruned application model that identifies a point in the executing smart phone application where a basic cellphones requires a missing function necessary to execute the smart phone application;
an application tracer (AT) that references a pruned application model, where the AT tracks the execution of a smart phone application and identifies a point in the smart phone application where a basic cell phone needs a missing function necessary to execute the smart phone application; and
an interaction handler (IH) that generates a substitute cell phone function that substitutes for the missing function.

### Claim 36

A method of executing a smart phone application on a basic phone, the method comprising the steps of:
(a) correlating an activity by a smart phone application executing on a server with a node in a pruned Smart Application Model (SAM);
(b) identifying a node in a Basic Phone Interaction Graph (BPIG) that correlates with the node in the pruned SAM from (a);
(c) extracting an instruction from the BPIG node identified in (b);
(d) construction a message from the extracted instruction; and
(e) transmitting the message to the basic cell phone.

### Claim 37 (depends on 36)

The method of claim 36, further comprising, prior to (b), initiating the smart phone application on a server in response to receiving a request from the basic cell phone to execute the smart phone application.

### Claim 38 (depends on 36)

The method of claim 36, further comprising determining that the node in the pruned SAM is a terminal node, and returning a termination message after transmitting the message to the basic cell phone.

### Claim 39 (depends on 36)

The method of claim 36, wherein steps (a)-(c) are carried out by an application tracer function of an emulator on the server.

### Claim 40 (depends on 36)

The method of claim 36, wherein steps (d)-(e) are carried out by an interaction handler function on an emulator on the server.

### Claim 41 (depends on 36)

The method of claim 36, further comprising receiving an input from the basic phone after transmitting the message.

### Claim 42 (depends on 36)

The method of claim 36, further comprising receiving an input from the basic phone after transmitting the message, wherein the received input is provided to the smart phone application to generate a subsequent activity.

### Claim 43 (depends on 36)

The method of claim 36, further comprising receiving an input from the basic phone after transmitting the message, wherein the received input is provided to the smart phone application to generate a subsequent activity, and wherein steps (a)-(c) are repeated with the subsequent activity.

### Claim 44 (depends on 36)

The method of claim 36, wherein the pruned SAM comprises features of the smart phone application that can be implemented on the basic phone or that are recoverable for implementation on the basic phone.

### Claim 45 (depends on 36)

The method of claim 36, further comprising, prior to step (a), generating the pruned SAM by comparing a features table of the smart phone application with a recoverability table.

### Claim 46 (depends on 36)

The method of claim 36, wherein the activity by the smart phone application is selected from a feature, an Input/Output (I/O) widget, and a screen.

### Claim 47 (depends on 36)

The method of claim 36, wherein the server is selected from a special purpose computer, a general computer, and a mobile device.

### Claim 48 (depends on 36)

The method of claim 36, wherein the smart phone application comprises features that generate graphics and interactive displays.

### Claim 49 (depends on 36)

A server comprising machine-readable instructions configured to implement the method of claim 36.

### Claim at position 31

50-65. (canceled)
