Sie sind auf Seite 1von 75

THAT LUULUTLULITE US009760385B2

(12) United States Patent ( 10) Patent No.: US 9, 760 ,385 B2


Brace et al. (45 ) Date of Patent: Sep . 12, 2017
(54 ) DEVICES
CONCURRENT EMULATION OF MULTIPLE (56 ) References Cited
U .S . PATENT DOCUMENTS
(71) Applicant: INVODO , INC ., Austin , TX (US) 7,813 ,910 B1 * 10/2010 Poulin ............... G06F 11703
/ 3457
/ 13
( 72 ) Inventors: Matthew C . Brace , Austin , TX (US ); 8,538 ,402 B2 * 9/2013 Vidal ...................... H04W 4 /00
James D . Keeler, Austin , TX (US) 455 /418
2007/0127426 A1* 6 /2007 Watters ................. HO4L 67/125
( 73 ) Assignee : WebAd Campaign Analytics , Austin , 370 /338
TX (US) 2009/0036111 A1* 2/2009 Danford ........ .... H04L 455
41/0893
/419
2010/0333088 Al * 12/2010 Rogel ............... G06F 9/ 45533
( * ) Notice : Subject to any disclaimer , the term of this 718 / 1
patent is extended or adjusted under 35 2012/0245918 A1* 9/2012 Overton .......... G06F 9 /4443
@
O U . S .C . 154 (b ) by 42 days. 703/27
2012/0323553 A1* 12 /2012 Aslam ..... G06F 9 /455
703/ 28
(21) Appl. No.: 14 /546 ,931 2013 /0096906 A1 * 4 / 2013 Niemeyer ............... GO6F 9/ 455
703 / 23
( 22 ) Filed : Nov. 18 , 2014 2013/0297281 A1 * 11 /2013 Niemeyer ........... GO6F 17703
/5009
/ 20

(65) Prior Publication Data (Continued )


Primary Examiner — Chun Cao
US 2015/0143091 A1 May 21, 2015 (74) Attorney , Agent, or Firm — Yudell Isidore PLLC
(57 ) ABSTRACT
Related U .S . Application Data In one or more embodiments , a system can configure a
physical mobile device via configuring a configuration for
(60 ) Provisional application No .61/ 905 ,608, filed on Nov . an emulator of the physicalmobile device. For example, a
18 , 2013 . user ( e . g., a customer ) can request a physical mobile device ,
and a system can provide the user with an emulation of the
physical mobile device , where the user can configure the
(51) Int. Ci.
G06F 9 /00 ( 2006 .01) emulation of the physical mobile device . In one or more
embodiments , the user can be provided with the configura
GOOF 9 /455 ( 2006 .01 ) tion via at least one of a network and a physical delivery of
G06F 9 /445 (2006 .01) the physical mobile device , configured with the configura
(52) U . S . CI. tion . In one example, the user can execute an emulation of
CPC . ........ G06F 9/455 (2013.01 ); G06F 9/44505 the physical mobile device configured with the configura
( 2013 .01 ) tion , received via the network . In another example , the
(58 ) Field of Classification Search physical mobile device can be configured with the configu
CPC ............................ GO6F 9/44505; G06F 9/455 ration , and subsequently, the physical mobile device can be
USPC . . . . . . ......... ................ 713 / 100; 703/ 13 physically delivered to the user.
See application file for complete search history . 27 Claims, 45 Drawing Sheets
Receive a request for al Store a configuration
computing device based on the received
5610 data
5620

Request an enviator
5620 Receive usor input
indicating a delivery
method
Receive the emulator 5700
alocation request
5630
Determine
a method of providing
Allocate the emulator the configuraton
5640 5710
Network Physical
Emulate the computing
device

11
5659
Provide die Comüigure the physical
configuration to the computing device with
Receive tata via a user via the network the configuration
network 5720 5730
50

Provide the physica :


Provide the data to the computing device to a
emuiater physical delivery
5670 service
5740
Create a configuration
based on the received
dala
5680
US 9,760 ,385 B2
Page 2

(56) References Cited


U . S . PATENT DOCUMENTS
2014 / 0032722 A1 * 1/ 2014 Snow ................. G06F 9 /4445
709 /220
2016/0112875 A1 * 4/2016 Kasravi. . ... H04L45512/411
/ 12
* cited by examiner
U . S . Patent Sep. 12 , 2017 Sheet 1 of 45 US 9,760,385 B2

DB
1230
Media server 1210
CCD
1110 Media server interface
1220
CCD
1111

CCD
1112 DB
1231

Media server 1211


CCD
1113 Media server interface
1221
Network
1010

Media server 1212


CCD
Media server interface
1222
1114
DB
1232
CSD CSD CSD
1310 1311 1312

FIG . 1
U . S . Patent Sep. 12 , 2017 Sheet 2 of 45 US 9,760,385 B2

no que no tie ne noget


App 2420 App 2422 App 2424 App 2426

APP manager 2310


Scheduler 2370 Queue 2380

Kernel 2210
Display DRV 2220 Touch screen DRV 2230 File system 2282

Button DRV 2240

Scheduler 2270
Trensceiver DAV 250 SerialTinterface
Transceiver DRV 2250

Queue 2280
renseivDRVer Drv22602:52
Transceiver DRV 2252

Display 2120 Hardware 2110


Touch screen 2130
Transceiver 2150
Button 2140 Button 2142 Button 2144
Transceiver 2152
Serial interface 2160
Processor 2010 Memory medium 2117

FIG . 2A
U . S . Patent Sep. 12 , 2017 Sheet 3 of 45 US 9,760,385 B2

CD 2000
Button 2140 Button 2142 Button 2144

Processor Memory medium


Transceiver 2150 2117
2010

Transceiver 2152 App 2426

Display 2120 App 2424

App 2422
Touch screen 2130
App 2420
Serial interface 2160
Kernel 2210
APP
manager
2310

FIG . 2B
U . S . Patent Sep. 12 , 2017 Sheet 4 of 45 US 9,760,385 B2

CD 2000
Memory medium
Network 2020 CD 2000
interface APP 2030 Memory medium
2040 2020
Processor APP 2031
2010 APP 2030
Network Network
APP 2032 interface APP 2031
interface 2040
2041 OS 2035 FPGA
2012 APP 2032
Network CFG 2033
interface
FIG . 2C 2041 OS 2035

CD 2000
FIG . 2D
Memory medium
Network 2020
interface APP 2030
2040 CD 2000
ASIC APP 2031 Memory medium
2014
2020
Network APP 2032
interface APP 2030
2041 CFG 2034 Network
interface APP 2031
2040
OS 2035 GPU APP 2032
2016
Network CFG 2036
interface
2041
FIG . 2E OS 2035

FIG . 2F
U . S . Patent S ep. 12 , 2017 Sheet 5 of 45 US 9,760,385 B2

Display 3000
Client Interface 3020
Interactive Media Interface 3030
Media Interface 3040

1= Object
3050
North
Interactive
Communication
Interface
3060

HOOG
* ?Q
3110

3112

3114

3111

31
3115 3116 3117

FIG . 3A
Canone our com
U . S . Patent

Start first APP


3210
Sep . 12 , 2017 Sheet 6 of 45

The first APP receives


user input
| US 9, 760. 385 B2

3230

The first APP indicates


a user action Determine
3220 if the user input is Yes
within area
3240
The first App provides
the user input to one or
Exclude and /or redact more of a second APP
the user input and an interface
3250 manager
3260

FIG . 3B

Start first APP The first APP receives


3310 user input
3340 ?

Start second APP


3320 The first APP provides Determine
the user input to the if the user input
second App indicates an exit
The first APP indicates 3360 3350
an action to be
performed via the Yes
second APP
3330 Determine
if additional user input Exit the first APP
- Mo applicable 3380
( 3370

FIG . 3C
U . S . Patent Sep. 12 , 2017 Sheet 7 of 45 US 9 .760 ,385 B2

An APP manager The APP manager


receives data from a provides , to the
first APP second APP , the data
3410 received from the first
APP
3450
The APP manager
stores the data from
the first APP
3420 The APP manager
removes focus from
the second APP
3460
The APP manager
removes focus from
the first APP
3430 The APP manager
provides focus to the
first APP
3470
The APP manager
provides focus to a
second APP
3440

FIG . 3D
U . S . Patent Sep . 12 , 2017 Sheet 8 of 45 US 9, 760 , 385 B2

4550 2130
.

49

Th .45952
***

sertakadar *S **
1.***

ZH 2120

-4614
-4610 4612

FIG . 4A

4810
4620

4550 x 2130
2130

* *rcerstücher $ 94 . 228.45

.
MO. " * 1 XX -
46..
1

sert
2120

1 4614
4614
- 4610 44612

FIG . 4B
U . S . Patent Sep . 12, 2017 Sheet 9 of45 US 9, 760 ,385 B2
4620 480
4550 1 5 : 59:49: 49: 41. A . E4 % ? ? , ? ? .. 2130
1.34k,
:

??

it????: teak???:

******4?ELYet ??,????,????12trustTIP :3* *Saws,


* ** * **

zar
tx??

???P37??
210

4614
4610 4612

FIG . 4C

2000
: : : : : :

4612 - 2120

*--… ?? ~ ash 4610


4620

??? ,??????
*
44*
2130

?????
https? ?

4810 2140 4000


FIG.4E
2144
2142
U . S . Patent Sep. 12 , 2017 Sheet 10 of 45 US 9 ,760, 385 B2

imusi
4710 **
*

*
**
*
46204
4550 sammen 2130

::::
+
1

interior
here
** * ** * * *.

bowhuntirtimiter
*
*

. wy
****
t

2120

4614
4610 4612

FIG . 4D

2120 Media Interface 6542


4612 o c h - 4620
4620 4610
4610
4614 @ 091 4752

HOB
4810
2130

4x
2160 oootie
2140 2144
2142

FIG . 4F
U . S . Patent Sep. 12 , 2017 Sheet 11 of 45 US 9 ,760, 385 B2

4130
- 2130 2120 4410
2000 4120

*
******
* 1961 **

Configure Email
***W
????y?? 99619 500
044617.94441 ****
**
*

294 0 794440660 4106


)

6 4674 91 )Vibt264*19479934449
***.15 &14(917 e46*6 *6 *4141414
16-6)***
*
***
** ***

*
*

****
****
-
RAT **
*
*

AK6T4R1A9B4R1A0L1A
tv
***
**
*** **4 444

Enter your
YA *
*
**
*
** *
**
*** *
*
**** *******eve
**67.
TIL 496*
www1947 criteriiwithiwarenwww
LAW*i
***
**
*
**

********
****
*
*
****

*****.
**
.

*1909164
***
**
Ah Wein
*
*
r
vr*vtnvtor* ********* Testo
104mvite Wtbetri
*
e**ver
******
* **

***
**
**
*
*

*9646 *
16
***
*
*

**
**

***

w
email login on4210

User Name:
-
w pe
- - -- - - w w www
- - - - - - -

pesmine 4215
Name:

VI
um
is
I 1

Incoming Server: how - numuuwwwwww

IMAP 4225
POP 4230
in en 4235
- - - - - - - - - - - - - - - - - - -
SMTP Server: that the oth those tothe other that the tom mom w * * * * * w * to the m o st

OK Cancel
4510 4512

eten eten
Button
2140
Button
2142
Button
2144 n
www m4810

FIG . 4G
U . S . Patent Sep. 12 , 2017 Sheet 12 of 45 US 9 ,760, 385 B2

4130
-4550 - 2000 4120
4410

Configure Emai :
Enter your LLORELLA
email Login

MASKV Como Cose


Button Button Button
2140 2142 2144

S4810

FIG . 4H
U . S . Patent Sep. 12 , 2017 Sheet 13 of 45 US 9 ,760, 385 B2

4130
4412 - 2000 4120
- 2130 2120
W W
A

AMAMAMAVAATASAATASARABIA
V

1 Email
1 + *
*
4547
Anime wwwwTALAISANTARAvi**rAumAurAu A 015 4wwal5040 w wwwvw wwvwwAAAA40574? 1?6 ? si? ? ?
**** ****** *

MANANAM
****

AT A AAAAA)ann
******** ***** to ******* *
Configure
* ******
** *********
??++*+*
+ANAN
+
*********
*
int ********* *www . *et
*
HAMA A A6A+A.M?Awww
[
t
*wasanya
*****
**

soy
deem arty *****
*
**
* VA9444** AM???C
* **
**
***** *****
yosa 1416-
wytyvyweriusANA
wory -v*wwv
****
** ************ **
**
. ARTAA
,+++
*
*
*
****
*
*
*
*
**WA
www .uy
p
W
AAAwitch V

4210
-- - - - - - - - - -
Enter your
User Name: | hsmi name
L - - - irl " - - - - - - - - - - -
4215
Name:
--
Incoming Server : -

-
www ~ ~ ~ ~ ~ www ------ ~ ~ ~ ~ ~ ~w ww ~
4220
J
- - - - - - - - - - - - - - - - - - - - - - - - - - -

IMAP
IMAP Y
4225
POP 4230

4235
SMTP Server: - -- - - - - - - - - - - - - - - - - - - - - - - -

OK Cancel
4510 4512

eten en
Button
2140
Button
2142
Button
2144

4810

FIG . 41
U . S . Patent Sep. 12 , 2017 Sheet 14 of 45 US 9 ,760, 385 B2

4422
-2000
2130 2120

Drejtor
Y

ini En ciri16)1974) www*.***7010 we esiva inm


tretci
4 *

Voice BuswiminimoFO71406 Artimi


***WEG * ***
*** *
*
oriewer rit **
* **** ******** o **
w er
*****

*47 iwwers
)05409 prin
* *
*** ***
www Weather
. 666
t
***
*** 14
***** .
*
016
* (6
)**** * ***
****
*******in
*
***
**
**

6147957914010769enocente
* ****** 960014
wat
***************
****
**
*

*
*
*
**
*************Prir****36010*
******
vitre)1974********
***** kiwiwiti
***
t 17677***
* 1419*)***Tervie09
**priv *****

19746
- *
weiny
**********
*****
67+)4 ****
1434** VO** ***** ***
**
*** 0614***
or Vio 1 O CA

Austin , TX
Day Forecast
Thu Partly chem
Fri Mostly Suns ACEASTA
W
NAR. 11115
H
AT
**
.Venit Hi/Low
64100F
74162°F
Preceip .
10 %
20 %
ni
i

4424

Amassasitat9219197 78/68°F
in
AL1414
Sat Cloudy retten
135412tr!** 119
10 %

Weather Location Alerts


Weather Locations Alerts Maps

Button Button Button


2140 2142 2144

www.4810

FIG . 4J
U . S . Patent Sep. 12, 2017 Sheet 15 of 45 US 9, 760 ,385 B2

** #
5010 CCD
1112

FIG. 5A
Network
1010
#
Merchant CD
5114

“ R - all
Storage
5010 5121
CCD CS
1112 Network 5210 CFG
1010 5310

FIG 5B

“? )
Warehouse
Physical delivery 5115 5140
5010 CD
2000
CD
2001
CD
2002
FIG . 5C
U . S . Patent Sep.12, 2017 Sheet 16 of 45 US 9 , 760 ,385 B2

5030 Physical delivery 5115


CD
2000

FIG . 5D
-5010 CD Storage
2000 Network 5210 5121
| 1010 CFG
CFG - -- - - - ?? t ? lit
5310
530

FIG . 5E

Warehouse
5140 CS
CD
5210
2001 CFG
5310
CD
5010 Physical delivery 5115 2000
>
> CFG
5310

2002
FIG. 5F
as reate man amounts (02 )
U . S . Patent Sep.12, 2017 Sheet 17 of 45 US 9 , 760 ,385 B2

“ ?
Physicaldelivery 5115
5010 CD
2000
CFG
5310

FIG . 5G

CCD 1112
Network Merchant CD
CFG
… …
| 1010 15114
5310 >~ ~
…4
5010 Storage
MD5510 5121
? CS CFG
CFG 5210 5310
5310

FIG . 5H
U . S . Patent Sep. 12 , 2017 Sheet 18 of 45 US 9 ,760, 385 B2

20000
5010

FIG . 51

2000
5010

FIG . 5J
U . S . Patent Sep . 12 , 2017 Sheet 19 of 45 US 9,760,385 B2

Receive a request for a Store a configuration


computing device based on the received
5610 data
inimiin
5690

04
Request an emulator
5620 Receive user input
indicating a delivery
method
5700
Receive the emulator
allocation request
5630
Determine
a method ofproviding
Allocate the emulator the configuration
5640 5710

Network Physical
Emulate the computing
device
5650
Provide the Configure the physical
configuration to the computing device with
Receive data via a user via the network the configuration
network 5720 5730
5660

Provide the physical


Provide the data to the computing device to a
emulator physical delivery
5670 service
5740
Create a configuration
based on the received
data
5680
FIG . 5K
U . S . Patent Sep. 12 , 2017 Sheet 20 of 45 US 9,760,385 B2

- 3050 6010
Media Interface 3040
6050

6020

Calculator Clock
6040 6041
Calendar Web
6042 6043
Video Chat Settings
6044 6045
Video Player
6046

6030 6031 6032

FIG . 6A
U . S . Patent Sep. 12 , 2017 Sheet 21 of 45 US 9 ,760, 385 B2

-- 3050
6010
Media Interface 3040

VIDEO CHAT
6140 FrontFacing Camera
6020

6142

6141

6030
6031
6032

FIG . 6B
U . S . Patent Sep. 12 , 2017 Sheet 22 of 45 US 9 ,760, 385 B2

- 3050
6010

Media Interface 3040

6020

6250

4G LTE
10x Faster Than 3G

60307 6031 6032


FIG . 6C
U . S . Patent Sep. 12 , 2017 Sheet 23 of 45 US 9 ,760, 385 B2

30506010
- 6050 6310
Media Interface 3040

017 ww

6320
Calculator Clock
6040 6041

Calendar Web
6042 6043
Video Chat Settings 6020
6044 6045

6030 60311 6032

FIG . 6D
US. Patent _ Ser0. 12, 2017 Sheet 24 Of 45 US 9,760, 385 B2

c $ 5210
Server App 6410 Server App 641 1
Storage
Emulator 6420 6120 Emulator 6423
Emitulator 6421 Emulator6424
Server APP
{ controller ) Emulator 6425
Ermulator6422 6440
Emulator proxy
Emulator proxy 6435
6430 API Server

3 App
6450
Emulator proxy
6434
Emulator proxy
6433

MD Storage
6f10 Network 6122 Storage
1010 6121
MD MD
6111 61 12

Media Media Media


Interface Interface Interface
6541 6542 6543
Interactive Media Interactive Media Interactive Media
interface63031 Interface63032 Interface63033
Client Interface Client Interface Client Interface
6302 ? 63022 63023
CCD 1113 CCD 1112 CCD 1413

FIG. 6E
U . S . Patent Sep. 12 , 2017 Sheet 25 of 45 US 9 ,760, 385 B2

Receive the second request


Receive a first 6710
request from CCD
6610
Provide an emulator allocation
request to an emulator server
APP
6720
Provide a second
request to another Provide an emulator Receive response from
server APP allocation request to the emulator server APP
6620 other emulator server APP 6730
6760

Receive address Determine


information from if the response from the
the other server Determine another emulator server APP
APP emulator server APP indicates that an emulator
6630 6750 has been allocated
6740
Yes

Provide the
address
information to the Determine address
CCD information associated with
6640 one or more of an emulator
and an emulator proxy
6770
FIG . 6F
Provide the address
information to the API server
APP
6780

FIG . 6G
U . S . Patent Sep. 12 , 2017 Sheet 26 of 45 US 9 ,760, 385 B2

Receive an emulator allocation Receive, via a network , first


request information associated with a
6810 first network address
6982

Determine
if an emulator can Receive, via the network ,
be allocated second information associated
6820 with a second network address
6984
No Yes

Provide a response that Provide third information ,


indicates that an emulatorhas associated with the first
not been allocated network address , to the
6830 network
6986
Allocate an emulator
6840
Provide fourth information ,
associated with the second
network address, to the
Provide a response that network
indicates that an emulator has 6988
been allocated
6850
FIG . 6J
Couple I/O of allocated
emulator to an emulator proxy
6860

FIG . OH
U . S . Patent Sep.12, 2017 Sheet 27 of 45 US 9 , 760 ,385 B2

Determine functionality
6910
Determine
a source of the input
data
Receive emulation interface 6960
instructions and emulation from
interface data user
6920
from
emulator

Configure user interface


6930 Display information to user and/
or produce sounds
6970

Display information to
customer via user interface
6940 Provide user input data to
emulator
6980
Couple with emulator
6950

Receive input data


6960

| FIG.6T
U . S . Patent Sep . 12, 2017 Sheet 28 of 45 US 9 ,760, 385 B2

7150
.
- 7120 7130
5510
-

714 m
QQQ 7140m 7142

-----
como
as

----- 7242 w
movie
aming
.m

7612 7230 724


mine720

HO

7610m 7614 7616


®

7240
o th 7IMnet5dr4fia0ce 7IMnte5rda3cfit0ave 7ICnlt5ier2fna0cte
7A
.
FIG
U . S . Patent Sep. 12 , 2017 Sheet 29 of 45 US 9 ,760, 385 B2

7120 7130
5510
7144
7142nd
- 7140m
--- - conde
ticontent
nen content
consewent
--
--
-
7620 76127752 724
--

w7an2e 0r
7B
.
FIG
@ ' lo
oo 7IMnet5dr4fia0ce 7IMnte5rda3cfit0ave 7520ICnltierfnacte

| WWWWWWWWWWWWWWWWWW

7610m 7614
7616
7240
U . S . Patent Sep . 12 , 2017 Sheet 30 of 45 US 9,760,385 B2

CD 7811
Display
7840
Network Processor
interface 7810
7880 Speaker
7850

Microphone
7860
Camera
7870

Memory medium 7820


APP 7830 MDD 7837
APP 7831 Client App
SIP /VoIP proxy
7222
7821
APP 7832
or where - - - - - SMS proxy
OS 7835 7223
Emulator 6422
CFG 5310
MDD 7838
| ED 7836

FIG . 7C
U . S . Patent Sep. 12, 2017 Sheet 31 of 45 US 9 ,760, 385 B2

99
CD 7811
Camera

Network
7870
Microphone
7860
Display
7840

E Speaker
7850

interface Processor
7880 7810

Memory medium 7820


APP 7830 MDD 7837 SP / IP proxy
7222
APP 7831
ClientApp
7821 SMS proxy
APP 7832 7223
OS 7835 Emulator 6422
CFG 5310
w wwtell

MDD 7838
ED 7836 V

FIG . 7D
U . S . Patent Sep. 12 , 2017 Sheet 32 of 45 US 9 ,760, 385 B2

wa
CS 5210
Network
1010 Storage 6120
MD
6110 MDD 8110

FIG . 8

ola
CS 5210
Network
1010 Storage 6121
6111 MDD 8111
R
FIGFIG .. 99
CS 5210
Network
1010
MD
6112 A ~ www3

MDD 8112
Storage 6122

FIG . 10
U . S . Patent Sep. 12, 2017 Sheet 33 of 45 US 9, 760 , 385 B2

E
Cs 5210
Network
1010 Storage620
MD
6130 DD 8130

FIG. 11

s
CS 5210
Network
10 { } Storage 612
MD
6311 MDD 8 { { {

FIGFIG.. 1212 .
cS 5210

D
6112
Network
1030

| MOD 8112
w
Storage 6120

FIG . 13
U . S . Patent Sep. 12 , 2017 Sheet 34 of 45 US 9 ,760, 385 B2

Storage 6121
MDD 8111

CS 5210

Storage 6120
Emulator 6423
MDD 8110

Emulator 6422

Emulator 6424

Network
1010
MDD 8112
Storage 6122

FIG . 14
U . S . Patent Sep . 12 , 2017 Sheet 35 of 45 US 9 ,760 , 385 B2

BE
Local CS 15011
LAN
15010 Storage 15510
MD
6110 MDD 8110

FIG . 15

2012
Local CS 15011
LAN
15010 Storage 15511
MD
6111 MDD 8111

FIG . 16

Local CS 15011
LAN
15010
MD wowote
6112
wwwwww w ww - wm om

MDD 8112
Storage 15512

FIG . 17
U . S . Patent Sep . 12 , 2017 Sheet 36 of 45 US 9 ,760 , 385 B2

BOË
LocalCS 15011
LAN
15010 Storage 15510
MD
6110 MDD 8110

FIG . 18

cela
Local CS 15011
LAN
15010 Storage 15511
MD
6111 + + + - - www when tw im www .
MDD 8111

FIG . 19
Local CS 15011
LAN
15010
MD
6112 - www . -

MDD 8112
Storage 15512

FIG . 20
U . S . Patent Sep. 12, 2017 Sheet 37 of 45 US 9 ,760, 385 B2

CS 5210

-L - - - -

i MDD 8110 ii MDD 8111

Network
1010
ens
moeten
wont
way
to

mensen
som
warna
merawat
more
worn

t
mensen
met
een
wone
me

een
moment
en

MDD 8110 Storage 15511


Storage 15510 MDD 8111

Local CS 15011

FIG . 21
U . S . Patent Sep. 12 , 2017 Sheet 38 of 45 US 9 ,760, 385 B2

CS 5210

-
1

1
MDD 8112
-

Network
w
1010
w

LAN
15010

MDD 8112
Storage 15512

FIG . 22
U .S . Patent Sep. 12 , 2017 Sheet 39 of 45 US 9 ,760, 385 B2

Local CS 15011 Storage 15510


MDD 8110

Client App Emulator 6422 SMS proxy


23230 23220

SIPNOP proxy
23210

out Network
1010

FIG . 23
SIP gateway
23110

SMS gateway
23120

CS 5210
Network
Memory medium 25020 interface
25040
APP 25030 MOD 8110 SIP /VOIP proxy Emulator 6422
24210
APP 25031 MDD 8111 Emulator6423 Processor
SMS proxy 25010
APP 25032 MDD 8112 24220 Emulator 6424
OS 25035

FIG . 25
nt Sep . 12 , 2017 Sheet 40 of 45 US 9,760 ,385 B2

CS 5210 Storage 6121


Emulator 6423
MDD 8111
Storage 6120
Client app
MDD 8110 24230
Media
SMS proxy Interface
24220 6541
Emulator6422
Interactive Media
Interface 63031
SIP /VOIP proxy Emulator 6424 Client Interface
24210 63021
CCD 1111

SIP gateway Network


24110 1010
MDD 8112
SMS gateway Storage 6122
24120
in in
Media Media
Interface Interface
6542 6543 n

Interactive Media Interactive Media


Interface 63032
Client Interface
63022
CCD 1112
Interface 63033
Client Interface
63023
CCD 1113
n
FIG . 24
nt Sep . 12 , 2017 Sheet 41 of 45 US 9,760 ,385 B2

CS receives one or more MD receives one ormore


portions of MDD associated portions of MDD
with a MD 27010
26010

CS stores the one or more MD stores the one or more


portions of theMDD portions of the MDD
associated with the MD 27020
26020

FIG . 26 FIG . 27

Receive a first telecommunications Receive a first telecommunications signal


signal
28010 29010

Transform the first telecommunications Transform the first telecommunications


signalinto a second telecommunications signal into a second telecommunications
signal signal
28020 29020

Provide the second telecommunications


signal Provide the second telecommunications
to an emulator signal to a telecommunications gateway
28030 29030

FIG . 28 FIG . 29
U . S . Patent Sep . 12 , 2017 Sheet 42 of 45 US 9,760 ,385 B2

Emulator receives an invite Emulator provides , to the


from a telecommunications telecommunicationsnetwork ,
network a signal that indicates the
30010 user has answered
00000000 0
30060

Emulator receives an
Emulator provides , to the acknowledgement from the
telecommunications network , telecommunications network
a signal that indicates it is 30070
trying to summon a user
30020
Emulator exchanges data
(e.g., RTP data ) with the
telecommunications network
Emulator provides an 30080
indication of an incoming
telephone call to the user
30030 Emulator receives user input
indicating that the telephone
call is to be ended
30090
Emulator provides , to the
telecommunicationsnetwork ,
a signal that indicates it is
providing the indication of the Emulator provides a BYE
incoming telephone call to request to the
the user telecommunications network
30040 30100

Emulator receives user input Emulator receives an OK


indicating that the telephone acknowledgement from the
call is to be answered telecommunications network
30050 30110

FIG . 30
U . S . Patent Sep. 12 , 2017 Sheet 43 of 45 US 9,760,385 B2

Emulator receives, from a first user, user Emulator receives , from the
input associated with an identification telecommunications network , a signal
associated with an endpoint of a that indicates the second user has
telecommunications network answered
31010 31060

Emulator provides, to a Emulator provides an


telecommunications network , a signal acknowledgement to the
that indicates the identification telecommunications network
associated with the endpoint of the 31070
telecommunications network
31020
Emulator exchanges data (e .g., RTP
Emulator provides, to the data ) with the telecommunications
network
telecommunicationsnetwork , an invite
*

31080
31030
*

Emulator receives user input, from the


Emulator receives, from the first user, indicating that the telephone
telecommunications network , a signal call is to be ended
that indicates the endpoint is trying to 31090
summon a second user
31040

Emulator provides a BYE request to


Emulator receives, from the the telecommunications network
telecommunications network , a signal 31100
that indicates the endpoint is providing
an indication of an incoming telephone
call to the second user
31050 Emulator receives an OK
acknowledgement from the
telecommunications network
31110

FIG . 31
U . S . Patent Sep . 12, 2017 Sheet44 of 45 US 9 , 760 ,385 B2

CS 5210
20 | Fanterne2)
Emulator 6421

? ||
Emulator 6420 Eindator 6422
CFG CFG
32310 5310

“?? )
5010 MID 32112
CFG
32310

FIG . 32
Network
1010

CS 5230 CFG
Emulator6421 - - - - - - - ?
32310
Storage Storage
6120 Ermulator 6420 Emailator 6422 6121
CFG CFG CFG
32310 32310 5310

? )
Storage
6122 Network
| 1010
CFG
32310

FIG . 33
U . S . Patent Sep . 12 , 2017 Sheet 45 of 45 US 9 ,760, 385 B2

Concurrently emulate Provide, based on the


two or more physical network identifier, the
mobile devices received data to the
34010 second emulated
mobile device
34060
Receive a first
configuration
34020 Create a second
configuration
wwwwwwww
34070
Configure the first
emulated device with
the first configuration Store the second
34030 configuration based on
the received data
34080
Emulating a coupling
of the first emulated
mobile device with a Receive user input
second emulated indicating a delivery
mobile device method
34040 34090 Configure the second
physical computing
device with the second :

Physical configuration
Receive , from a user Determine 34120
via a network , data a method of providing
associated with a the configuration
network identifier 34100
34050 Network Provide the second
physical computing
device to a physical
delivery service
Provide the second 34130
configuration to the
user via the network
34110

FIG . 34
US 9 , 760,385 B2
CONCURRENT EMULATION OF MULTIPLE FIG . 1 provides an exemplary block diagram of a network
DEVICES communications system , according to one or more embodi
ments ;
PRIORITY CLAIM FIG . 2A provides an exemplary block diagram of a
5 hardware and software stack of a computing device, accord
This application claims priority to U .S . Provisional Appli - ing to one or more embodiments ;
cation Ser. No . 61/ 905 ,608 , filed 18 Nov. 2013 , titled FIGS. 2B -2F provide exemplary block diagrams of a
“ METHODS AND SYSTEMS OF OPERATING COM - computing device, according to one or more embodiments ;
PUTING DEVICE ” . Each of U . S . Provisional Application FIG . 3A illustrates an exemplary client interface, accord
Ser. No . 61/ 905 ,608 , filed 18 Nov . 2013 , titled “METHODS " ing to one or more embodiments ;
AND SYSTEMS OF OPERATING COMPUTING FIG . 3B provides an exemplary method of an application
DEVICE ” , U .S . application Ser. No . 13/601, 537 , filed 31 walk - through , according to one or more embodiments ;
Aug. 2013 , titled “Methods and Systems of Providing Items FIG . 3C provides another exemplary method of an appli
to a Customer Via a Network” , U .S . application Ser. No. 15 cation walk - through , according to one or more embodi
13 /428, 128 , filed 23 Mar. 2012, titled “ Methods And Sys - ments ;
tems Of Providing Items To Customers Via a Network ” , and FIG . 3D provides an exemplary method of operating an
U .S . Provisional Application Ser. No. 61/627 , 349 , filed 11 application manager, according to one or more embodi
Oct . 2011 , titled “Methods and Systems of Providing Items ments;
to Customers via a Network ” is hereby incorporated by 20 FIG . 4A provides a conceptual illustration of a transparent
reference in its entirety as though fully and completely set layer over a user interface , according to one or more
forth herein . embodiments;
FIGS. 4B and 4C provide conceptual illustrations of a
CROSS -REFERENCE TO RELATED transparent layer with a beacon over a user interface , accord
APPLICATION 25 ing to one or more embodiments;
FIG . 4D provides a conceptual illustration of a transparent
The present application is related to the following com layer with a user selecting an area of a user interface
monly assigned , co -pending U .S . patent application (s) filed indicated by a beacon , according to one or more embodi
on even date herewith , with all content incorporated herein ments ;
by reference: 30
30 ET
FIG . 4E provides an illustration of a computing device
U . S . patent application Ser. No . 14 / 5646 , 922 , titled with a user selecting an area of a user interface indicated by
“ Methods and Systems of Operating Computing Device." a beacon , according to one or more embodiments ;
BACKGROUND FIG . 4F provides an illustration of a media interface with
25 a pointing device selecting an area of a user interface
1 . Technical Field indicated by a beacon , according to one or more embodi
This disclosure relates generally to the field of assisting ments ;
FIG . 4G provides an illustration of a first application that
users in configuring computing devices.
2 . Description of the Related Art indicates an action to be performed via a second application ,
In the past, users of computing devices read manuals , 40 according to one or more embodiments ;
watched instructional videos, and /or received help from FIG . 4H provides a conceptual illustration of a transparent
customer service representatives to learn how to configure layer of a first application that indicates an action to be
their computing devices . In one example , these manuals and performed via a second application , according to one or
videos are often difficult for some, if not most, users to more embodiments;
utilize in configuring their computing devices. In another 45 FIG . 41 provides another illustration of a first application
example, help from customer service representatives often that indicates an action to be performed via a second
cannotbe referred to at a later time (e.g ., after receiving help application, according to one or more embodiments ;
from customer service representatives ). This can pose issues FIG . 4J provides an illustration of a first application that
of customer satisfaction and/ or additional cost in providing indicates a swipe action to be performed via a second
customer service representatives . 50 application , according to one or more embodiments ;
Moreover, in the past, a user/ customer could order a FIGS. 5A -5G provide exemplary diagrams of ordering
mobile device, such as a wireless telephone, and would have and configuring a computing device , according to one or
to wait until the mobile device was physically delivered to more embodiments ;
the user /customer before the user /customer could configure FIG . 5H illustrates an exemplary diagram of delivering a
the mobile device. For example , the user/customer would 55 mobile device configuration , according to one or more
have to wait until physical delivery of the mobile device embodiments ;
before purchasing applications (APPs), arranging applica - FIGS. 51 and 5J illustrate exemplary diagrams of a
tion (APP ) icons to be displayed via the mobile device , wearable computing device , according to one or more
configuring an address book APP, configuring a weather embodiments ;
APP, and /or configuring an electronic mail APP, among 60 FIG . 5K illustrates a method of creating a configuration of
others . a computing device and delivering the configuration is
illustrated , according to one or more embodiments ;
BRIEF DESCRIPTION OF THE DRAWINGS FIGS. 6A -6C provide exemplary diagrams of a simulated
object, according to one or more embodiments ;
The preferred embodiments will become apparent upon 65 FIG . 6D illustrates an exemplary diagram of a simulated
reading the following detailed description and upon refer - object with operational aids , according to one or more
ence to the accompanying drawings in which : embodiments ;
US 9, 760 ,385 B2
FIG . 6E illustrates an exemplary system that supports FIG . 29 provides another exemplary method of transform
physical device emulation , according to one or more ing telecommunications signals , according to one or more
embodiments ; embodiments ;
FIG . 6F provides an exemplary method of operating an FIG . 30 provides an exemplary method of utilizing an
application programming interface server application , 5 emulator, according to one or more embodiments ;
according to one or more embodiments ; FIG . 31 provides another exemplary method of utilizing
FIG . 6G provides an exemplary method of operatinga an emulator, according to one or more embodiments ;
server application , according to one or more embodiments ; FIGS. 32 and 33 illustrate exemplary block diagrams of
FIG . 6H provides an exemplary method of operating an emulators coupled together, according to one or more
emulator server application , according to one oror more
more 10 embodiments ; and
FIG . 34 provides an exemplary method of emulating two
embodiments ; or more coupled mobile devices , according to one or more
FIG . 61 provides an exemplary method of operating a
client that can interact with an emulator, according to one or embodiments.
more embodiments ;
While one or more embodiments may be susceptible to
15 various modifications and alternative forms, specific
FIG . 6J provides an exemplary method of providing embodiments thereof are shown by way of example in the
multiple simulated objects to multiple customer computing drawings and will herein be described in detail . It should be
devices , according to one or more embodiments ; understood , however, that the drawings and detailed descrip
FIG . 7A illustrates an exemplary mobile device that tion thereto are not intended to limit the disclosure to the
emulates a physical device, according to one or more 20 particular form disclosed , but on the contrary, the disclosure
embodiments ; is to cover all modifications, equivalents and alternatives
FIG . 7B illustrates an exemplary mobile device that falling within the spirit and scope of this disclosure .
emulates a physical device , where a transparent layer with a
beacon over a user interface directs user input, according to DETAILED DESCRIPTION
one or more embodiments ; 25
FIGS. 7C and 7D provide exemplary diagrams of a In one or more embodiments , a system can configure a
computing device , according to one or more embodiments ; physical mobile device via configuring a configuration for
FIGS . 8 - 10 illustrate exemplary network systems that an emulator of the physical mobile device . For example , a
supports storage of data and configurations of physical user ( e .g ., a customer ) can request a physical mobile device ,
mobile devices , according to one or more embodiments ; 30 and a system can provide the user with an emulation of the
FIGS. 11 - 13 illustrate exemplary network systems that physical mobile device , where the user can configure the
support recovery and/or restoration of data and configura - emulation of the physical mobile device . In one or more
tions of physicalmobile devices, according to one or more embodiments , the user can be provided with the configura
embodiments ; tion via at least one of a network and a physical delivery of
FIG . 14 illustrates an exemplary system that supports 35 the physical mobile device, configured with the configura
installation of data and configurations of one or more tion . In one example, the user can execute an emulation of
physical mobile devices to one or more respective emula - the physical mobile device configured with the configura
tors , according to one or more embodiments ; tion , received via the network . In another example, the
FIGS . 15 - 17 illustrate exemplary local area network sys - physical mobile device can be configured with the configu
tems that support storage of data and configurations of 40 ration , and subsequently, the physicalmobile device can be
physical mobile devices, according to one or more embodi- physically delivered to the user.
ments ; In one or more embodiments, a user/ customer can utilize
FIGS . 18 - 20 illustrate exemplary local network systems a first mobile device and shop for a second mobile device
that support recovery and /or restoration of data and con - that will be utilized with the first mobile device. For
figurations of physical mobile devices, according to one or 45 example , the first mobile device can be or include one or
more embodiments ; more of a wireless telephone , a personal digital assistant ,
FIGS. 21 and 22 illustrate exemplary systems that support and a digital music player, among others, and the second
storage of data and configurations of physical mobile mobile device can be or include a watch ( e . g ., a smart
devices , according to one or more embodiments ; watch ), among others . In one or more embodiments , the first
FIG . 23 illustrates an exemplary local network system 50 and second physical mobile devices can be emulated . For
that supports installation of data and configurations and example , the first and second physicalmobile devices can be
utilization of an emulator, according to one or more embodi emulated to configure the second mobile device . In one
ments ; instance , an emulated coupling of the first mobile device
FIG . 24 illustrates an exemplary system that supports with the second mobile device can include a wireless
installation of data and configurations and utilization of 55 emulated coupling . In another instance , an emulated cou
multiple emulators , according to one or more embodiments ; pling of the first mobile device with the second mobile
FIG . 25 illustrates an exemplary computing system , device can include a wired emulated coupling. After the
according to one or more embodiments ; second mobile device is configured , a configuration of the
FIG . 26 provides an exemplary method of a computer second mobile device can be provided to the user via a
system receiving and storing mobile device data , according 60 network , and / or the second mobile device , configured with
to one or more embodiments ; the configuration , can be provided to the user via a physical
FIG . 27 provides an exemplary method of a mobile device delivery service , according to one or more embodiments.
receiving and storing mobile device data , according to one In one or more embodiments , a user can be provided with
or more embodiments ; a walk -through and / or tutorial that can be utilized to con
FIG . 28 provides an exemplary method of transforming 65 figure a mobile device . For example , a first application can
telecommunications signals , according to one or more provide a walk - through and / or tutorial of a second applica
embodiments ; tion . In one or more embodiments, the first application can
US 9 ,760, 385 B2
implement a conceptual transparent layer of a display of the onstrate one or more features and /or operations of an object
mobile device, where the first application can provide mes for sale or of an object for which service is desired by the
sages and /or can indicate actions that could and /or should be customer.
taken by a user. In one example, the first application can Turning now to FIG . 2A , an exemplary block diagram of
provide messages to configure a mail application . In another 5 a hardware and software stack of a computing device is
example , the first application can provide an indication that illustrated , according to one or more embodiments . As
a “ swipe” can be performed with a second application . For shown, hardware 2110 can interface with a kernel 2210 that
instance , the swipe can reveal additional information pro - can interface with an application ( APP ) manager 2310 . As
vided by the second application and /or change displayed illustrated , applications (APPs) can interface with APP
information . 10 manager 2310 . In one or more embodiments, APP manager
Turning now to FIG . 1 , a block diagram of a network 2310 can include a window manager that can provide and/or
communication system is illustrated , according to one or implement an application programming interface (API) of
more embodiments . As illustrated , one or more customer and / or for a graphical user interface (GUI) framework .
computing devices (CCDs) 1110 - 1114 can be coupled to a As shown, hardware 2110 can include one or more of a
network 1010 . In one or more embodiments, network 1010 15 processor 2010 , a memory medium 2117 , a display 2120 , a
can include one or more of a wireless network and a wired touch screen 2130 , a button 2140, a button 2142, a button
network . Network 1010 can be coupled to one or more types 2144 , a transceiver 2150 ( e .g ., a wireless Ethernet trans
of communications networks, such as one or more of a ceiver, a WiFi transceiver, etc .), a transceiver 2152 ( e . g ., a
public switched telephone network (PSTN ), a public wide wireless telephone transceiver , a cellular telephone network
area network ( e . g ., an Internet ), a private wide area network , 20 transceiver, a satellite telephone network transceiver, etc .) ,
and a local area network , among others. In one example , and a serial interface 2160 (e . g ., a universal serial bus (USB )
network 1010 can be or include an Internet . In another interface , a FireWire interface , a wired Ethernet interface , a
example , network 1010 can form part of an Internet. In one RS - 232 interface , a Thunderbolt interface , etc. ), among
or more embodiments , one or more of CCDs 1110 - 1114 can others . As illustrated , kernel 2210 can include one or more
be coupled to network 1010 via a wired communication 25 of a display driver (DRV ) 2220, a touch screen DRV 2230 ,
coupling and /or a wireless communication coupling. In one a button DRV 2240 , a transceiver DRV 2250 , a transceiver
example , a customer computer device (CCD ) can be coupled DRV 2252 , a serial interface DRV 2260 , a scheduler 2270 ,
to network 1010 via wired Ethernet, a DSL (digital sub - and a queue 2280 , among others.
scriber loop ) modem , or a cable (television ) modem , among In one ormore embodiments, a driver of kernel 2210 can
others . In another example , a CCD can be coupled to 30 include instructions executable by processor 2010 to inter
network 1010 via wireless Ethernet ( e . g ., WiFi ), a satellite face with a hardware unit of hardware 2110 . For example ,
communication coupling , a cellular telephone coupling, or drivers 2220- 2260 can respectively include instructions
WiMax , among others. executable by processor 2010 to interface with respective
As shown, one or more media servers 1210 - 1212 can be hardware units 2120 -2160 . In one or more embodiments,
coupled to network 1010 , and media servers 1210 - 1212 can 35 one ormore of drivers 2220 - 2260 can provide data to queue
include media server interfaces 1220 - 1222 , respectively . As 2280 . In one example , touch screen DRV 2230 can provide
illustrated , media servers 1210 and 1211 can be coupled to data associated with one or more of coordinates, a hold , and
databases 1230 and 1231, and media server 1212 can include a swipe , among others, of touch screen 2230 to queue 2280 .
a database (DB ) 1232 . In one example , DB 1230 can be or In another example , button DRV 2240 can provide data
include an Oracle database . In a second example , DB 1231 40 associated with an actuation of one or more of buttons
can be or include a Microsoft SQL Server database . In 2140 - 2144 to queue 2280 . In one or more embodiments ,
another example, DB 1232 can be or include a MySQL queue 2280 can include one or more queues . For example ,
database or a PostgreSQL database . queue 2280 can include one or more of an event queue and
In one or more embodiments, one or more ofmedia server a work queue , among others.
interfaces 1220 - 1222 can provide one or more computer 45 In one or more embodiments, scheduler 2270 can sched
system interfaces to one or more of CCDs 1110 -1114 . In one ule time that processes and / or threads can utilize a processor
example , media server interface 1220 can include a web unit. For example , scheduler 2270 can schedule time that
server. In another example , media server interface 1221 can one or more of kernel 2210 , APP manager 2310 , and APPs
include a server that interacts with a client application of a 2420 -2426 can utilize processor 2010 .
CCD . In one instance , the client application can include a 50 In one ormore embodiments, scheduler 2270 can dequeue
" smart phone ” application . In a second instance , the client data from queue 2280 and provide the dequeued data to APP
application can include a tablet computing device applica - manager 2310 . For example , the data dequeued from queue
tion . In another instance , the client application can include 2280 can be queued in queue 2380 . In one instance , data
a computing device application (e. g., an application for a associated with one or more of coordinates, a hold , and a
desktop or laptop computing device ). 55 swipe, among others , of touch screen 2230 can be queued in
As illustrated , one or more customer service devices queue 2380 . In another instance , data associated with an
(CSDs) 1310 - 1312 can be coupled to network 1010 . In one actuation of one or more of buttons 2140- 2144 can be
or more embodiments , a service representative ( e . g ., a queued in queue 2380 .
customer service representative of a retail establishment, a In one or more embodiments, scheduler 2270 can process
service representative of a service provider, etc. ) can utilize 60 work of a work queue of queue 2280 . For example , a driver
a customer service device (CSD ) to interact with a customer ofkernel 2210 can queue work in queue 2280 , and scheduler
utilizing a CCD . For example , the service representative can 2270 can process work queued in queue 2280 . For instance,
utilize the CSD to provide information to the customer via work in queue 2280 can include first data and a correspond
the CCD . In one instance , the service representative can ing first function ( e. g ., a subroutine) that processes the first
utilize the CSD to conduct one ormore of a video chat, a text 65 data .
chat, and an audio chat. In a second instance, the service In one or more embodiments , APP manager 2310 can
representative can utilize the CSD to illustrate and /or dem - provide data to one or more of APPs 2420 - 2426 . For
US 9, 760 ,385 B2
example , APP manager 2310 can provide event data to one operation system (OS ) 2035 . For instance , one or more APPs
or more of APPs 2420 - 2426 . In one or more embodiments , 2030 - 2032 and / or an OS 2035 can include instructions of an
APP manager 2310 can retrieve data from kernel 2210 via instruction set architecture ( ISA ) associated with processor
a file system 2280 of kernel 2210. For example , APP 2010 . In one ormore embodiments, CD 2000 can be coupled
manager 2310 can access one or more pseudo files ( e . g ., 5 to and /or include one or more of a display, a keyboard , and
" device files” , files in /dev , files in /dev/ input, files in /proc , a pointing device ( e .g ., a mouse , a track ball , a track pad, a
etc .) to retrieve and /or obtain data that can be provided to stylus, etc .) . In one ormore embodiments , a touch screen can
one or more of APPs 2420 - 2426 . function as a pointing device . In one example, the touch
In one or more embodiments, APP manager 2310 can screen can determine a position via one or more pressure
implement and / or maintain identifications ( IDs) associated 10 sensors. In another example , the touch screen can determine
with respective APPs. In one example, APP manager 2310 a position via one or more capacitive sensors .
can implement and/or maintain first data associated with a As illustrated , CD 2000 can include one ormore network
first APP via a first APP identification (ID ). In another interfaces 2040 and 2041. In one example , network interface
example , APP manager 2310 can implementand/or maintain 2040 can interface with a wired network coupling, such as
second data associated with a second APP via a second APP 15 a wired Ethernet, a T- 1 , a DSL modem , a PSTN , or a cable
ID . modem , among others . In another example , network inter
In one or more embodiments, APP manager 2310 can face 2041 can interface with a wireless network coupling,
implement and /or maintain callbacks associated with such as a satellite telephone system , a cellular telephone
respective APPs. In one example , a first APP can register a system , WiMax , WiFi, or wireless Ethernet, among others .
first callback ( e .g ., instructions executable by processor 20 In one or more embodiments, CD 2000 can be any of
2010 ) with APP manager 2310 , and APP manager 2310 can various types of devices, including a computer system , a
execute the first callback with first data , associated with the server computer system , a laptop computer system , a note
first APP, as parameter passed to the first callback . In a book computing device, a portable computer, a PDA, a
second example , a second APP can register a second call- handheld mobile computing device , a mobile wireless tele
back (e . g ., instructions executable by processor 2010 ) with 25 phone (e . g ., a satellite telephone , a cellular telephone , etc .),
APP manager 2310, and APP manager 2310 can execute the an Internet appliance, a television device, a DVD (digital
second callback with second data , associated with the sec - video disc player ) device, a Blu -Ray disc player device, a
ond APP, as parameter passed to the second callback . In DVR ( digital video recorder ) device , a wearable computing
another example , data queued in queue 2380 can be pro - device , or other wireless or wired device that includes a
vided to one or more APPs via one or more respective 30 processor that executes instructions from a memory
callbacks . In one instance , one or more of coordinates, a medium . In one or more embodiments, processor 2010 can
hold , and a swipe , among others , of touch screen 2230 can include one or more cores . For example , each core of
be provided to an APP via its callback ( s ). In another processor 2010 can implement an ISA . In one instance, two
instance , data associated with an actuation of one or more of or more cores of processor 2010 can implement a same ISA .
buttons 2140 -2144 can be provided to an APP via its 35 In another instance , two or more cores of processor 2010 can
callback (s ). implement different instruction set architectures (ISAs). In
Turning now to FIG . 2B , an exemplary computing device one or more embodiments , one or more of CCDs 1110 - 1114 ,
is illustrated , according to one or more embodiments . As media servers 1210 - 1212 , databases 1230 and 1231 , and
shown , a computing device (CD ) 2000 can include one or CSDs 1310 - 1312 can include one or more same or similar
more of processor 2010 and one or more ofmemory medium 40 structures and/ or functionalities described with reference to
2117 , display 2120, touch screen 2130 , button 2140 , button CD 2000 .
2142 , button 2146 , transceiver 2150, transceiver 2152, and Turning now to FIG . 2D , a computing device is illus
serial interface 2160 , among others, coupled to processor trated , according to one or more embodiments . As shown ,
2010 . As illustrated , memory medium 2117 can include CD 2000 can include a field programmable gate array
and/ or store one or more of kernel 2210 , APP manager 2310 , 45 (FPGA ) 2012 coupled to memory medium 2020 . In one or
APP 2420 , APP 2422 , APP 2424 , and APP 2426 , among more embodiments, memory medium 2020 can store data
others , which can be executed by processor 2010. In one or and /or configuration information that can be utilized by
more embodiments , computing device 2000 can be or FPGA 2012 in implementing one ormore systems,methods,
include a computer, a computer system , a workstation , a and /or processes described herein . For example , memory
mobile device , a mobile computing device , a hand -held 50 medium 2020 can store a configuration (CFG ) 2033 , and
computing device , a personal digital assistant (PDA ), a CFG 2033 can include configuration information and /or one
cellular telephone , a tablet computing device , a digital music or more instructions that can be utilized by FPGA 2012 to
player device , a wireless telephone , a satellite telephone , a implement one ormore systems, methods, and / or processes
virtual computing device ( e. g ., a virtual machine), an in - described herein . For instance , the configuration information
vehicle computing device (e . g ., an in - vehicle entertainment 55 and /or the one or more instructions , of CFG 2033 , can
system , an in - vehicle navigation system , an in - vehicle con - include a hardware description language and/ or a schematic
figuration and /or status system ), and an automotive comput design that can be utilized by FPGA 2012 to implement one
ing device , among others. In one or more embodiments , CD or more systems, methods , and/ or processes described
2000 illustrated in FIGS . 2B - 2F can be utilized to implement herein . In one or more embodiments , FPGA 2012 can
a CCD and /or a CSD . 60 include multiple programmable logic components that can
Turning now to FIG . 2C , a computing device is illus be configured and coupled to one another in implementing
trated , according to one or more embodiments. As shown , one or more systems, methods, and /or processes described
CD 2000 can include processor 2010 coupled to a memory herein .
medium 2020 . In one or more embodiments , memory In one or more embodiments, memory medium 2020 can
medium 2020 can store data and /or instructions that can be 65 store data and/ or instructions that can be executed by FPGA
executed by processor 2010 . For example , memory medium 2012 . For example , memory medium 2020 can store one or
2020 can store one or more APPs 2030 -2032 and/ or an more APPs 2030 -2032 and/or an OS 2035 . For instance , one
US 9 , 760,385 B2
10
or more APPs 2030 - 2032 and /or an OS 2035 can include such as a satellite telephone system , a cellular telephone
instructions of an ISA associated with FPGA 2012 . In one or system , WiMax, WiFi, or wireless Ethernet, among others.
more embodiments, CD 2000 can be coupled to and /or In one or more embodiments, CD 2000 can be any of
include one or more of a display , a keyboard , and a pointing various types of devices, including a computer system , a
device ( e .g ., a mouse , a track ball , a track pad , a stylus , etc .). 5 server computer system , a laptop computer system , a note
In one or more embodiments , a touch screen can function as book computing device , a portable computer, a PDA , a
a pointing device . In one example , the touch screen can handheld mobile computing device , a mobile wireless tele
determine a position via one or more pressure sensors . In phone ( e . g ., a satellite telephone , a cellular telephone, etc . ),
an Internet appliance , a television device , a DVD device , a
another example, the touch screen can determine a position 10 Blu
via one or more capacitive sensors . -Ray disc player device , a DVR device , a wearable
As illustrated , CD 2000 can include one or more network computing device , or other wireless or wired device that
includes ASIC that processes data according to one or more
interfaces 2040 and 2041. In one example, network interface methods and /or processes described herein . In one or more
2040 can interface with a wired network coupling , such as embodiments , one or more of CCDs 1110 - 1114 , media
a wired Ethernet, a T - 1 , a DSL modem ,, aa Pon
PSTN ,, or
or aa cable
cable 15 servers 1210 - 1212 , databases 1230 and 1231 , and CSDs
modem , among others. In another dem example , network inter 15 1310 - 1312 can include one or more same or similar struc
face 2041 can interface with a wireless network coupling , ture tures and /or functionalities described with reference to CD
such as a satellite telephone system , a cellular telephone 2000 .
system , WiMax , WiFi, or wireless Ethernet, among others . Turning now to FIG . 2F , a computing device is illustrated ,
In one or more embodiments, CD 2000 can be any of 20 according to one or more embodiments. As shown , CD 2000
various types of devices , including a computer system , a can include graphics processing unit (GPU ) 2016 coupled to
server computer system , a laptop computer system , a note memory medium 2020 . For example , GPU 2016 can be or
book computing device , a portable computer, a PDA , a include a general purpose graphics processing unit
handheld mobile computing device, a mobile wireless tele (GPGPU ) . In one or more embodiments , memory medium
phone ( e . g ., a satellite telephone , a cellular telephone, etc . ), 25 2020 can store data and / or configuration information that
an Internet appliance , a television device , a DVD device , a can be utilized by GPU 2016 in implementing one or more
Blu -Ray disc player device , a DVR device , a wearable systems, methods , and/ or processes described herein . For
computing device , or other wireless or wired device that example , memory medium 2020 can store a CFG 2036 , and
includes a FPGA that processes data according to one or CFG 2036 can include configuration information and /or one
more methods and /or processes described herein . In one or 30 or more instructions that can be utilized by GPU 2016 to
more embodiments, one or more of CCDs 1110 - 1114 ,media implement one or more systems, methods , and/ or processes
servers 1210 - 1212 , databases 1230 and 1231, and CSDs described herein .
1310 - 1312 can include one or more same or similar struc In one or more embodiments, memory medium 2020 can
tures and /or functionalities described with reference to CD store data and/ or instructions that can be executed by GPU
2000 . 35 2016 . For example ,memory medium 2020 can store one or
Turning now to FIG . 2E , a computing device is illustrated , more APPs 2030 - 2032 and /or an OS 2035 . For instance, one
according to one or more embodiments. As shown, CD 2000 or more APPs 2030 - 2032 and /or an OS 2035 can include
can include an application specific processor (ASIC ) 2014 instructions of an ISA associated with GPU 2016 . In one or
coupled to memory medium 2020 . In one or more embodi- more embodiments, CD 2000 can be coupled to and/or
ments, memory medium 2020 can store data and / or con - 40 include one or more of a display , a keyboard , and a pointing
figuration information that can be utilized by ASIC 2014 in device ( e. g ., a mouse , a track ball, a track pad, a stylus , etc .).
implementing one or more systems, methods, and /or pro - In one or more embodiments , a touch screen can function as
cesses described herein . For example , memory medium a pointing device . In one example , the touch screen can
2020 can store a CFG 2034 , and CFG 2034 can include determine a position via one or more pressure sensors . In
configuration information and/ or one or more instructions 45 another example , the touch screen can determine a position
that can be utilized by ASIC 2014 to implement one ormore via one or more capacitive sensors .
systems, methods, and /or processes described herein . As illustrated , CD 2000 can include one or more network
In one or more embodiments , memory medium 2020 can interfaces 2040 and 2041 . In one example , network interface
store data and /or instructions that can be executed by ASIC 2040 can interface with a wired network coupling, such as
2014 . For example , memory medium 2020 can store one or 50 a wired Ethernet, a T- 1 , a DSL modem , a PSTN , or a cable
more APPs 2030 - 2032 and /or an OS 2035 . For instance, one modem , among others . In another example , network inter
or more APPs 2030 -2032 and/or an OS 2035 can include face 2041 can interface with a wireless network coupling ,
instructions of an ISA associated with ASIC 2014 . In one or such as a satellite telephone system , a cellular telephone
more embodiments, CD 2000 can be coupled to and /or system , WiMax , WiFi, or wireless Ethernet, among others .
include one or more of a display , a keyboard , and a pointing 55 In one or more embodiments, CD 2000 can be any of
device ( e . g ., a mouse , a track ball , a track pad , a stylus, etc .). various types of devices, including a computer system , a
In one or more embodiments, a touch screen can function as server computer system , a laptop computer system , a note
a pointing device . In one example , the touch screen can book computing device , a portable computer , a PDA , a
determine a position via one or more pressure sensors . In handheld mobile computing device , a mobile wireless tele
another example , the touch screen can determine a position 60 phone ( e . g ., a satellite telephone , a cellular telephone, etc . ),
via one or more capacitive sensors . an Internet appliance, a television device , a DVD device, a
As illustrated , CD 2000 can include one or more network Blu -Ray disc player device , a DVR device , a wearable
interfaces 2040 and 2041. In one example, network interface computing device , or other wireless or wired device that
2040 can interface with a wired network coupling, such as includes a GPU that processes data according to one ormore
a wired Ethernet, a T- 1 , a DSL modem , a PSTN , or a cable 65 methods and / or processes described herein . In one or more
modem , among others. In another example , network inter - embodiments , one or more of CCDs 1110 - 1114 , media
face 2041 can interface with a wireless network coupling , servers 1210 - 1212, databases 1230 and 1231, and CSDs
US 9, 760 ,385 B2
11
1310 - 1312 can include one or more same or similar struc provided to receive user input. In one or more embodiments ,
tures and/ or functionalities described with reference to CD object 3050 can include a representation of and /or a simu
2000 . lation of a device, a computer, a cellular telephone , a tablet
Turning now to FIG . 3A , an exemplary client interface is computing device , a digital music player device , a satellite
illustrated , according to one or more embodiments. As 5 telephone , a dress , a pair of jeans , a bathing suit, a shoe,
shown, a display 3000 can display a client interface 3020. In lingerie , underwear, a helmet, a sock , stockings, a watch , a
one or more embodiments , display 3000 can be coupled to necklace , a bracelet , a television , software ( e . g ., a drawing
or included in a computing device . In one example , display program , a word processing program , a music player pro
3000 can be coupled to CCD 1111 . In another example, gram , a compiler, a computer operating system , a video
display 3000 can be included in CCD 1112 . In one or more 10 editing program , etc .), a printer device , a tire , a rim , an
embodiments , client interface 3020 can be or include a web automobile part, an automobile, a piece of furniture, or a
browser ( e . g., Microsoft Internet Explorer , Safari, Firefox , stapler, among others .
Chrome, Opera , etc .), a window of an application , a full In one or more embodiments , one or more of icons
screen display area of display 3000 , or a partial screen 3110 -3113 can be selected by the customer to change a
display area of display 3000 . For example , client interface 15 viewing angle of object 3050 . In one example, icon 3110 can
3020 can be utilized by APP 2030 to provide information to be selected to rotate object 3050 about a first axis by a
and/ or receive user input from a user. In one or more number of degrees in a first direction of rotation with respect
embodiments, an APP (e .g ., an APP of APPs 2030 -2032 ) can to the first axis . In a second example , icon 3111 can be
receive information from a media server (e . g ., a media selected to rotate object 3050 about the first axis by a
server of media servers 1210 - 1212 ) via a network ( e . g ., 20 number of degrees in a second direction of rotation with
network 1010 ) and can provide the information to a user via respect to the first axis . For instance , the second direction of
client interface 3020 . rotation can be opposite to the first direction of rotation . In
In one or more embodiments , the APP (e.g., the APP of a third example, icon 3112 can be selected to rotate object
APPs 2030 - 2032 ) can be or include a plug- in to another 3050 about a second axis by a number of degrees in a third
application ( e . g ., a web browser ) and/ or can receive con - 25 direction of rotation with respect to the second axis. In
figuration information from a media server. In one example , another example , icon 3113 can be selected to rotate object
the plug- in can include a Flash Player (available from Adobe 3050 about the second axis by a number of degrees in a
Systems), and the plug- in can interface with the customer fourth direction of rotation with respect to the second axis .
via client interface 3030 . In another example , the plug - in can For instance , the fourth direction of rotation can be opposite
include a Java virtualmachine, and the plug - in can interface 30 to the third direction of rotation . In one or more embodi
with the customer via client interface 3030 . In one or more m ents , a pointer can be dragged across media interface 3040
embodiments , client interface 3030 can be implemented via to rotate object 3050 in a direction about an axis .
one ormore of JavaScript, EMCAScript, Java , an extensible In one or more embodiments , icon 3114 can be selected
markup language (XML ), and a hypertext markup language to display a video that includes and/or is associated with
(HTML) ( e . g ., HTML version four ( 4 ), HTML version five 35 object 3050 . For example , icon 3114 can be selected to
( 5 ), etc . ). For example , the APP ( e . g ., the APP of APPs display an interactive video that includes and / or is associ
2030 - 2032) can be or include a web browser, and the web ated with object 3050 . For instance , media interface 3040
browser can receive information , from a media server , that can display a simulation that includes and / or is associated
includes one or more of JavaScript, EMCAScript, Java (e .g ., with object 3050 . In one or more embodiments, icon 3115
Java byte code ), XML, and HTML version 5 , and the web 40 can be selected to receive information about and / or associ
browser can implement client interface 3020 based on the ated with object 3050 . In one example , interactive commu
received information that includes one or more of nication interface 3060 can provide the customer with
JavaScript, EMCAScript, Java , XML , and HTML version 5 . information when icon 3115 is actuated or selected . In one
As illustrated , client interface 3020 can include an inter - instance, an avatar ( e.g ., a graphical approximation and /or
active media interface 3030 that can provide information to 45 rendering of an actual person or a simulated person ) can be
a customer ( e . g ., a user of a CCD ) and/ or receive informa- displayed , via interactive communication interface 3060 ,
tion from a customer. In one example, interactive media that can provide the customer with information . In another
interface 3030 can include a media interface 3040 that can instance, interactive communication interface 3060 can pro
display one or more pictures , one or more videos ( e . g ., vide the customer with a video of a service representative .
motion pictures ), one or more graphics, and / or text associ- 50 For example , a customer service representative can interact
ated with an object 3050 . In one instance , object 3050 can with the customer directly via text chat and/ or video chat via
represent and /or include a simulation of an object for sale by interactive communication interface 3060 .
a retail establishment. In a second instance , object 3050 can In one or more embodiments , a customer service repre
provide and /or implement an emulation of an object (e .g., an sentative can interact with a customer directly by controlling
emulation of a physicalmobile device , a physical computing 55 media interface 3040 via a media server ( e . g ., a media server
device , etc .). In another instance , object 3050 can represent of media servers 1210 - 1212 ). For example , the customer
and/ or include a simulation of an object that can be serviced service representative can , via a media server, rotate object
and / or for which service can be provided . In a second 3050 about an axis , zoom in -on at least a portion of object
example, interactive media interface 3030 can include an 3050 , zoom out- from object 3050, start a simulation of or
interactive communication interface 3060 that can be uti- 60 associated with object 3050 , or start a video of or associated
lized by one or more of the customer and another user ( e . g ., with object 3050, among others . For instance, media server
a sales representative , a service representing, a representa - 1210 can receive control information from the customer
tive of a retail establishment, a representative of a service service representative , via a CSD , and can provide the
provider, an artificial intelligence system , a neural network control information to APP 2030 via network 1010 , and APP
system , etc .). 65 2030 can perform , via interactive media interface 3030
In another example , interactive media interface 3030 can and / or media interface 3040 , one or more functions associ
include one or more icons or button 3110 -3117 that can be ated with the control information .
US 9, 760 ,385 B2
13 14
In one or more embodiments , audio information (e.g ., a swipe indicator 4424 ( illustrated in FIG . 4J) that the user
speech , music , etc . ) can be provided to the customer via a should and/or could swipe the display .
sound output device included in or coupled to a computing In one or more embodiments , an APP icon can be moved
device utilized by the customer. In one example , CCD 1110 during use of a computing device . For example, APP icon
can include a speaker, and speech from a customer service 5 4610 could have been moved from a first location to a
representative can be provided to the customer via the second location during use of the computing device (illus
speaker. In a second example , CCD 1110 can include a trated in FIGS . 4B and 4C ) , and the first APP can indicate
speaker, and speech associated with object 3050 can be a user action via beacon 4620 (illustrated in FIG . 4C ). In one
provided to the customer via the speaker. In another instance , the first APP can attain and /or procure , via a data
example , CCD 1110 can include a speaker, and music 10 structure stored in the computing device , coordinates of APP
associated with object 3050 can be provided to the customer icon 4610 during an initialization phase and/ or a start- up
via the speaker. sequence of its execution . In another instance , the first APP
In one or more embodiments , icons 3116 and 3117 can be can attain and/or procure , via a data structure stored in the
selected to adjust a size of object 3050 . In one example , icon computing device , coordinates of APP icon 4610 prior to
3116 can be selected to increase a size of object 3050 . For 15 indicating the user action via beacon 4610 .
instance , increasing a size of object 3050 can include At 3230 , the first APP can receive user input. For
zooming in - on object 3050 and / or magnifying at least a example , the first APP can receive the user input via trans
portion of object 3050 . In another example, icon 3117 can be parent layer 4550, as illustrated in FIG . 4D . For instance ,
selected to decrease a size of object 3050. For instance , transparent layer 4550 can be a conceptual transparent layer
decreasing a size of object 3050 can include zooming 20 its purposes and/ or functionality described herein . In one or
out- from object 3050. more embodiments, the first APP can receive the user input
In one or more embodiments, a first APP can provide an via a portion of the user and /or a pointing device . In one
application- based tutorial that can walk a user through steps example , the first APP can receive the user input via a
to use a second APP of a computing device ( e .g ., CD 2000) . portion of the user, such as a digit. For instance , the first APP
For example , the first APP can utilize one or more beacons 25 can receive the user input via a finger 4710 , as illustrated in
as a transparent- layer APP to highlight intended action FIGS . 4D and 4E . In another example, the first APP can
and / or motion of the user interaction with the computing receive the user input via one or more of a mouse , a stylus ,
device , and when the user interacts with the computing a trackball, and a touchpad , among others. For instance, CD
device ( either a physical implementation or a virtual imple 2000 can be or include a virtual machine, and the user can
mentation , such as a virtual machine implementation ), the 30 interface with CD 2000 via a media interface 6542 ( e . g ., a
user action ( e . g ., user input ) is provided to the first APP via web browser ) , illustrated in FIG . 4F, where the user can
a transparent layer and then to an interface manager (e . g ., a utilize one or more of a mouse , a stylus , a trackball, and a
window manager, an APP manager, etc . ) and /or the second touchpad , among others , to position a pointer 4752 to select
APP . In one instance , the user action (e . g ., user input) can be APP icon 4610 , indicated via beacon 4620 . In one or more
provided to the first APP via a transparent layer 4550 35 embodiments ,media interface 6542 can include one or more
(illustrated in FIG . 4A ) , and the first APP can provide the functionalities and/or structures as media interface 3040 .
user action a window manager and/ or the second APP. In In one or more embodiments, the first APP can filter user
another instance , the first APP can utilize a visual beacon input. For example , the first APP can receive user input via
4620 (illustrated in FIG . 4B ) within transparent layer 4550 a portion of transparent layer 4550 that includes (a ) beacon
to highlight and /or signal an intended action and / or a motion 40 4620 and/ or (b ) an area that includes beacon 4620 and an
of the user interaction with the computing device . area around beacon 4620 , and the first APP can exclude
In one or more embodiments, if the user moves a location and/or redact user input outside and /or not included in those
of an APP icon such that a beacon would be in an incorrect areas . At 3240 , the first APP can determine if the user input
location , the first APP can be configured to attain and /or is within an area that includes (a ) beacon 4620 and /or (b ) an
procure coordinates of APP icons such that one or more 45 area that includes beacon 4620 and an area around beacon
beacons can be provided at respective appropriate one or 4620 .
more areas within a transparent layer. For example, the first If the user input is not within the area that includes (a )
APP can attain and/ or procure coordinates of APP icons beacon 4620 and /or (b ) the area that includes beacon 4620
4610 -4614 (illustrated in FIG . 4A ) such that one or more and the area around beacon 4620 , the user input can be
beacons ( e. g ., one or more visual signals ) can be provided at 50 excluded and/ or redacted , at 3250 . In one or more embodi
respective appropriate one or more areas within transparent m ents , excluding and/ or redacting the user input can include
layer 4550. For instance, the first APP can attain and /or discarding the user input.
procure coordinates of APP icons 4610 - 4614 during an If the user input is within the area that includes ( a ) beacon
initialization phase and /or a start-up sequence of its execu - 4620 and /or (b ) the area that includes beacon 4620 and the
tion . 55 area around beacon 4620, the first APP can provide the user
Turning now to FIG . 3B , an exemplary method of an input to one or more of a second APP and an interface
application walk -through is illustrated , according to one or manager, among others, at 3260 . In one example , the first
more embodiments . At 3210 , a first APP can start . In starting APP can provide the user input to an interface manager ( e. g .,
the first APP, the first APP can attain and /or procure coor - a window manager, an APP manager, etc .) . For instance , the
dinates of APP icons during an initialization phase and /or a 60 user input provided to the interface manager can select APP
start -up sequence of its execution , according to one or more icon 4610 . In another example , the first APP can provide the
embodiments. At 3220, the first APP can indicate a user user input to a second APP . For instance , after an APP icon
action . In one example , the first APP can indicate a user is selected , a second APP can execute , and the first APP can
action via a beacon ( e. g ., a visual signal), such as a beacon provide the user input to the second APP.
4620 ( illustrated in FIG . 4B ). For instance, beacon 4620 can 65 Turning now to FIG . 3C , another exemplary method of an
indicate that the user action should include selecting APP application walk -through is illustrated , according to one or
icon 4610 . In another example , the first APP can indicate via more embodiments. At 3310 , a first APP can be started . For
US 9 , 760,385 B2
15 16
example, the first APP can be APP 2426 , and APP 2426 can for a number of scenarios of the second APP. For instance ,
be started . At 3320 , a second APP can be started . For the first APP can be configured to additionally aid a user with
example, the second APP can be an APP of APPs 2420 - 2424 , configuring one or more of text input areas 4215 , 4220 , and
and the APP of APPs 2420 - 2424 can be started . In one or 4235 and selecting between check boxes 4225 and 4230 . If
more embodiments , the first APP can start the second APP. 5 the first APP determines that addition user input is appli
At 3330 , the first APP can indicate an action to be cable , the method can proceed to 3330 , where the first APP
performed via the second APP. In one example , the first APP can indicate an action to be performed via the second APP.
can indicate an action to be performed via the second APP For example , the first APP can indicate an action to be
via a message 4410 , as illustrated in FIG . 4G . For instance , performed via the second APP via message 4412 , as illus
the second APP can be or include an electronic mail ( email) 10 trated in FIG . 41. For instance , the first APP can indicate to
client, and the first APP can indicate to enter an email login enter a name via input area 4215 of email APP interface
via input area 4210 of email APP interface 4220, as illus 4120 , as illustrated in FIG . 41. If the first APP determines
trated in FIG . 4G . In another example , the first APP can that addition user input is not applicable , the first APP can
indicate an action to be performed via the second APP via exit at 3380. For example , the first APP can determine that
indicator 4424 , as illustrated in FIG . 4J. For instance, 15 addition user input is not applicable via a conclusion of a
indicator 4424 can indicate that the user should and /or could set- up and /or walk -through process.
swipe the display . For example , additional forecast days can Turning now to FIG . 3D , a method of operating an APP
be displayed via a weather application interface 4422 when manager is illustrated , according to one or more embodi
the user swipes in the direction indicated via indicator 4424 . ments . At 3410 , APP manager 2310 can receive data from a
In one or more embodiments, indicator 4424 can be ani - 20 first APP. For example, the first APP can be APP 2426 , and
mated . For example , indicator 4424 can be animated to APP 2426 can provide the data to APP manager 2310 . At
indicate that the user should and / or could swipe the display. 3420 , APP manager 2310 can store the data from the first
As illustrated in FIGS. 46 -41, display 2120 can display APP. For example , APP manager 2310 can store the data
email APP interface 4120 and a scroll bar 4130 , among from the first APP via queue 2380.
others . As shown , email APP interface 4120 can display text 25 At 3430 , APP manager 2310 can remove focus from the
input areas 4210 - 4220 and 4235 , check boxes 4225 and first APP. In one or more embodiments, “ focus ” indicates a
4230 , and buttons and/ or icons 4510 and 4512 . As illustrated component of a GUI that is selected to receive input. For
FIG . 4G , the first APP can display message 4410 via display example , text pasted from a clipboard and/or entered via a
2120 . keyboard can be sent to the component that has the focus . In
With reference again to the method of FIG . 3C , the first 30 one or more embodiments, APP manager 2310 withdraws
APP can receive user input, at 3340 . For example, the first and /or removes the focus an APP by giving another APP the
APP can receive user input via touch screen 2130 , illustrated focus.
in FIGS. 4G , 41, and 4J. In one instance, the user input can At 3440 , APP manager 2310 can provide focus to a
include one or more alpha numeric characters. In another second APP. For example , the second APP can be an APP of
instance , the user input can a swipe . 35 APPs 2420 - 2424 . At 3450, APP manager 2310 can provide ,
In one or more embodiments, the first APP can receive the to the second APP, the data received from the first APP. In
user input via touch screen 2130 . As illustrated in FIG . 4H , one ormore embodiments, APP manager 2310 can provide,
the first APP can receive the user input via shaded area 4550 to the second APP, the data received from the first APP via
of touch screen 2130, for example. Shaded area 4550 is for a callback (e .g ., a subroutine , a function , a procedure , a
illustrative purposes , and the first APP can receive the user 40 subprogram , a method , a callable unit , etc . ) of the second
input via an area , corresponding to shaded area 4550 , that APP . For example , APP manager 2310 can provide , to the
can be transparent. second APP, the data received from the first APP via an
With reference again to the method of FIG . 3C , the first instantiation of the callback of the second APP with the data
APP can determine if the user input indicates an exit and/ or received from the first APP as a parameter of the callback of
conclusion of the first APP , at 3350 . For example , the first 45 the second APP.
APP can determine if the user input indicates an exit and/ or In one or more embodiments , APP manager 2310 can
conclusion of the first APP ( e . g ., an exit and /or conclusion utilize multiple callbacks of the second APP. In one
of the walk -through ) if the user input indicates a selection of example, APP manager 2310 can utilize a first callback of
an exit and/ or conclusion icon . For instance, the user input the second APP to handle text (e .g ., user input text ). In a
can indicate a selection of an exit and/ or conclusion icon 50 second example , APP manager 2310 can utilize a second
4810 , illustrated in FIGS. 4B , 4C , and 4E -4J. callback of the second APP to handle a check or uncheck of
If the user input indicates an exit and/ or conclusion of the a checkbox . In third example , APP manager 2310 can utilize
first APP , the first APP can exit and /or conclude at 3380. If a third callback of the second APP to handle movement of
the user input does not indicate an exit and/ or conclusion of a scrollbar. In another example , APP manager 2310 can
the first APP, the first APP can provide the user input to the 55 utilize a fourth callback of the second APP to handle a swipe
second APP , at 3360. In one example , the first APP can of a user interface .
provide the user input to the second APP via APP manager At 3460, APP manager 2310 can remove focus from the
2310 . For instance, the first APP can provide the user input second APP . At 3470 , APP manager 2310 can provide focus
to queue 2380 , and APP manager 2310 can provide the user to the first APP. In one or more embodiments , the first APP
input to the second APP. In another example , the first APP 60 can control a second APP via APP manager 2310 and the
can provide the user input to the second APP via kernel method of FIG . 3D .
2210 . For instance , the first APP can provide the user input As described above, CD 2000 can be or include a virtual
to queue 2280, and the user input stored in queue 2280 can machine, and the user can interface with CD 2000 via media
be provided to the second APP via at least one method , interface 6542 ( e. g ., a web browser ), illustrated in FIG . 4F.
system , and process described herein . 65 In one ormore embodiments, the first APP (described with
At 3370 , the first APP can determine if addition user input reference to the walk -throughs) can be or include media
is applicable. For example, the first APP can be configured interface 6542 . For example , media interface 6542 can
US 9 ,760 ,385 B2
17 18
execute instructions that can implement and /or function as an in - store pick - up , an automobile dealership , etc .). For
the first APP. For instance , media interface 6542 can execute example, as illustrated in FIG . 5C , a retailer, a seller, etc.,
a script (e.g., JavaScript, EMCAScript, etc .) and /or byte can provide CD 2000 ( e. g., in a physical embodiment) to a
code (e .g ., Java byte code ) that can function as the first APP , physical deliver service 5115 (e .g ., a postal service, a parcel
described with reference to the walk -throughs. In this fash - 5 service , a courier service , a courier, an in -store pick - up ,
ion , a user can utilize , configure , and /or set -up a mobile etc .). As shown in FIG . 5C , CD 2000 can be stored via
device , according to one or more embodiments, as described warehouse 5140 ( e . g ., a physical warehouse , a physical
further below . stockroom , etc.), and CD 2000 can be provided to physical
Turning now to FIGS. 5A -5G , exemplary diagrams of delivery service 5115 .
ordering and configuring a computing device are illustrated , 10 In one or more embodiments, providing a physical CD to
according to one or more embodiments . In one or more a physical delivery service can include marking packaging
embodiments, a user/ customer can utilize a CCD to interface of the physical CD . In one example , packaging of the
with a merchant CD ( e . g ., an online retailer ) and order a physical CD can be marked with information that can
computing device via the merchant CD and a network . For identify one or more of the user and the physical CD . In
example , as illustrated in FIG . 5A , a user/ customer 5010 can 15 another example, packaging of the physical CD can be
utilize CCD 1112 to interface with a merchant CD 5114 marked with address information . For instance, the address
( e. g ., an online retailer ) and order a computing device ( e . g ., information can include a physical address, associated with
CD 2000 ) via merchant CD 5114 and network 1010 . In one user 5010 , that is utilizable by physical deliver service 5115
or more embodiments, CD 2000 can be any of various types to deliver the physical CD to user 5010 .
of devices, including a computer system , a server computer 20 In one or more embodiments, the user / customer can
system , a laptop computer system , a notebook computing receive the physical CD via a physical deliver service ( e. g .,
device , a portable computer, a PDA , a handheld mobile a postal service , a parcel service , a courier service , a courier,
computing device, a mobile wireless telephone ( e . g ., a an in - store pick -up , etc .) . For example , as illustrated in FIG .
satellite telephone, a cellular telephone , etc .), an Internet 5D , user/ customer 5010 can receive CD 2000 via a physical
appliance , a television device , a DVD (digital video disc 25 deliver service 5115 ( e . g ., a postal service, a parcel service ,
player ) device , a Blu -Ray disc player device, a DVR (digital a courier service , a courier, an in -store pick - up , an automo
video recorder ) device , an in - vehicle computing device , a bile dealership , etc .).
wearable computing device ( e. g ., illustrated in FIGS. 51 and In one or more embodiments, a CD , received via a
5J), a watch , a smart watch , or other wireless orwired device physical delivery service , can be coupled to a network , and
that includes a processor that executes instructions from a 30 the CD can receive and / or retrieve a configuration that was
memory medium . configured prior to receiving the CD via the physical deliv
In one or more embodiments , the user /customer can ery service . For example , as illustrated in FIG . 5E , CD 2000
utilize the CCD to interface with a computer system (CS ) can be coupled to network 1010 , and CD 2000 can receive
and configure a virtual CD (e. g ., a virtual machine) via the and/or retrieve CFG 5310 . For instance , CS 5210 can
network . For example , user/ customer 5010 can utilize CCD 35 retrieve CFG 5310 from storage 5121 and can provide CFG
1112 to interface with a CS 5210 and configure a virtual CD 5310 to CD 2000 via network 1010 .
( e. g ., a virtual machine) via network 1010 . In one or more In one ormore embodiments , a CD can be configured at
embodiments, one or more configurations of one or more a place associated with a retailer, a seller, etc . For example ,
respective virtual computing devices (CDs) can be stored . In as illustrated in FIG . 5F, CD 2000 can be configured at
one example , CS 5210 can include storage , and the one or 40 warehouse 5140, and CD 2000 can be provided to physical
more configurations of the one or more respective virtual delivery service 5115 after CD 2000 is configured with CFG
CDs can be stored via the storage included in CS 5210 . In 5310. In one instance , CD 2000 can be configured with CFG
a second example, storage can be coupled to a network , and 5310 at warehouse 5140 in a wireless fashion . In another
the one ormore configurations of the one or more respective instance , CD 2000 can be configured with CFG 5310 at
virtual CDs can be stored via the storage coupled to the 45 warehouse 5140 in a wired fashion . As shown in FIG . 5G ,
network . In another example , as illustrated in FIG . 5B , a physical delivery 5115 can provide CD 2000 , configured
storage 5121 can be coupled to CS 5210 , and the one or with CFG 5310 , to customer/user 5010 .
more configurations of the one or more respective virtual In one or more embodiments, a configuration can be
CDs can be stored via storage 5121. provided to one or more computing devices . For example , as
As shown in FIG . 5B , a CFG 5310 can be stored via 50 illustrated in FIG . 5H , CFG 5310 can be provided to one or
storage 5121. In one or more embodiments , CFG 5310 can more of CCD 1112 and a mobile device (MD ) 5510 . In one
include one or more sound recordings (e . g ., MP3 songs, or more embodiments, one or more computing devices can
musical pieces , voice memos, conversations, lectures , etc . ), emulate a MD , based on a provided configuration . For
one or more contacts (e . g ., contact information associated example , user /customer 5010 can begin to utilize an emu
with people , places , companies , etc .), login information , 55 lation of a configured MD via one or more of CCD 1112 and
online account information , one or more bookmarks ( e . g ., MD 5510. In one instance, user /customer 5010 can begin to
web browser book marks ), one or more ebooks , one or more utilize an emulation of CD 2000 , configured with CFG 5310 ,
social networking sites' respective information ( e. g., Face via CCD 1112 and/ or MD 5510 before a physical delivery of
book information , Twitter information , MySpace informa- CD 2000 . In another instance , user /customer 5010 can begin
tion , Foursquare information , Last.fm information , Google + 60 to utilize an emulation of CD 2000 , configured with CFG
information , etc .) associated with a user of a MD , and /or one 5310 , via CCD 1112 and /or MD 5510 without any physical
or more mobile device apps (e.g ., smart phone apps, tablet delivery of CD 2000 .
computer apps, music player apps, in - vehicle apps , etc .), Turning now to FIG . 5K , a method of creating a configu
among others. ration of a computing device and delivering the configura
In one or more embodiments , a retailer, a seller , etc ., can 65 tion is illustrated , according to one or more embodiments . At
provide a physical CD to a physical deliver service (e . g ., a 5610 , a request for a computing device can be received . For
postal service , a parcel service, a courier service , a courier, example , merchant CD 5114 can receive the request for the
US 9 , 760,385 B2
19 20
computing device . In one instance , the request for the the configuration , at 5730 , and the physical computing
computing device can be or include an order for the com - device ( e. g., CD 2000 ) can be provided to a physical
puting device . In another instance , as illustrated in FIG . 5A , delivery service, at 5740 . For instance , the physical delivery
a user /customer 5010 can utilize CCD 1112 to interface with service can provide the physical computing device (e .g ., CD
a merchant CD 5114 (e . g ., an online retailer ) and order the 5 2000 ) as described herein .
computing device (e. g., CD 2000) via merchant CD 5114 Turning now to FIGS . 6A -6C , exemplary diagrams of a
and network 1010 . In one or more embodiments , the simulated object are illustrated , according to one or more
requested and/ or ordered computing device can be a physi- embodiments. As shown in FIG . 6A , simulated object 3050
calmobile device . can include one or more of a wireless telephone (e . g ., a
At 5620 , an emulator corresponding to the requested 10 cellular telephone, a satellite telephone , a wireless Ethernet
and/ or ordered computing device can be requested . For telephone , etc .), a digital music player , a tablet computing
example ,merchant CD 5114 can request the emulator of CS device , and a PDA , among others. As illustrated , object 3050
5210. At 5630 , CS 5210 can receive the emulator allocation can include one or more of a simulated sound output device
request. At 5640 , the emulator can be allocated . For 6010 , a simulated display 6020 , and simulated buttons
example, an emulator of emulators 6420- 6425 , illustrated in 15 6030 -6032.
FIG . 6E , can be allocated. For instance , the emulator can As shown, simulated display 6020 can display one or
correspond to a physical mobile device that includes a more of a picture or graphic 6050 and one or more buttons
physical processor, a physical memory , and a physical or icons 6040 -6046 . In one or more embodiments , a cus
integrated circuit . tomer (e . g ., a user of a CCD ) can select and /or actuate one
At5650 , the emulator can emulate the computing device . 20 or more of icons 6040 -6046 and buttons 6030 -6032 , and
For example , the emulator can be or include a data process - simulated object 3050 can perform one or more simulated
ing emulator such as QEMU , SPIM , VMware , VirtualBox , functions associated with a selection or simulation of a
or Bochs , among others. At 5660 , data can be received via selected icon or button of object 3050 . In one example , the
a network . For example , CS 5210 can receive data from user customer can select button 6031, and a numeric keypad can
5010 via network 1010. 25 be displayed via simulated display 6020 . For instance, keys
At 5670 , the received data can be provided to the emu of the numeric keypad can simulate a keypad of a telephone.
lator. At 5680 a configuration can be created . For example , In a second example, the customer can select button 6032,
the received data can be utilized to configure the emulated and an interface to a digital music player can be displayed
computing device and/ or create a configuration (e . g ., CFG via simulated display 6020 . In another example , an icon of
5310 ). For instance, CFG 5310 can include one or more 30 icons 6040 -6046 can be selected to simulate a respective
sound recordings ( e . g., MP3 songs , musical pieces , voice application of a calculator application , a clock application , a
memos , conversations , lectures , etc.), one or more contacts calendar application , a web browser application , a video
( e. g ., contact information associated with people , places, chat application , a video player ( e. g ., a motion picture
companies, etc .), one ormore bookmarks (e.g., web browser player) application , and a setting or configuration applica
book marks ), one or more ebooks, one or more social 35 tion .
networking sites' respective information ( e.g., Facebook In one or more embodiments , a simulation of object 3050
information , Twitter information , MySpace information , and/or one or more simulated features and/or functions can
Foursquare information , Last .fm information, Google + be performed via a CCD . In one example , a client- side script
information , etc. ) associated with user 5010 , and/or one or (e. g ., JavaScript, EMCAScript, etc .) can be executed by a
more mobile device apps ( e . g ., smart phone apps, tablet 40 web browser of the CCD . In a second example , a compiled
computer apps, music player apps , in - vehicle apps , etc . ), client -side program ( e .g ., Java byte code ) can be executed by
among others , based on and /or created via the received data . a web browser of the CCD . In one or more embodiments , a
At 5690 , the configuration can be stored . In one example , simulation of object 3050 and / or one or more simulated
the configuration can be stored via storage 5121 . In another features and /or functions can be performed via a media
example , the configuration can be stored via one or more of 45 server. In one example , the media server can receive infor
storages 6120 -6122 , illustrated in FIG . 6E . At 5700 , user mation from a CCD that indicates a simulated button or icon
input indicating a delivery method can be received . In one has been selected and can utilize simulated display , via
example , CS 5210 can receive the user input indicating the media interface 3040 , to display functionality associated
delivery method. In another example , merchant CD 5114 with the selected button or icon .
can receive the user input indicating the delivery method . 50 As shown in FIG . 6B , simulated display 6020 can display
At 5710 , a delivery method can be determined . In one a simulation of a video chat application . In one example , a
example , CS 5210 can determine the delivery method . In simulated picture or graphic 6141 of a person with whom the
another example , merchant CD 5114 can determine the customer is chatting can be displayed via simulated display
delivery method . In one or more embodiments , delivery of 6020 . In another example, a simulated picture or graphic
the configuration can include one or more of delivering the 55 6142 of the customer can be displayed via simulated display
configuration via the network ( e. g ., network 1010 ) and 6020 . For instance , picture or graphic 6142 of the customer
delivering a physical computing device configured with the can demonstrate a front-facing camera of simulated object
configuration . 3050 . In one or more embodiments , the simulation of the
If the delivery of the configuration ( e .g ., CFG 5310 ) video chat application can be started and /or executed in
includes delivering the configuration via the network ( e . g ., 60 response to a selection and /or actuation of button or icon
network 1010 ), the configuration can be provided to the user 6044 of FIG . 6A . For example, the simulation of the video
via the network , at 5720 . For example, CFG 5310 can be chat application can be a video (e .g ., a motion picture ) that
delivered to CCD 1112 and/ or to MD 5510 via network can be played via simulated display 6020 .
1010 , as illustrated in FIG . 5H . If the delivery of the In one or more embodiments , simulated display 6020 can
configuration (e.g ., CFG 5310) includes delivering the 65 be utilized to play one or more videos (e.g .,motion pictures).
physical computing device configured with the configura - In one example , simulated display 6020 can be utilized to
tion , the physical computing device can be configured with play a clip from Youtube . In a second example , simulated
US 9, 760 , 385 B2
22
display 6020 can be utilized to play a trailer to a movie . In CCDs 1111 - 1113 can be coupled to CS 5210 via network
another example, simulated display 6020 can be utilized to 1010 . In one or more embodiments , CS 5210 can include
play videos that demonstrate one or more features of simu - and / or execute one or more of a server app 6410 , a server
lated object 3050 . In one or more embodiments, user input APP 6411 , a server APP 6440, and an API (application
can be received to pause , play , rewind , and /or fast- forward 5 programming interface ) server APP6450 . As illustrated , API
the video played via simulated display 6020 . server APP 6450 can be coupled to server APP 6440, server
In one or more embodiments, the customer can select APP 6440 can be coupled to server APP 6410 , and server
button 6030 to return to a “ home” state or location of APP 6450 can be coupled to server APP 6411. In one or
simulated object 3050 . For example , the “ home” state or more embodiments , a first server APP can be coupled to a
location of simulated object 3050 is illustrated in FIG . 6A . 10 second server APP via one or more of a named pipe, an
As illustrated in FIG . 6C , a picture or graphic 6250 can be anonymous pipe , a pipe , a Unix domain socket, a network
displayed via simulated display 6020 . For example , picture connection ( e . g ., a network socket connection such as at
or graphic 6250 can be included in a graphical advertisement least one of TCP, UDP, and IP , among others ), a D -Bus
for a physical device associated with its simulated object (Desktop Bus ), an IPC ( interprocess communication ) (e .g .,
3050 . 15 inter-thread communication , inter - application communica
Turning now to FIG . 6D , an exemplary diagram of a tion , etc .), a shared memory interface, message passing, a
simulated object with operational aids is illustrated , accord - file , and a file system , among others .
ing to one or more embodiments. As shown in FIG . 6D , As illustrated, server APP 6410 can include one or more
media interface 3040 can display where a headphone or of an emulator proxy 6430 and one or more of emulators
headset connector 6310 can be plugged into a device asso - 20 6420 -6422 , and one or more of emulators 6420 - 6422 can be
ciated with simulated object 3050 and /or can display where coupled to emulator proxy 6430 . As shown , server APP 6411
a USB (universal serial bus ) connector 6320 can be plugged can include one or more of one or more emulator proxies
into a device associated with simulated object 3050 . In one 6433 -6435 and one or more of emulators 6423 -6425 , and
or more embodiments, a demonstration and /or simulation of one or more of emulators 6423 -6425 can be coupled to
coupling connectors to a device can be automated . 25 respective one or more emulator proxies 6433 -6435 . In one
In one example , the customer can select " How to use or more embodiments , one or more of emulators 6423-6425
headphones with your device " from a help menu . For can include one or more of the same, similar or different
instance , a media server can provide, to a media interface , functionalities and/or structures described with reference to
data and /or information that includes a demonstration and /or one or more emulators 6420 -6422, and one or more of
simulation that demonstrates and / or simulates a process of 30 emulator proxies 6433 -6435 can include one or more of the
coupling headphones with simulated object 3050. In another same, similar or different functionalities and/or structures
example, the customer can select "How to charge your described with reference to emulator proxy 6430 .
device or connect your device to a PC or a Mac” from a help In one or more embodiments, one or more of emulator
menu . For instance , a media server can provide , to a media proxy 6430 and one or more of emulators 6420 -6422 can
interface , data and / or information that includes a demon - 35 include or be one or more of a process , a task , an application ,
stration and/ or simulation that demonstrates and/ or simu- and a thread , among others ; and an emulator of emulators
lates a process of coupling simulated object 3050 with a 6420 -6422 can be coupled to emulator proxy 6430 via one
computing device . For example , the demonstration and/ or or more of a named pipe, an anonymous pipe, a pipe, an
simulation can simulate a process of coupling simulated Unix domain socket, a network connection, a D -Bus, an
object 3050 with at least one of a PC , a Mac, and a charging 40 IPC , a shared memory interface ,message passing , a file , and
device (e. g., a wall charger, a solar charger, etc.). a file system , among others .
In one or more embodiments, a demonstration and /or As shown, one or more of CCDs 1111 -1113 can include
simulation of connecting connectors to a device can instan - and /or execute respective one or more client interfaces
tiated and/or coordinated by a service representative via a 63021 -63023, respective one or more interactive media
CSD and/ or a media server. For example , a service repre - 45 interfaces 63031 -63033 , and / or respective one or more
sentative can be communicating with a customer, via tele - media interfaces 6541 -6543 . In one or more embodiments ,
phone or via interactive communication interface 3060 , and one or more client interfaces 63021 -63023 can include same
can provide control information , via one or more of CSD or similar one or more functionalities described with refer
1310 , network 1010 , and media server 1212 , to interactive ence to client interface 3020 , one or more interactive media
communication interface 3060 and / or an application asso - 50 interfaces 63031 -63033 can include same or similar one or
ciated with interactive communication interface 3060. For more functionalities described with reference to interactive
instance , the service representative can provide control media interface 3030 , and /or one or more media interfaces
information , via one or more of CSD 1310 , network 1010 , 6541 - 6543 can include same or similar one or more func
and media server 1212 , to client interface 3020 and /or an tionalities described with reference to media interface 3040 .
application associated with client interface 3020 , and media 55 As illustrated , one or more of mobile devices (MDs )
interface 3040 can display a demonstration of connecting 6110 -6112 can be coupled to CS 5210 via network 1010 . As
headphone or headset connector6310 and / or USB connector shown , CS 5210 can include a storage 6120 , can be coupled
to a device associated with simulated object 3050 . to a storage 6121 , and/ or can be coupled to a storage 6122
In one or more embodiments, a simulated object can be an via network 1010 . In one ormore embodiments, one or more
emulated object. For example , simulated object 3050 can be 60 of storages 6120 -6122 can include non - volatile storage
an emulation of a physical device . In one instance , simulated and / or memory that can store configurations and / or data of
object 3050 can be an emulation of CD 2000 . In another one or more of MDs 6110 -6112 .
instance, simulated object 3050 can be an emulation ofCD In one or more embodiments , CS 5210 and /or storages
2000 , and CS 5210 can emulate CD 2000. 6120 -6122 can provide and/ or implement one or more
Turning now to FIG . 6E , an exemplary system that 65 system for synchronizing and / or storing preferences, con
supports physical device emulation is illustrated , according figuration (s ), installed applications of a physical MD in a
to one or more embodiments. As shown , one or more of system independent format ( e.g ., the system can be used for
US 9, 760 ,385 B2
23 24
multiple OS types and /or multiple platform types). In one address, a port number (e.g., a TCP port number, a UDP port
example, one or more granular levels (e .g ., storing and /or number, etc .), and audio proxy information , among others .
retrieving data for recovery may not require that a recovered In one example , one or more of the IP address and the port
system synchronize its data , information , and /or configura - number can be utilized with a virtual network console
tion with CS 5210 and /or storages 6120 -6122 ) of data ( e . g . 5 (VNC ) and/ or a remote network console . In a second
data such as applications, contact list(s ), photos, videos, ring example, one or more of the IP address and the port number
tone(s ), sound preference (s ), etc .) can be stored and/ or can be utilized with one or more of a remote desktop
retrieved . For instance , an API can be provided and/ or made connection, an Apple remote desktop connection , and a
available that can be utilized in storing and retrieving remote X11 session or connection , among others. In another
associated information and /or data of and / or associated with 10 example , the audio proxy information can include informa
one or more physical mobile devices. In another example , tion associated with a websocket proxy.
multiple devices can be configured and/ or recovered from In one or more embodiments , a first computing device and
CS 5210 and/ or storages 6120 -6122 . In one instance , each of a second computing device can communicate via a web
the multiple devices can be configured and/or recovered socket API and/or protocol. In one example , the first com
with respective associated data and /or configuration (s ). 15 puting device can provide , via a network , a first set of one
In another instance , multiple devices can be configured or more TCP packets to a second computing device via the
and /or recovered from CS 5210 and /or storages 6120 -6122. websocket API and /or protocol. For instance, providing the
For example, each of themultiple devices can be configured first set of one or more TCP packets to the second computing
and/ or recovered with same data and /or configuration ( s ). For device can include providing, via HTTP or HTTPS , the first
instance , a company can issue multiple wireless telephones 20 set of one or more TCP packets to the second computing
to a sales group , and each of the multiple wireless telephones device. In another example , the second computing device
can be configured with one or more of a contact list, sales can provide, via the network , a second set of one or more
presentations, and smart phone applications, among others , TCP packets to the first computing device via the websocket
for the sales group. API and / or protocol. For instance, providing the second set
Turning now to FIG . 6F , an exemplary method of oper - 25 of one or more TCP packets to the second computing device
ating an API server APP is illustrated , according to one or can include providing , via HTTP or HTTPS , the second set
more embodiments. At 6610 , a first request from a CCD of one or more TCP packets to the first computing device.
( e .g ., a CCD of CCDs 1111 - 1113 ) can be received . For At 6640 , the address information , received at 6630 , can be
example , API server APP 6450 included in and /or executed provided to the CCD . For example , API server APP 6450
by media server 1211 can receive , via network 1010 , the first 30 can provide the address information to the CCD . For
request from the CCD . In one instance , API server APP 6450 instance, API server APP 6450 can provide a XHR object
can receive , via network 1010 , the first request from media that includes the address information to the CCD . In one or
interface 6541 included in and/ or executed by CCD 1111 . In more embodiments , the CCD can utilize the address infor
a second instance , API server APP 6450 can receive, via mation to communicate with emulator proxy 6430 .
network 1010 , the first request from media interface 6542 35 Turning now to FIG . 6G , an exemplary method of oper
included in and /or executed by CCD 1112 . In another ating a server APP is illustrated , according to one or more
instance , API server APP 6450 can receive , via network embodiments . In one or more embodiments , the method
1010 , the first request from an interactive media interface illustrated in FIG . 6G can be utilized in operating server APP
( e .g ., an interactive media interface of interactive media 6440 or other server APPs that include same or similar one
interfaces 63031 -63033 ) or a client interface ( e . g ., a client 40 or more functionalities of server APP 6440 . At 6710 , the
interface of client interfaces 63021- 63023 ). second request ( e. g ., provided at 6620 can be received . For
In one or more embodiments, the first request can include example , server APP 6440 , included in and/ or executed by
a request for connection information . For example , the first media server 1211 , can receive the second request from API
request can include a XMLHttpRequest ( / HR ) that includes server APP 6450.
the request for the connection information . At 6620 , a 45 At 6720 , an emulator allocation request can be provided
second request can be provided to another server APP. For to an emulator server APP. For example , server APP 6440
example , API server APP 6450 can provide the second can provide an emulator allocation request to an emulation
request to server APP 6440 . server APP 6410 . At 6730 , a response from the emulator
In one or more embodiments , providing the second server APP can be received . For example , server APP 6440
request to server APP 6440 can include initiating a remote 50 can receive , from emulator server APP 6410 , a response to
procedure call (RPC ) with server APP 6440 . For example , the emulator allocation request.
providing the second request to server APP 6440 can include At 6740 , it can be determined if the response from the
utilizing a RPC framework and /or a RPC functional library. emulator server APP indicates that an emulator has been
For instance , providing the second request to server APP allocated . For example , server APP 6440 can determine if
6440 can include initiating a Thrift request with server APP 55 the response from the emulator server APP indicates that an
6440 . In one or more embodiments , Thrift can include one emulator has been allocated . If the response from the emu
or more a library ( e. g ., a software library ) and one or more lator server APP indicates that an emulator has not been
code generation tools that can be utilized to define data types allocated , another emulator server APP can be determined at
and service interfaces in a language -neutral file and generate 6750 . For example , server APP 6440 can determine another
instructions ( e . g ., software executable by a processing sys - 60 emulator server APP ( e . g ., different from emulator server
tem ) that can be utilized in RPC clients and servers that are APP 6410 such as server APP 6411) . At 6760, an emulator
executable on respective computing devices. allocation request can be provided to the other emulator
At 6630, address information can be received . For server APP , and the method can proceed to 6730 . For
example , API server APP 6450 can receive the address example , server APP 6440 can provide an emulator alloca
information from the other server APP (e .g ., server APP 65 tion request to the other emulation server APP.
6440 ). In one or more embodiments , the address information If the response from the emulator server APP indicates
from the other server can include one or more of an IP that an emulator has been allocated , address information
US 9, 760 ,385 B2
25 26
associated with one or more of an emulator and an emulator interconnect express (PCIe ), and an advanced high -perfor
proxy can be determined , at 6770 . In one example, server mance bus (AHB ), among others .
APP 6440 can determine the information associated with In another instance , one or more emulated devices and /or
one or more of the emulator and the emulator proxy from the interfaces can be coupled to the emulated processor, such as
response from the emulator server APP and /or based on the 5 one or more of an emulated wireless Ethernet interface (e. g.,
response from the emulator server APP. a WiFi interface ), an Ethernet interface , a global positioning
In another example , server APP 6440 can receive addi- system (GPS ) receiver device , a GSM ( global system for
tional information from the emulator server APP and can mobile communications ) interface , a CDMA (code division
determine the information associated with one or more of multiple access ) interface , a WiMAX interface , a proximity
the emulator and the emulator proxy from the additional sensing device, a Bluetooth interface , a ZigBEE interface , a
information from the emulator server APP and /or based on magnetometer, an accelerometer, a pressure transducer , a
the additional information from the emulator server APP. At humidity sensing device , a capacitive sensing touch device,
6780, the address information can be provided to the API a resistive sensing touch device , an electronic gyroscope, a
server APP . For example , server APP 6440 can provide the 15 gas sensing device , an image sensing device ( e .g ., a digital
address information associated with one or more of the camera ), a sound sensing device ( e .g ., a microphone), a
emulator and the emulator proxy to API server APP 6450 . sound output device (e .g ., a speaker ), a digital compass
Turning now to FIG . 6H , an exemplary method of oper device, a temperature sensing device, a FM radio receiving
ating an emulator server APP is illustrated , according to one device (e . g ., tunable to one or more frequencies of 87 .5
or more embodiments . At 6810, an emulator allocation 20 MHz- 108 MHz, 76 MHz- 90 MHz, 162 .4 MHz- 162.55 MHz,
request can be received . For example , server APP 6410 can etc .), a FM radio transmitting device (e.g., tunable to one or
receive an emulator allocation request from server APP more frequencies of 87 .5 MHz- 108 MHz, 76 MHz- 90 MHz ,
6440. At 6820 , it can be determined if an emulator can be etc .), a light sensing device, a proximity sensing device , a
allocated . For example , server APP 6410 can determine if an radio frequency identification (RFID ) sensing device , a
emulator can be allocated . In one or more embodiments , 25 RFID transmitting device , a near field communication
determining if an emulator can be allocated can include (NFC ) device , and a range determining device, among
determining one or more of an amount of memory is others.
available , a thread can be allocated , a process can be In another example , the emulated data processing system
allocated , a task can be allocated , a processing load is below can include a data processing emulator such as QEMU ,
a threshold , and an amount of bandwidth is below a thresh - 30 SPIM , VMware, VirtualBox , or Bochs, among others . In one
old , among others . If an emulator is not allocated , a response instance, SPIM can emulate a processor that can execute
that indicates that an emulator has not been allocated can be instructions from a MIPS ISA . In a second instance , QEMU
provided , at 6830 . For example , server APP 6410 can can emulate a processor that can execute instructions from
provide , to server APP 6440 , a response that indicates that an IA -32 (e . g ., x86 ) ISA , a MIPS ISA , a SPARC ISA , an
an emulator has not been allocated . 35 ARM ISA , and a PowerPC ISA , among others . In another
If an emulator can be allocated , an emulator can be instance, QEMU , SPIM , VMware , VirtualBox , or Bochs can
allocated , at 6840 . For example , server APP 6410 can emulate one or more a memory system , a bus, a device , and
allocate an emulator. For instance , server APP 6410 can an interface , among others, coupled to an emulated proces
allocate an emulator such as an emulator of emulators sor. In one or more embodiments , an emulator ( e . g ., an
6420 -6422 . In one or more embodiments , allocating an 40 emulator of emulators 6420 -6422 ) can be or include a virtual
emulator can include marking an emulator, from a pool of machine.
available emulators , as no longer available to be allocated by In one or more embodiments, an emulator (e . g ., an
an allocation request and providing the marked emulator as emulator of emulators 6420 -6422 ) can emulate and /or simu
available to a requestor. late one ormore of a physicalwireless telephone, a physical
In one or more embodiments , an emulator can emulate a 45 personal audio device, a physical tablet computing device ,
data processing system . In one example , the emulated data and a physicalMP3 player, among others, and the emulator
processing system can include an emulated memory coupled can execute an operating system and /or platform . In one
to an emulated processor that executes instructions from an example , the emulator can execute a Linux operating system
ISA (instruction set architecture ) that can be stored in the and /or platform . In a second example , the emulator can
emulated memory . In one instance , the emulated processor 50 execute an Android operating system and / or platform . In a
can execute instructions from at least one of an ARM ISA , third example, the emulator can execute an iOS operating
a MIPS ISA , an x86 ISA , a PowerPC ISA , and a DSP (digital system and/ or platform . In a fourth example , the emulator
signal processing ) ISA , among others . can execute a BSD (Berkeley Software Distribution ) oper
In a second instance , the emulated memory can include at ating system and /or platform . In a fifth example, the emu
least one of emulated DRAM (dynamic random access 55 lator can execute a Windows CE operating system and/ or
memory ) , SRAM ( static random access memory ) , FRAM platform . In sixth example , the emulator can execute a
(ferroelectric random access memory ), FLASH memory Windows Mobile operating system and/ or platform . In
( e . g ., NAND FLASH memory ), EEPROM ( electrically eras - another example , the emulator can execute a VxWorks
able read only memory ), EPROM (erasable programmable operating system and / or platform .
read only memory ), PROM (programmable read only 60 In one or more embodiments , the emulator can execute a
memory ) , and ROM ( read only memory ), among others . In data generating thread , task , and /or process that can emulate ,
a third instance , the emulated data processing system can simulate , and /or provide an operating system and / or plat
include at least one emulated bus, coupled to the emulated form with data associated with one ormore functionalities of
processor, such as at least one emulated bus of an 1°C an emulated device (e . g ., a physical wireless telephone , a
( inter- integrated circuit ) bus, an universal serial bus (USB ), 65 physical personal audio device , a physical tablet computing
a serial peripheral interconnect (SPI) bus, a peripheral device , a physical MP3 player, etc . ). In one example , the
component interconnect (PCI) bus, a peripheral component data generating thread and / or process can provide the oper
US 9, 760 ,385 B2
27 28
ating system and/ or platform with data that emulates and /or utilizing the first communication protocol to one or more
simulates an incoming telephone call. emulators utilizing the second communication protocol can
In one instance, the data generating thread and /or process include translating and / or transforming data of the first
can provide the operating system and / or platform with data communication protocol into data of the second communi
that emulates and / or simulates GSM data . In a second 5 cation protocol and/ or can include translating and/ or trans
instance , the data generating thread and /or process can forming data of the second communication protocol into
provide the operating system and / or platform with data that data of the first communication protocol.
emulates and /or simulates CDMA data . In a third instance , In one or more embodiments, 1/ 0 of an emulator can
the data generating thread and / or process can provide the include video output. For example , the video output can
operating system and / or platform with data that emulates 10 include output that would be displayed on a screen of a
and/ or simulates GPS data . In fourth instance , the data device ( e .g ., a wireless telephone, a personal audio device ,
generating thread and /or process can provide the operating a tablet computing device, a MP3 player, etc.), and the video
system and/ or platform with data that emulates and/or output can be provided to a client ( e. g ., a CCD of CCDs
simulates frequency modulation ( FM ) data ( e. g., sounds 1111 - 1113 ). For instance, providing the video output to the
and / or text data carried via a FM carrier wave ). In another 15 client can include providing the video output to the client via
instance , the data generating thread and/or process can emulator proxy 6430 and/or network 1010. In an example ,
provide the operating system and /or platform with data that the I/O of an emulator can be implemented via a VNC
emulates and/ or simulates amplitude modulation (AM ) data protocol and /or interface . In one instance , the emulator can
( e . g ., sounds and/or text data carried via a AM carrier wave ). provide video output to the client via the VNC protocol
In a second example , the data generating thread and/or 20 and / or interface . In another instance , an operating system
process can provide the operating system and/ or platform and /or kernel executing on the emulator can provide video
with data that emulates and/ or simulates short messaging output to the client via the VNC protocol and /or interface .
system (SMS ) data . For instance , the data generating thread In one or more embodiments , I/ O of an emulator can
and/ or process can provide the operating system and/ or include audio output. For example , the audio output can
platform with data that emulates and /or simulates a SMS 25 include sounds that would be produced and / or reproduced
textmessage . In a third example , the data generating thread via a device ( e . g ., a wireless telephone , a personal audio
and / or process can provide the operating system and/ or device , a tablet computing device , a MP3 player, etc .), and
platform with data that emulates and /or simulates user input the audio output can be provided to a client (e . g ., a CCD of
data . In one instance, the data that emulates and / or simulates CCDs 1111 - 1113 ). For instance, providing the audio output
user input data can be generated in response to user input 30 to the client can include providing the audio output to the
data from a service representative . In another instance , the client via emulator proxy 6430 and/ or network 1010 . In an
data that emulates and/ or simulates user input data can be example , the I/O of an emulator can be implemented via a
generated in response to user input data from a customer via websocket protocol and/or interface.
a CCD utilized by the customer. In one or more embodiments, the audio output can include
At 6850 , a response that indicates that an emulator has 35 one or more of pulse width modulation data , pulse code
been allocated can be provided . For example , server APP modulation data , raw audio data , WAV audio data , AIFF
6410 can provide , to server APP 6440 , a response that audio data, AAC audio data ,MPEG audio data, OGG audio
indicates that an emulator has been allocated . At 6860 , data , Real Audio audio data , and WMA audio data , among
input/output ( 1/ 0 ) of the allocated emulator can be coupled others. In one example, the emulator can provide audio
to an emulator proxy. For example , server APP 6410 can 40 output to the client via the websocket protocol and / or
couple I/O of the allocated emulator to emulator proxy 6430 . interface . In another example, an operating system and/ or
For instance , server APP 6410 can couple I/ O of an emulator kernel executing on the emulator can provide audio output
of emulators 6420 -6422 to emulator proxy 6430 . to the client via the websocket protocol and /or interface .
In one or more embodiments, utilizing emulator proxy In one or more embodiments, the method illustrated in
6430 can prohibit direct access of one or more clients ( e . g ., 45 FIG . 6H can be utilized by multiple emulators . In one
one or more of CCDs 1111 - 1113 ) to one or more emulators example , two or more different emulators can emulate a
( e .g ., one or more of emulators 6420 -6422 ). For example , same physical mobile device . In another example, two or
prohibiting direct access of one or more clients to one or more different emulators can emulate different respective
more emulators can include providing and / or implementing physical mobile devices , and the two or more emulators
access control. In one instance , providing and / or implement- 50 emulating different respective physical mobile devices can
ing access control can include limiting a number of ports perform differently in accordance with functionalities ,
( e . g ., TCP ports , UDP ports , etc .) of one or more emulators devices, and/ or structures associated with the different
that one or more clients can access . In another instance , respective physical mobile devices.
providing and /or implementing access control can include In one or more embodiments , a first emulator can emulate
limiting an amount of time that one or more clients can 55 a first physical device, and a second , different, emulator can
access one ormore emulators and /or can include timing out emulate a second , different, physical device . For example, a
one or more communication couplings after an amount of first emulated mobile device , emulated via the first emulator,
time transpires without communication activity and / or data . that corresponds to a first physical mobile device that can
In one or more embodiments, utilizing emulator proxy include a first physical processor, a first physical memory ,
6430 can bridge access of one or more clients ( e .g ., one or 60 and a first physical integrated circuit can be different from a
more of CCDs 1111 - 1113 ) utilizing a first communication second emulated mobile device , emulated via the second
protocol to one or more emulators ( e . g ., one or more of emulator, that corresponds to a second physical mobile
emulators 6420 -6422 ) utilizing a second communication device that can include a second physical processor, a
protocol. For example , the first communication protocol second physical memory and a second physical integrated
( e . g ., a websocket protocol) can be different from the second 65 circuit , where at least one of the first physical processor, the
communication protocol ( e .g ., a transmission control proto - first physical memory , and the first physical integrated
col). For instance , bridging access of one or more clients circuit is different from a corresponding one of the second
US 9, 760 ,385 B2
29 30
physical processor, the second physical memory and the the emulation interface data from a media server via network
second physical integrated circuit . 1010 . For example , the client interface can include a web
In one instance , the first physical integrated circuit can browser, and the web browser can receive the emulation
include one or more of a WiFi device ( e .g ., a WiFi interface ), interface instructions and the emulation interface data .
WiMAX device (e. g., a WiMAX interface ), a GPS device , a 5 In one or more embodiments , the emulation interface
GSM device ( e . g ., a GSM interface ), a CDMA device ( e . g ., instructions can include one or more of a script, executable
a CDMA interface ), a satellite telephone network interface , byte code, and executable code for a plugin , among others .
a Bluetooth device (e .g ., a Bluetooth interface), a ZigBEE In one example, the emulation interface instructions can
device ( e . g ., a ZigBEE interface ), a GPS device , an Ethernet include the script that can be in accordance with a scripting
device (e .g., an Ethernet interface ), a proximity sensing 10 i language such as JavaScript, EMCAScript,Ruby, Python , or
device , a magnetometer, an accelerometer, a pressure trans Lua, among others. In a second example, the executable byte
ducer , a humidity sensing device , a capacitive sensing touch code can be in accordance with one or more of Ruby byte
device , a resistive sensing touch device , an electronic gyro
scope, a gas sensing device, an image sensing device (e .g ., code , Python byte code , Lua byte code, Ruby byte code, and
a digital camera ), a sound output device , a sound sensing 15 Java byte code, among others. For instance , the byte code
device (e.g., a microphone ), a digital compass device, a can be executed by a virtual machine . In another example ,
temperature sensing device , a FM radio receiving device, a the executable code for a plugin can include Adobe Flash
FM radio transmitting device , a light sensing device , a RFID executable code , Java executable code, Ruby executable
sensing device , a RFID transmitting device , a NFC device , code, and Lua executable code , among others. In one or
and a range determining device , among others . In a second 20 more embodiments, the emulation interface data can include
instance, the first emulator can emulate an iPhone 4 that one ormore of a graphic and data of a markup language. For
includes an Apple A4 processor, and the second emulator example, the markup language can include one or more of
can emulate an iPhone 4S that includes an Apple A5 HTML and XML , among others.
processor. At 6930, a user interface can be configured . For example ,
In third instance , the first emulator can emulate a first 25 a media interface (e . g ., a media interface ofmedia interfaces
wireless telephone that includes a CDMA wireless telephone 6540 -6542) can be configured based on the emulation inter
network interface , and the second emulator can emulate a face instructions ( e . g ., instructions associated with a script
wireless telephone that includes a GSM wireless telephone ing language such as JavaScript. EMCAScript, Ruby,
network interface . In fourth instance , the first emulator can Python, Lua, etc . and/ or instructions associated with Ruby
emulate a first wireless telephone that includes a cellular 30 byte code , Python byte code , Lua byte code, Java byte code ,
wireless telephone network interface , and the second emu- etc .) and/ or the emulation interface data ( e .g ., HTML data ,
lator can emulate a second wireless telephone that includes XML data , etc .) .
a satellite wireless telephone network interface . In a fifth At6940 , information can be displayed to the customer via
instance, the first emulator can emulate a first wireless the user interface . For example , a media interface (e .g ., a
telephone that includes a first integrated circuit , and the 35 media interface of media interfaces 6540 -6542 ) can display
second emulator can emulate a second wireless telephone the information to the customer based on the emulation
that includes a second integrated circuit that is different from interface instructions and /or the emulation interface data . At
the first integrated circuit. In a sixth instance , the first 6950 , the user interface ( e . g ., a media interface ) can couple
emulator can emulate a first wireless telephone that includes with an emulator ( e. g ., an emulator of emulators 6420
a Trimble GPS device , and the second emulator can emulate 40 6422). For example , a media interface can couple with an
a wireless telephone that includes a ublox GPS device . In emulator via network 1010 and /or emulator proxy 6430 .
another instance, the first emulator can emulate a first At 6960 , input data can be received . In one example , a
physical device that includes an integrated circuit ( e . g ., an media interface can receive the input data from an emulator .
audio integrated circuit, a graphics processing unit , a GPS For instance , the media interface can receive the input data
integrated circuit , etc . ), and the second emulator can emulate 45 from the emulator via network 1010 and / or emulator proxy
a second physical device that does not includes the inte 6430 . In another example , the media interface can receive
grated circuit . the input data from a customer ( e . g ., user input data ). In one
Turning now to FIG . 61, an exemplary method of oper- or more embodiments , input from the customer can include
ating a client that can interact with an emulator is illustrated , one or more of a selection of a graphic , a selection of an
according to one or more embodiments . At 6910 , function - 50 icon , a selection of a key ( e . g ., a key from a keypad , a key
ality can be determined . For example , functionality of a from a keyboard , etc .), visual input ( e . g., one or more images
client device for providing the GUI can be determined . For from a camera coupled to a CCD ), and sound input (e .g., one
instance , functionality of a client interface can be deter - or more sounds from a microphone coupled to a CCD ) ,
mined via a scripting functionality . In one or more embodi - among others .
ments, the client interface can implement a media interface 55 At 6960, a source of the input data can be determined . If
( e. g., a media interface of media interfaces 6540 -6542 ). For the source of the data is determined to be from the emulator,
example , the client interface can include a web browser, and information can be displayed and/ or sounds can be produced
functionality of the web browser can be determined . For for the user ( e . g ., customer ) via the media interface and / or
instance, functionality of the web browser can include one a sound output device of a CCD , at 6970. In one or more
or more of a scripting functionality , a plug - in functionality , 60 embodiments , the method can proceed to 6960 , where
a virtual machine functionality , and a markup language further information can be received . If the source of the data
functionality , among others. In one or more embodiments, is determined to be from the user, the user input data can be
determining functionality can include determining a version provided to the emulator, at 6980. For example, the user
of a functionality . input data can be provided to the emulator via network 1010
At 6920 , emulation interface instructions and data can be 65 and /or emulator proxy 6430 . In one or more embodiments ,
received . For example , the client interface and / or a media the method can proceed to 6960 , where further information
interface can receive the emulation interface instructions and can be received .
US 9, 760 ,385 B2
31 32
Turning now to FIG . 6 ), an exemplary method of provid receiving CFG 5310 , as illustrated in FIG . 5H , can include
ing multiple simulated objects to multiple CCDs is illus receiving emulator 6422 and /or ED 7836 . In another
trated, according to one ormore embodiments . At6982 , first example , receiving CFG 5310, as illustrated in FIG . 5H , can
information , associated with a first network address , can be include receiving MDD 7838 and/ or ED 7836 .
received via a network . For example , the first information 5 With reference again to FIG . 7A , MD 5510 can host an
can be received from a first CCD ( e . g ., CCD 1110 ). At 6984 , emulated device in a seamless fashion , according to one or
second information , associated with a second network more embodiments . For example , one or more of virtual
address, can be received via the network . For example , the display 7220 , virtual touch screen 7230 , and virtual buttons
second information can be received from a second CCD 7240 - 7244 can be mapped to respective physical one or
( e . g ., CCD 1111 ). In one or more embodiments , at least one 10 more of display 7120 , touch screen 7130 , and buttons
of the first information and the second information can 7140 -7144 .
include a request for a simulated object and /or a request to In one or more embodiments, user input can halt the
interact with a simulated object. emulated device and /or return control to physicalMD 5510 .
At 6986 , third information , associated with the first net . For example, the user can select a button , a combination of
work address , can be provided to the network . For example , 15 buttons, and /or an icon to halt the emulated device and /or
the third information can be addressed to the first network return control to physical MD 5510 . In one instance , the user
address (e . g., associated with the first CCD ). In one ormore can concurrently actuate buttons 7140 and 7144 to halt the
embodiments , the third information can include first data emulated device and / or return control to physical MD 5510 .
utilizable , by a first client interface associated with the first In a second instance , the user can concurrently actuate
CCD , to display a three -dimensional simulation of a first 20 button 7144 and select icon 7616 to halt the emulated device
simulated object and /or to change a viewing angle of the first and /or return control to physical MD 5510 . In another
simulated object . instance, the user can select icon 7616 to halt the emulated
At 6988, fourth information , associated with the second device and/ or return control to physical MD 5510 .
network address , can be provided to the network . For In one or more embodiments, returning control to a
example , the fourth information can be addressed to the 25 physical MD can include returning control and /or focus to
second network address ( e. g., associated with the second an OS and/ or APP of the physical MD . In one example ,
CCD ). In one or more embodiments , the fourth information returning control to physicalMD 5310 can include returning
can include second data utilizable , by a second client inter control and /or focus to OS 7835 ( illustrated in FIGS. 7C and
face associated with the second CCD , to display a three 7D ). In another example , returning control to physical MD
dimensional simulation of a first simulated object and/ or to 30 5310 can include returning control and/ or focus to APP 7832
change a viewing angle of the first simulated object. (illustrated in FIGS. 7C and 7D ).
Turning now to FIG . 7A , a mobile device that emulates a Turning now to FIG . 7B , an exemplary illustration of a
physical device is illustrated , according to one or more walk -through of an emulated device is provided , according
embodiments. As shown , mobile device 5510 can include a to one or more embodiments . As shown , a beacon 7620 can
display 7120 , a touch screen 7130 , a sound output device 35 be utilized to highlight and / or signal an intended action
7150 ( e . g ., a speaker ), and one or more buttons 7140 -7144 . and / or a motion of the user interaction with the emulated
Mobile device 5510 can also include a sound input device device . For instance , beacon 7620 can be utilized within a
( e .g ., a microphone), which is not shown . In one or more transparent layer to highlight and/ or signal an intended
embodiments, MD 5510 can include one or more structures action and/ or a motion of the user interaction with the
and/ or one ormore functionalities described with reference 40 emulated device . In one or more embodiments , beacon 7620
to one or more mobile devices, one or more computer can be utilized with an application -based tutorial, set -up ,
systems, and /or one or more computing devices described and /or walk -through , described herein , that can walk /step a
herein . user through steps to use an APP of an emulated device ( e . g .,
As illustrated , display 7120 can display a client interface ED 7836 ). For example , ED 7836 can emulate CD 2000 .
7520 that can include an interactive media interface 7530 45 Turning now to FIG . 7C , an exemplary computing device
that can include a media interface 7540. In one or more is illustrated , according to one or more embodiments . As
embodiments, client interface 7520 , media interface 7530 , shown, CD 7811 can include a processor 7810 coupled to a
and media interface 7540 can include one or more structures memory medium 7820 . In one or more embodiments ,
and/ or functionalities of client interface 3020 , media inter - memory medium 7820 can store data and/ or instructions that
face 3030 , and media interface 3040 , respectively . As 50 can be executed by processor 7810 . For example , memory
shown , media interface 7540 can display one or more medium 7820 can store one or more APPs 7830 - 7832, an OS
icons/buttons 7610 - 7616 , one or more of icons/ buttons 7835 , mobile device data (MDD ) 7837 , MDD 7838, client
7240-7244, emulated display 7220 , and/or emulated touch app 7821, emulator 6422 , CFG 5310 , SIP / VoIP proxy 7222 ,
screen 7230 , among others. In one or more embodiments , and/ or SMS proxy 7223 . For instance , one or more of APPs
MD 5510 can include one or more structures and /or func - 55 7830 - 7832 , OS 7835 , client app 7821 , emulator 6422 ,
tionalities as those described with reference to a CD 7811 , SIP /VoIP proxy 7222 , and SMS proxy 7223 can include
illustrated in FIGS. 7C and 7D . instructions of an ISA associated with processor 7810. In
In one or more embodiments , client interface 7520 can one or more embodiments , one or more of the processes
provide interactivity between a user and an emulated mobile and /or methods described here can be implemented when
device . For example, client interface 7520 can provide 60 processor 7810 executes one or more of APPs 7830 - 7832,
interactivity between user 5010 and an emulated mobile OS 7835 , client app 7821, emulator 6422 , SIP /VoIP proxy
device emulated via emulator 6422. For instance , emulator 7222, and SMS proxy 7223. In one or more embodiments ,
6422 can be configured with CFG 5310 that can produce one or more of SIP /VoIP proxy 7222 and SMS proxy 7223
and/ or implement an emulated device ( ED ) 7836 ( illustrated can include one ormore structures and /or functionalities as
in FIGS. 7C and 7D ), emulated via physical MD 5510 . In 65 those described with reference to respective one or more of
one or more embodiments, CFG 5310 can include one or SIP /VOIP proxy 23210 and SMS proxy 23220, illustrated in
more of emulator 6422 and MDD 7838 . In one example , FIG . 23 .
US 9, 760 ,385 B2
33 34
In one or more embodiments , a client app 7821 coupled more embodiments , CD 7811 can be coupled to and/or
to emulator 6422 . For example , client app 7821 and emu include one or more of a keyboard and a pointing device
lator 6422 can communicate via one or more processes (e .g., a mouse , a track ball , a track pad , a stylus, etc.). In one
and/ or methods described herein . In one or more embodi- or more embodiments, a touch screen can function as a
ments, client app 7821 can be or include client interface 5 pointing device . In one example , the touch screen can
7520 (illustrated in FIGS. 7A and 7B ). For example , a user determine a position via one or more pressure sensors . In
of local MD 5510 ( implementing and/or including one or another example, the touch screen can determine a position
more structures and /or functionalities of CD 7811 ) can via one or more capacitive sensors .
control and/ or utilize emulator as a telephone via one or In one or more embodiments, one or more elements ofCD
more of client interface 7520 , interactive media interface 10 7811 can be external to CD 7811 . For example , as illustrated
7530 , and media interface 7540 . In one or more embodi- in FIG . 7D , one or more of display 7840 , speaker 7850 ,
ments, one or more interactions with emulator 6422 can be microphone 7860, and camera 7870 can be external to CD
conducted via a web browser interfacing with a web server 7811 . In one instance , one or more of display 7840 , speaker
of emulator 6422 . 7850 ,microphone 7860 , and camera 7870 can be coupled to
In one or more embodiments, MDD can include data 15 CD 7811 in a wired fashion . In another instance , one or more
and /or configuration data associated with a MD . In one of display 7840 , speaker 7850 , microphone 7860 , and cam
example , the MDD can include one or more sound record era 7870 can be coupled to CD 7811 in a wireless fashion .
ings ( e . g ., MP3 songs , musical pieces, voice memos , con - Turning now to FIGS . 8 - 10 , exemplary network systems
versations , lectures, etc .), one or more contacts ( e. g ., contact that supports storage of data and configurations of physical
information associated with people , places , companies, etc .), 20 mobile devices are illustrated , according to one or more
one or more bookmarks (e . g .,web browser book marks ), one embodiments . As shown in FIG . 8 , MDD 8110 associated
or more ebooks, one or more social networking sites with MD 6110 can be stored via storage 6120 that can be
respective information ( e .g ., Facebook information , Twitter included in CS 5210 . In one or more embodiments , MDD
information , MySpace information , Foursquare information , can include data and/ or configuration data associated with a
Last. fm information , Google + information , etc .) associated 25 MD . In one example , the MDD can include one or more
with a user of theMD , one or more mobile device apps ( e . g ., sound recordings (e . g ., MP3 songs , musical pieces, voice
smart phone apps , tablet computer apps, music player apps , memos , conversations, lectures , etc . ), one or more contacts
etc .), and /or one or more configurations of the MD associ ( e . g ., contact information associated with people , places,
ated with the MDD , among others . companies, etc. ), one or more bookmarks (e . g ., web browser
As illustrated , CD 7811 can include a display 7840 30 book marks), one or more ebooks , one or more social
coupled to processor 7810 . In one or more embodiments, networking sites ' respective information ( e. g ., Facebook
display 7840 can be utilized to display one or more of information , Twitter information, MySpace information ,
graphics and /or videos to a user. As shown, CD 7811 can Foursquare information , Last. fm information , Google +
include a network interface 7880 . In one example , network information , etc .) associated with a user of the MD , one or
interface 7880 can interface with a wired network coupling, 35 more mobile device apps (e .g ., smart phone apps, tablet
such as a wired Ethernet, a T - 1 , a DSL modem , a PSTN , or computer apps ,music player apps, etc.), and /or one or more
a cable modem , among others . In another example , network configurations of the MD associated with the MDD , among
interface 7880 can interface with a wireless network cou others. As illustrated , in FIG . 9 , MDD 8111 associated with
pling , such as a satellite telephone system , a cellular tele - MD 6111 can be stored via storage 6121 that can be coupled
phone system , WiMax , WiFi, or wireless Ethernet, among 40 to CS 5210 . As shown in FIG . 10 , MDD 8111 associated
others . with MD 6112 can be stored via storage 6122 that can be
As shown , CD 7811 can include a speaker 7850 coupled coupled to network 1010 .
to processor 7810 . In one or more embodiments, speaker In one or more embodiments, a MD can include execut
7850 can output one or more sounds that can be received , able instructions (e .g ., an application , a utility, an operating
aurally , by a user of CD 7811. In one or more embodiments , 45 system , a portion of an operating system , etc .) that, when the
speaker 7850 can be coupled to processor 7810 via a digital executable instructions are executed by a processor of the
to analog converter (DAC ). For example , the DAC can MD , the MD can synchronize , backup , restore , and/ or
receive digital signals from processor 7850 and transform initialize MDD associated with the MD . In one example , the
the digital signals to analog signals . MD can synchronize and / or backup MDD associated with
As illustrated , CD 7811 can include a microphone 7860 50 the MD via a wired or wireless coupling to a local system
coupled to processor 7810 . In one or more embodiments, (e . g ., a local computer system , a personal computer, a laptop
microphone 7860 can receive audio signals and can trans- computer system , a local office computer system , etc . )
form the audio signals into one or more voltage signals, one and /or via network 1010 to a remote system such as CS 5210
or more current signal, and /or one or more digital signals and/or storages 6120-6122 , a distributed computer system ,
that can be utilized by processor 7810 . For example , an 55 and / or a cloud -based system . In one example , the MD can
analog to digital converter (ADC ) can be utilized to trans - incrementally synchronize changes in the MDD . For
form the one or more voltage signals and /or the one or more instance , one or more synchronization updates can utilize
current signal into the one or more digital signals that can be one or more portions of the MDD and / or may not require a
utilized by processor 7810 . In one or more embodiments, the full and /or complete duplication of the MDD .
ADC can interpose processor 7810 and microphone 7860 60 In one or more embodiments, the MDD can include
such thatmicrophone 7860 is coupled to processor 7810 via information associated with one or more states of the MD
the ADC . associated with the MD . In one example , theMD can receive
As shown, CD 7811 can include a camera 7870 coupled the MDD from CS 5210 and restore the MD to one ormore
to processor 7810 . In one or more embodiments , camera states , based on the MDD . In another example , the MD can
7870 can include one or more image and /or light sensors that 65 receive the MDD from CS 5210 and can perform a " fresh ”
can transform received light signals into one or more digital install , even if the MDD indicates a particular state or if the
signals that can be utilized by processor 7810 . In one or MD is in a particular state . In one or more embodiments, the
US 9, 760 ,385 B2
35 36
MD can receive user input that indicates one or more emulate MD 6111 , and/or emulator 6424 can emulate MD
selected items to restore which can be in addition to what is 6112. As shown, MDD 8110 or one or more portions of MD
present and/or to overwrite existing properties /data . 8110 can be copied and /or transferred to emulator 6422 ;
Turning now to FIGS. 11 - 13 , exemplary network systems MDD 8111 or one or more portions of MD 8111 can be
that support recovery and/ or restoration of data and con - 5 copied and/or transferred to emulator 6423; and MDD 8112
figurations of physical mobile devices are illustrated , or one or more portions of MD 8112 can be copied and /or
according to one or more embodiments . As shown in FIG .
11 , MDD 8110 can be restored to MD 6110 . As illustrated in In one or more embodiments, one or more portions of
FIG . 12 , MDD 8111 can be restored to MD 6111 . As shown MDD can be copied and/or transferred to an emulator when
in FIG . 13 , MDD 8112 can be restored to MD 6112 . 10 a method and /or process of and/ or associated with the
In one or more embodiments, recovery and/ or restoration emulator requests the one ormore portions of the MDD . In
of MDD associated with a first MD or recovery and /or one example , one or more portions of MDD 8110 can be
restoration of one or more portions of the MDD associated copied and / or transferred to emulator 6422 when a method
with the first MD can be utilized with the first MD or can be and /or process of and/ or associated with emulator 6422
utilized with a second MD , different from the first MD . In 15 requests the one or more portions ofMDD 8110 . In a second
one example , the first MD can be physically different from example , one ormore portions ofMDD 8111 can be copied
the second MD . For instance , the first MD can include a first and /or transferred to emulator 6423 when a method and /or
processor, a first memory , and a first integrated circuit; the process of and/ or associated with emulator 6423 requests the
second MD a second processor, a second memory, and a one ormore portions ofMDD 8111 . In another example , one
second integrated circuit; and at least one of the first 20 or more portions of MDD 8112 can be copied and /or
processor, the first memory, and the first integrated circuit transferred to emulator 6424 when a method and / or process
can be different from a respective one of the second pro - of and/ or associated with emulator 6424 requests the one or
cessor, the second memory , and the second integrated cir - more portions of MDD 8112 .
cuit. In one or more embodiments, the MDD or one or more
In another example , the first MD can execute an operating 25 portions of MDD can be transformed , altered , converted ,
system and/or platform different from the second MD . For translated , adapted , adjusted , changed , modified , and /or
instance , the first MD can execute a first operating system adapted , among others , and transferred to an emulator when
and/ or a first platform , and the second MD can execute a a method and/ or process of and/ or associated with the
second operating system and/ or a second platform , where at emulator requests the MDD or the one or more portions of
least one of the first operating system and the first platform 30 the MDD . In one example , MDD 8110 or one or more
can be different from a respective one of the second oper - portions of MDD 8110 can be transformed , altered , con
ating system and the second platform . In one or more verted , translated , adapted , adjusted , changed , modified ,
embodiments , this can allow recovery and /or restoration of and / or adapted , among others , and transferred to emulator
MDD onto the second MD that did not perform backup 6422 when a method and/ or process of and /or associated
and / or synchronization methods and /or processes . 35 with emulator 6422 requests the one or more portions of
In one or more embodiments , one or more portions of the MDD 8110 . In a second example ,MDD 8111 or one ormore
MDD may not be applicable to the second MD . For portions of MDD 8111 can be transformed , altered , con
example , the first MD can execute an Android operating verted , translated , adapted , adjusted , changed , modified ,
system and /or platform , the second MD can execute Win and /or adapted , among others, and transferred to emulator
dows Mobile operating system and / or platform , and one or 40 6423 when a method and/or process of and/ or associated
more applications ( e. g ., smart phone apps ) may not be with emulator 6423 requests the one or more portions of
applicable to the second MD . MDD 8111 . In another example , MDD 8112 or one or more
In one or more embodiments , one or more portions of the portions of MDD 8112 can be transformed , altered , con
MDD (synchronized and /or backed up via the first MD ) can verted , translated , adapted , adjusted , changed , modified ,
be transformed , altered , converted , translated , adapted , 45 and / or adapted , among others , and transferred to emulator
adjusted , changed , modified , and/ or adapted , among others , 6424 when a method and/ or process of and /or associated
such that the one or more portions of the MDD can be with emulator 6424 requests the one or more portions of
utilized by the second MD . For example , a contact list can MDD 8112 . In one or more embodiments , transferring data
be included in the MDD , the contact list can be stored and /or to an emulator ( e .g ., an emulator of emulators 6422- 6423 )
indexed in a format that is associated with an Android 50 can include providing availability of and/ or access to the
operating system and/or platform , and the contact list can be data by the emulator.
transformed , altered , converted , translated , adapted , In one or more embodiments, an emulator can include
adjusted , changed, modified , and/ or adapted , among others, executable instructions (e . g ., an application , a utility , an
such that the Windows Mobile operating system and /or operating system , a portion of an operating system , etc .),
platform of the second MD can utilize information from the 55 that when the executable instructions are executed by an
contact list. emulated processor of the emulator, the emulator can syn
Turning now to FIG . 14 , an exemplary system that chronize , backup , restore , and /or initialize MDD associated
supports installation of data and configurations of one or with an associated MD . In one example , the emulator can
more physical mobile devices to one or more respective initiate synchronization of one or more settings, one or more
emulators is illustrated , according to one or more embodi- 60 configurations, and / or information from the MDD . In a
ments. In one or more embodiments , one or more emulators second example , the emulator can initiate synchronization of
can emulate one or more physical mobile devices. In one one or more settings, one or more configurations, and / or
example , emulator 6422 can emulate MD 6110 , emulator information from the MDD , where the MDD is associated
6423 can emulate MD 6111 , and /or emulator 6424 can with a MD that includes and/ or executes a first operating
emulate MD 6112 . As shown , MDD 8110 can be copied 65 and /or a first platform than a second , different, operating
and/ or transferred to emulator 6422 . In another example , system and/or a second, different, platform . For instance ,
emulator 6422 can emulate MD 6110 , emulator 6423 can one or more portions of the MDD can be transformed ,
US 9, 760 ,385 B2
37 38
altered , converted , translated , adapted , adjusted , changed , device, a magnetometer , an accelerometer, a pressure trans
modified , and /or adapted , among others , and transferred to ducer, a humidity sensing device , a capacitive sensing touch
the emulator when a method and /or process of and /or device , a resistive sensing touch device , an electronic gyro
associated with the emulator requests the one or more scope, a gas sensing device, an image sensing device (e.g .,
portions of theMDD associated with the MD . In one or more 5 a digital camera ), a sound output device , a sound sensing
embodiments , one or more modifications to the MDD and /or device (e . g ., a microphone), a digital compass device , a
a base image of the emulator can be stored . For example , the temperature sensing device , a FM radio receiving device , a
one or more modifications can be stored temporarily and FM radio transmitting device , a light sensing device , a RFID
erased and/ or discarded after the emulator is terminated sensing device , a RFID transmitting device , a NFC device ,
and / or concludes operations. 10 and a range determining device , among others .
In one or more embodiments, a determination of what Turning now to FIGS. 15 -17 , exemplary local area net
information associated with the MDD to restore and/ or to work systems that support storage of data and configurations
initialize the emulator can be made . In one example , the of physical mobile devices are illustrated , according to one
determination can include a full restoration of the MDD to or more embodiments. As shown in FIG . 15 , MDD 8110
the emulator. In another example , the determination can 15 associated with MD 6110 can be stored via storage 15510
include a restoration of one ormore portions of the MDD to that can be included in a local CS 15011 . As illustrated , MD
the emulator. In one or more embodiments, the determina - 6110 and local CS 15011 can be coupled to a local area
tion can be based on user input and /or one or more user network (LAN ) 15010 . In one or more embodiments, local
preferences and/ or configurations. CS 15011 can include one or more of a computer system , a
In one or more embodiments , the determination can be 20 server computer system , a laptop computer system , a note
based on one or more attributes associated with the emulator book computing device, a portable computer, a network
and / or one or more attributes associated with the MD. In one appliance , a television device , a DVD (digital video disc
example , the determination can be based on one or more player) device , a Blu -Ray disc player device , a DVR (digital
similarities between or among the one or more attributes video recorder) device , or other wireless or wired device that
associated with the emulator and the one ormore attributes 25 includes a processor that executes instructions from a
associated with the MD . In another example , the determi memory medium .
nation can be based on one or more differences between or In one or more embodiments, LAN 15010 can include a
among the one or more attributes associated with the emu wired network . In one example , LAN 15010 can include a
lator and the one or more attributes associated with the MD . wired network based on wired Ethernet. In another example ,
In one or more embodiments , the one or attributes asso - 30 LAN 15010 can include a wired network based on wired
ciated with the emulator can include one or more of an Ethernet over one or more power lines . For instance , LAN
operating system , a platform , an emulated processor , an 15010 can include a wired network based on one or more of
emulated memory , an emulated integrated circuit , an emu - IEEE 1901, IEEE 1675 , HomePNA , and HomePlug , among
lated GPU , an emulated WiFi device ( e. g ., an emulated WiFi others. In one or more embodiments, LAN 15010 can
interface ), an emulated WiMAX device (e . g ., an emulated 35 include a wireless network . In one example , LAN 15010 can
WiMAX interface ), an emulated GPS device , an emulated include a wireless network based on wireless Ethernet ( e. g .,
GSM device ( e .g ., an emulated GSM interface ), an emulated based on IEEE 802 . 11 ) . In a second example, LAN 15010
CDMA device ( e.g ., an emulated CDMA interface ), an can include a wireless network based on Bluetooth (e .g .,
emulated satellite telephone network interface , an emulated based on IEEE 802 . 15 ). In a third example , LAN 15010 can
Bluetooth device ( e . g ., an emulated Bluetooth interface ), an 40 include a wireless network based on wireless USB . In
emulated ZigBEE device (e. g., an emulated ZigBEE inter another example , LAN 15010 can include a wireless net
face ), an emulated GPS device , an emulated Ethernet device work based on one or more of IEEE 802. 15 .4 and ZigBEE ,
( e. g ., an emulated Ethernet interface ), an emulated proxim - among others .
ity sensing device, an emulated magnetometer, an emulated As shown in FIG . 16 , MDD 8111 associated with MD
accelerometer , an emulated pressure transducer , an emulated 45 6111 can be stored via storage 15511 that can be coupled to
humidity sensing device , an emulated capacitive sensing local CS 15011 . As illustrated FIG . 17 , MDD 8112 associ
touch device , an emulated resistive sensing touch device , an ated with MD 6112 can be stored via storage 15512 that can
emulated electronic gyroscope, an emulated gas sensing be coupled to LAN 15010 .
device, an emulated image sensing device (e .g ., an emulated Turning now to FIGS . 18 - 20 , exemplary local network
digital camera ), an emulated sound output device , an emu- 50 systems that support recovery and /or restoration of data and
lated sound sensing device (e . g ., an emulated microphone ), configurations of physical mobile devices are illustrated ,
an emulated digital compass device , an emulated tempera - according to one or more embodiments. As shown in FIG .
ture sensing device, an emulated FM radio receiving device , 18 , MDD 8110 can be restored to MD 6110 . As illustrated
an emulated FM radio transmitting device, an emulated light in FIG . 19 , MDD 8111 can be restored to MD 6111 . As
sensing device , an emulated RFID sensing device , an emu- 55 shown in FIG . 20 , MDD 8112 can be restored to MD 6112 .
lated RFID transmitting device, an emulated NFC device , Turning now to FIG . 21 , an exemplary system that
and an emulated range determining device , among others . supports storage of data and configurations of physical
In one or more embodiments , the one or attributes asso - mobile devices is illustrated , according to one or more
ciated with the MD can include one or more of an operating embodiments . In one or more embodiments, MDD can be
system , a platform , a processor, a memory , an integrated 60 transferred , via a network , from a first computer system to
circuit, a GPU , a WiFi device ( e.g ., a WiFi interface ), a second computer system . As shown , local CS 15011 can be
WiMAX device (e . g ., a WiMAX interface), a GPS device , a coupled to network 1010 . As illustrated , MDD 8110 can be
GSM device ( e . g ., a GSM interface ), a CDMA device ( e . g ., transferred , via network 1010 , from CS 5210 to local CS
a CDMA interface ), a satellite telephone network interface , 15011 . As shown , MDD 8111 can be transferred , via net
a Bluetooth device (e. g ., a Bluetooth interface), a ZigBEE 65 work 1010 , from CS 5210 to local CS 15011 .
device ( e . g ., a ZigBEE interface ), a GPS device , an Ethernet Turning now to FIG . 22 , a network system that supports
device (e .g ., an Ethernet interface ), a proximity sensing network storage of data and configurations of physical
US 9 ,760 ,385 B2
39 40
mobile devices is illustrated , according to one or more In one example, the alert can include a display notification
embodiments . As shown , LAN 15010 can be coupled to that can open a window displayed via a display associated
network 1010 . In one or more embodiments , MDD can be with local CS 15011 . In another example , the alert can
transferred , via a first network , from a first computer system include one or more sounds. In one instance , the one ormore
to storage coupled to a second network . As illustrated , MDD 5 sounds can include one or more sounds of a telephone
8112 can be transferred , via network 1010 and LAN 15010 , ringing. In another instance, the one or more sounds can
from CS 5210 to storage 15512 . include one or more sounds of a message arriving .
Turning now to FIG . 23 , an exemplary local network In one or more embodiments , when emulator 6422 is not
system that supports installation of data and configurations running or not executing, a telephone system associated with
and utilization of an emulator is illustrated , according to one 10 emulator 6422 and /or a physical MD associated with emu
or more embodiments . As illustrated , a session initiation lator 6422 can function as if the physical MD is turned off ,
protocol (SIP ) gateway 23110 can be coupled to network is not functioning, and /or is not in communication with a
1010 . In one or more embodiments, SIP can be utilized in Node B , a base transceiver station , or a satellite . For
controlling one or more communications sessions. For example , a VoIP , a SMS, and/ or a MMS termination point
example , SIP can be utilized in controlling voice and /or 15 for emulator 6422 can be terminated .
video calls via a network protocol ( e. g ., an Internet proto - In one or more embodiments, local CS 15011 can include
col). For instance, SIP can be utilized in creating , modifying or be coupled to one or more of a camera , a display , a
two or more party communication sessions. In one or more microphone, and a speaker. In one example, the microphone
embodiments, the communications sessions can include one and the speaker associated with local CS 15011 can be
or more media streams. 20 utilized in one or more telephonic communications . In
As shown , a SMS gateway 23120 can be coupled to another example , the camera and the display associated with
network 1010 . In one or more embodiments , SMS gateway local CS 15011 can be utilized in one or more video
23120 can include a telecommunications device and/ or communications. In one or more embodiments, local CS
facility for sending and / or receiving SMS transmissions to 15011 can include one or more structures and / or function
and/ or from a telecommunications network . As illustrated , 25 alities described with reference to CD 2000 , CD 7811 ,
local CS 15011 can include a SIP /VoIP proxy 23210 coupled and/or MD 5510 .
to emulator 6422 . In one or more embodiments, SIP / VOIP Turning now to FIG . 24 , an exemplary system that
proxy 23210 and emulator 6422 can communicate via one or supports installation of data and configurations and utiliza
more processes and /or methods described herein . In one or tion of multiple emulators is illustrated , according to one or
more embodiments , VoIP and / or IP encapsulated SMS and / 30 more embodiments . As illustrated , a SIP gateway 24110 can
or multimedia messaging service (MMS) termination can be be coupled to network 1010 . In one or more embodiments ,
implemented and/ or provided within emulator 6422 . As SIP gateway 24110 can include one or more same or similar
shown, local CS 15011 can include a SMS proxy 23220 structures and /or functionalities as described with reference
coupled to emulator 6422 . In one or more embodiments, to SIP gateway 23110. As shown , a SMS gateway 24120 can
SIP /VOIP proxy 23210 and emulator 6422 can communicate 35 be coupled to network 1010 . In one or more embodiments
via one or more processes and / or methods described herein . SMS gateway 24120 can include one or more same or
In one or more embodiments, SIP gateway 23110 and similar structures and /or functionalities as described with
SIP / VoIP proxy 23210 can communicate via network 1010 . reference to SMS gateway 23120 .
For example , SIP gateway 23110 can route telephone calls As illustrated , CS 5210 can include a SIP /VOIP proxy
and /or video calls to and /or from SIP / VoIP proxy 23210 . In 40 24210 coupled to emulators 6422 -6424 . In one or more
one instance , SIP / VoIP proxy 23210 can receive can emulate embodiments , SIP / VoIP proxy 24210 and emulators 6422
one or more GSM and /or CDMA signals that can carry the 6424 can communicate via one or more processes and/ or
telephone calls and /or video calls and can provide the methods described herein . As shown , CS 5210 can include
signals that can carry the telephone calls and/or video calls a SMS proxy 24220 coupled to emulators 6422 -6424 . In one
to emulator 6422 . In another instance , SIP /VOIP proxy 45 or more embodiments, SMS proxy 24220 and emulators
23210 can receive one or more GSM and / or CDMA emu- 6422 -6424 can communicate via one or more processes
lated signals that can carry the telephone calls and/ or video and /or methods described herein . In one or more embodi
calls from emulator 6422 and can provide the telephone calls ments, VoIP and /or IP encapsulated SMS and /or MMS
and/ or video calls to SIP gateway 23110 . termination can be implemented and/ or provided within one
As illustrated , local CS 15011 can include a client app 50 or more emulators 6422 -6424 .
23230 coupled to emulator 6422. For example , client app In one or more embodiments, SIP gateway 24110 and
23230 and emulator 6422 can communicate via one or more SIP /VoIP proxy 24210 can communicate via network 1010 .
processes and / or methods described herein . In one or more For example , SIP gateway 24110 can route telephone calls
embodiments, local CS 15011 can be or include CCD 1111 , and /or video calls to and/ or from SIP /VoIP proxy 24210 . In
and client app 23230 can be or include client interface 55 one instance, SIP /VoIP proxy 24210 can receive can emulate
63021. For example , a user of local CS 15011 can control one ormore signals ( e . g ., GSM signals , CDMA signals , etc . )
and / or utilize emulator as a telephone via one or more of that can carry the telephone calls and/ or video calls and can
client interface 63021, interactive media interface, and provide signals that can carry the telephone calls and / or
media interface 6541. In one or more embodiments, one or video calls to one or more of emulators 6422 -6424. In
more interactions with emulator 6422 can be conducted via 60 another instance, SIP /VOIP proxy 24210 can receive one or
a web browser interfacing with a web server of emulator more emulated signals ( e . g ., emulated GSM signals , emu
6422 . lated CDMA signals , etc .) that can carry the telephone calls
In one or more embodiments , if an incoming call or an and /or video calls from one or more emulators 6422 -6424
incoming message occurs when the web browser that would and can provide the telephone calls and /or video calls to SIP
interface with the web server of emulator 6422 is not 65 gateway 24110 .
executing or is not directed to the web server of emulator In one or more embodiments , emulators 6422 - 6424 can
6422 , an alert can be provided to the user of local CS 15011 . be operated and /or controlled by respective CCDs 1111
US 9, 760 ,385 B2
42
1113 . For example , emulators 6422 -6424 can be operated other message (e.g., a text message ) to the other device
and/ or controlled by respective client interfaces 63021 associated with the user and /or the identification information
63023 . For instance , each of client interfaces 63021 -63023 associated with the user.
can include a web browser that operates and /or controls a Turning now to FIG . 25, an exemplary computing system
respective emulator. 5 is illustrated , according to one or more embodiments . As
In one or more embodiments, each emulator of emulators shown, CS 5210 can include a processor 25010 coupled to
6422 -6424 can provide and/ or implement authentication , a memory medium 25020 . In one or more embodiments,
memory medium 25020 can store data and /or instructions
authorization , and /or access control to determine that a user that can be executed by processor 25010 . For example ,
can interact with , utilize , and/ or operate the emulator. For 10 memory medium 25020 can store one or more APPs 25030
example , an emulator of emulators 6422 -6424 can receive 25032, an OS 25035 , MDDs 8110 -8112 , emulators 6422
identification information associated with a user and /or a 6424 , SIP /VOIP proxy 24210 , and/ or SMS proxy 24220 . For
user account and/ or can receive a password associated with instance , one or more of APPs 25030 - 25032 , OS 25035 ,
the user and /or the user account to determine that the user emulators 6422 -6424 , SIP /VoIP proxy 24210 , and SMS
can interact with , utilize , and /or operate the emulator
or.. InIn one
one 15 proxy 24220 can include instructions of an ISA associated
instance , the emulator can authenticate and/ or authorize the with processor 25010 . In one or more embodiments, one or
identification information and / or the password with a data more of the processes and /ormethods described here can be
base . In a second instance, the emulator can authenticate implemented when processor 25010 executes one or more of
and / or authorize the identification information and / or the APPs 25030 - 25032 , OS 25035 , emulators 6422 -6424, SIP /
password with at least one of a homelocation register (HLR ) 20 VoIP proxy 24210 , and SMS proxy 24220 .
and a visiting location register (VLR ), among others. In As illustrated , CS 5210 can include a network interface
another instance, the emulator can authenticate and /or 25040. In one example, network interface 2040 can interface
authorize the identification information and/ or the password with a wired network coupling , such as a wired Ethernet, a
with an authentication , authorization , and accounting T - 1 , a T -3 , an OC - 12 , a DSL modem , a PSTN , or a cable
(AAA ) server and/ or service . 25 modem , among others . In another example , network inter
In one or more embodiments , if an incoming call or an face 25040 can interface with a wireless network coupling ,
incoming message occurs when a web browser that would such as a satellite telephone system , a cellular telephone
interface with a web server of an emulator of emulators system , WiMax , or wireless Ethernet, among others .
6422 -6424 is not executing or is not directed to the web Turning now to FIG . 26 , an exemplary method of a
server of the emulator , an alert can be provided to a user via 30 computer system receiving and storing mobile device data is
illustrated , according to one or more embodiments. At
a CCD (e .g ., a CCD of CCDs 1111 - 1113) utilized by the user. 26010 , a computer system can receive one or more portions
In one example , the alert can include a display notification of MDD associated with a MD . In one example , CS 5210
that can open a window displayed via a display associated can receive, via network 1010 , the one or more portions of
with the CCD . In another example , the alert can include
crude one
one
or more sounds. In one instance , the one or more sounds can 35 MDD associated with the MD . In a second example , local
CS 15011 can receive, via LAN 15010 , the one or more
include one or more sounds of a telephone ringing. In portions of MDD associated with the MD . In another
another instance, the one or more sounds can include one or example, local CS can receive, via LAN 15010 , the one or
more sounds of a message arriving. more portions of MDD associated with the MD .
In one or more embodiments, if the emulator is not 40 In one ormore embodiments, the MDD can be associated
running or not executing, a telephone system associated with with one of MDs 6110 -6112 . In one example , the one or
the emulator and /or a physical MD associated with the more portions of MDD associated with the MD can be or
emulator can function as if the physical MD is turned off, is include an incremental backup and / or synchronization . In
not functioning , and / or is not in communication with a Node another example , the one or more portions ofMDD asso
B , a base transceiver station , or a satellite . For example , a 45 ciated with the MD can be or include all portions of the
VOIP , a SMS , and / or a MMS termination point for the MDD . For instance , all portions of the MDD can be or
emulator can be terminated . In one or more embodiments , an include a “ full” backup of the MD .
alternate notification process, method , and /or path can be At 26020 , the computer system can store the one or more
utilized if the emulator is not running or not executing. In portions of the MDD . In one example , the one or more
one example , a push notification can be provided to the CDD 50 portions of the MDD can be stored in non - volatile storage .
of the user. In another example , a text message (e . g ., a SMS In another example , the one or more portions of the MDD
message , an email message, etc .) indicating that an incom - can be stored in a random access memory that can provide
ing telephone call, voice message , and/or other message an emulator access to the one or more portions of the MDD
( e. g ., a text message ) can be provided to another device in a fashion that can be faster than access to the one or more
associated with the user. For instance , a SMS message can 55 portions of the MDD via non - volatile storage .
be provided to the other device ( e. g., a wireless telephone , Turning now to FIG . 27, an exemplary method of a
a pager, etc . ) associated with the user and / or the identifica mobile device receiving and storing mobile device data is
tion information associated with the user. illustrated , according to one or more embodiments . In one or
In one or more embodiments , providing the text message more embodiments, a MD can receive can receive one or
( e.g., a SMS message , an email message , etc .) that indicates 60 more portions of MDD associated with the MD , at 27010. In
an incoming telephone call, voice message, and/ or other one example , the MD can receive , via network 1010 , the one
message (e .g ., a text message ) can be based on a profile or more portions of MDD associated with the MD . In a
and/ or a configuration associated with the user. For example , second example , the MD can receive , via LAN 15010 , the
the profile and / or a configuration associated with the user one or more portions of MDD associated with the MD .
can include a policy that can direct providing the text 65 In one or more embodiments , the one or more portions of
message ( e .g ., a SMS message , an email message , etc. ) that MDD associated with the MD can be or include one or more
indicates an incoming telephone call , voice message, and/or incremental synchronizations and/or backups. In one or
US 9 ,760 ,385 B2
43 44
more embodiments, the one or more portions of MDD way 24110 . In a second example , the first telecommunica
associated with the MD can be or include one or more tions signal can be received from SMS gateway 24120 .
changes of the MDD , after the MDD has been utilized by an In a third example , the first telecommunications signal
emulator. In one example , a user can utilize the MDD via the can include a SIP telecommunications signal. For instance ,
MD , utilize the MDD via an emulator associated with the 5 SIP /VoIP proxy 24210 can receive the SIP telecommunica
MD , and receive the one or more changes of the MDD , after tions signal. In a fourth example, the first telecommunication
the MDD has been utilized by an emulator.
In another example , a user can utilize the MDD via the signal can include a VoIP telecommunications signal. For
instance, SIP /VoIP proxy 24210 can receive the VoIP tele
MD , an emulator associated with the MD can utilize the communications signal. In another example, the first tele
MDD via the user and /or another user (e.g., a sales repre - 10 communication signal can include a SMS or MMS telecom
sentative , a service representing , a representative of a retail munications signal. For instance , SMS proxy 24220 can
establishment, a representative of a service provider, an
artificial intelligence system , a neural network system , etc .), receive the SMS or MMS telecommunications signal.
and receive the one or more changes of the MDD , after the At 28020 , the first telecommunication signal can be
MDD has been utilized by the emulator via the user and /or 15 transformed into a second telecommunications signal. In one
the other user. For instance , the other user (e . g ., a service example , the first telecommunications signal can be trans
representative ) can assist the user to configure his or her MD formed into a CDMA telecommunications signal. In one
via providing the MDD to an emulator and can change one instance, SIP /VOIP proxy 24210 can transform the first
or more portions of the MDD ( e. g., one or more configu telecommunications signal into the CDMA telecommunica
rations of the MD associated with the MDD ), and the one or 20 tions signal. In another instance , SMS proxy 24220 can
more portions of the MDD can be received by the MD after transform the first telecommunications signal into the
the other user assists the user to configure his or her MD via CDMA telecommunications signal. In another example , the
the emulator. first telecommunications signal can be transformed into a
In one or more embodiments , the MD can store the one or GSM telecommunications signal. In one instance , SIP /VOIP
more portions of the MDD , at 27020 . In one example , the 25 proxy 24210 can transform the first telecommunications
MD can store the one or more portions of MDD that include signal into the GSM telecommunications signal. In another
the one or more incremental synchronizations and /or back instance , SMS proxy 24220 can transform the first telecom
ups. In a second example , the MD can store the one or more munications signal into the GSM telecommunications sig
portions ofMDD that include the one or more changes of the nal.
MDD , after the MDD has been utilized by an emulator. In 30 At 28030 , the second communications signal can be
another example , the MD can store the one or more portions provided to an emulator. In one example , SIP / VoIP proxy
of MDD that include the one or more changes of the MDD 24210 can provide the second telecommunications to the
after the MDD has been utilized by an emulator that was emulator ( e . g ., an emulator of emulators 6422 -6424 ). In
utilized by another user (e .g ., a sales representative , a another example, SMS proxy 24220 can provide the second
service representing, a representative of a retail establish - 35 telecommunications to the emulator ( e . g ., an emulator of
ment, a representative of a service provider, etc .) or an emulators 6422 -6424 ).
assistance system (e . g ., an artificial intelligence system , a In one or more embodiments , the method illustrated in
neural
ne network system , etc . ). FIG . 28 can be repeated to transform additional telecom
In one or more embodiments , the one or more portions of munications signals and provide the transformed telecom
MDD can be associated with a first MD , and a second MD , 40 munications signals to one or more emulators . In one or
different from the first MD , can receive the one or more more embodiments, the second telecommunications signals
portions of MDD associated with the first MD , at 27010 . In can be routed to different emulators based on different
one example , the MDD can be a base or a template for network identifications associated with the first telecommu
multiple MDs. For instance , MDD that can be a base or a nications signals . For example, the different network iden
template can be a base or a template formultiple MDs of a 45 tifications associated with the first telecommunications sig
sales group of a company. In a second example, the second nals can include different IP (Internet protocol) addresses
MD can be a replacement for the first MD . In another (e .g ., different IP version 4 addresses, different IP version 6
example , the second MD can augment and /or be an addition addresses , etc .), different MAC (media access control)
to the first MD . In one instance, the first MD can be or addresses , different electronic serial numbers (ESNs), dif
include a mobile wireless telephone , and the second MD can 50 ferent mobile information numbers (MINs ), and different
be or include a tablet computing device . In a second mobile directory numbers (MDNs), among others .
instance, the first MD can be or include a first mobile Turning now to FIG . 29 , an exemplary method of trans
wireless telephone associated with a first MIN , and the forming telecommunications signals is illustrated , according
second MD can be or include a second wireless telephone to one or more embodiments . At 29010 , a first telecommu
associated with a second MIN , different from the first MIN . 55 nication signal can be received . In one or more embodi
In another instance , the first MD can be or include a first ments , the telecommunication signal can be received from
mobile wireless telephone , and the second MD can be or an emulator ( e . g ., an emulator of emulators 6422 -6424 . In
include an emulation of the first mobile wireless telephone . one example , the first telecommunications signal can
In one or more embodiments , the second MD can store the include a CDMA telecommunications signal. In one
one or more portions of the MDD , at 27020 . For example , 60 instance , SIP /VOIP proxy 24210 can receive the CDMA
the second MD can store the one or more portions ofMDD telecommunications signal. In another instance, SIP /VOIP
associated with the first MD . proxy 24210 can receive the CDMA telecommunications
Turning now to FIG . 28 , an exemplary method of trans signal. In another example, the first telecommunication
forming telecommunications signals is illustrated , according signal can include a GSM telecommunications signal. In one
to one or more embodiments. At 28010 , a first telecommu- 65 instance , SIP /VOIP proxy 24210 can receive the GSM tele
nications signal can be received . In one example , the first communications signal. In another instance , SMS proxy
telecommunications signal can be received from SIP gate - 24220 can receive the GSM telecommunications signal.
US 9 , 760 , 385 B2
45 46
At 29020 , the first telecommunications signal can be client app 23230 . In another example, emulator 6423 can
transformed into a second telecommunications signal. In one provide the indication of the incoming telephone call to the
example , the first telecommunications signal can be trans - user via client interface 63022. In one or more embodiments ,
formed into a SIP telecommunications signal. For instance , client interface 63022 can be or include a web browser.
SIP / VOIP proxy 24210 can transform the first telecommu- 5 At 30040 , the emulator can provide , to the telecommu
nications signal into the SIP telecommunications signal. In nications network , a signal that indicates that it is providing
a second example , the first telecommunications signal can the indication of the incoming telephone call to the user. For
be transformed into a VoIP telecommunications signal. For example , the signal that indicates that the emulator is
instance , SIP /VOIP proxy 24210 can transform the first
telecommunications signal into the VoIP telecommunica - 10 the user canthebeindication
providing of the incoming telephone call to
tions signal. In a third example , the first telecommunications via SIP . In one instance, the
provided to telecommunications network
emulator 6422 can provide the
signal can be transformed into a SMS telecommunications signal that indicates that emulator 6422 is providing the
signal. For instance , SMS proxy 24220 can transform the
first telecommunications signal into the SMS telecommuni indication of the incoming telephone call to the user can be
st telecommuni. 15
cations signal . In another example , the first telecommuni- 15 wayprovided to the telecommunications network via SIP gate
pro 23110 and via SIP /VoIP proxy 23210, illustrated
cations signal can be transformed into a MMS telecommu in FIG .
nications signal. For instance , SMS proxy 24220 can 23 . In another instance , emulator 6423 can provide the
transform the first telecommunications signal into the MMS signal that indicates that emulator 6423 is providing the
telecommunications signal. indication of the incoming telephone call to the user can be
At 29030 , the second telecommunications signal can be 20 provided to the telecommunications network via SIP gate
provided to a telecommunications gateway . In one example , way 24410 and via SIP /VOIP proxy 24210 , illustrated in
SIP /VoIP proxy 24210 can provide the second telecommu- FIG . 24 .
nications signal to SIP gateway 24110 . In another example , At 30050 , the emulator can receive user input that indi
SMS proxy 24220 can provide the second telecommunica - cates that the telephone call is to be answered . In one
tions signal to SMS gateway 24120 . 25 example , emulator 6422 can receive the user input that
In one or more embodiments, the method illustrated in indicates that the telephone call is to be answered via client
FIG . 29 can be repeated to transform additional telecom - app 23230 , illustrated in FIG . 23 . In another example ,
munications signals and provide the transformed telecom - emulator 6423 can receive the user input that indicates that
munications signals to one or more telecommunications the telephone call is to be answered via client interface
gateways . In one or more embodiments , the second tele - 30 63022 , illustrated in FIG . 6E .
communications signals can be routed to different telecom - At 30060, the emulator can provide, to the telecommu
munications gateways and/or endpoints based on different nications network , a signal that indicates the user has
network identifications associated with the first telecommu answered the call. For example , the signal that indicates the
nications signals . For example , the different network iden - user has answered the call can be provided to the telecom
tifications associated with the first telecommunications sig - 35 munications network via SIP . In one instance , emulator 6422
nals can include different IP addresses (e . g ., different IP can provide the signal that indicates the user has answered
version 4 addresses, different IP version 6 addresses , etc .), the call can be provided to the telecommunications network
different MAC addresses, different ESNs, different MINS, via SIP gateway 23110 and via SIP /VoIP proxy 23210 . In
and different MDNs, among others . another instance , emulator 6423 can provide the signal that
In one or more embodiments , the methods illustrated in 40 indicates the user has answered the call can be provided to
FIGS . 28 and 29 can be utilized with local CS 15011 , as well the telecommunications network via SIP gateway 24410 and
as CS 5210 . For example , SIP /VOIP proxy 23210 of local CS via SIP / VoIP proxy 24210 .
15011 can be utilized in place of SIP / VoIP proxy 24210 of At 30070 , the emulator can receive an acknowledgement
CS 5210 , and SMS proxy 23220 of local CS 15011 can be from the telecommunications network . For example , a signal
utilized in place of SIP / VOIP proxy 24220 of CS 5210 . 45 that indicates the acknowledgement can be received from
Turning now to FIG . 30, an exemplary method of utilizing the telecommunications network via SIP . In one instance ,
an emulator is illustrated , according to one or more embodi emulator 6422 can receive the signal that indicates the
ments . At 30010 , an emulator can receive an invite from a acknowledgement from the telecommunications network via
telecommunications network . In one ormore embodiments , SIP gateway 24110 and via SIP / VOIP proxy 24210 . In
the invite can indicate that a telephone is calling the emu - 50 another instance, emulator 6423 can receive the signal that
lator. indicates the acknowledgement from the telecommunica
In one or more embodiments , receiving the invite can tions network via SIP gateway 24410 and via SIP /VOIP
include receiving the signal that indicates the invite . For proxy 24210 .
example , receiving, via SIP, the signal that indicates the At 30080 , the emulator can exchange data (e .g ., RTP
invite can include receiving the invite via one or more of a 55 (real - time protocol) data ) with the telecommunications net
SIP gateway and a SIP proxy. In one instance, emulator 6422 work . In one example , emulator 6422 can exchange the data
can receive the signal that indicates the invite via SIP with the telecommunications network via SIP gateway
gateway 23110 and via SIP /VoIP proxy 23210 , illustrated in 23110 and via SIP /VoIP proxy 23210 . In another example,
FIG . 23 . In another instance , emulator 6423 can receive the emulator 6423 can exchange the data with the telecommu
signal that indicates the invite via SIP gateway 24110 and 60 nications network via SIP gateway 24410 and via SIP /VOIP
via SIP /VoIP proxy 24210 , illustrated in FIG . 24 . proxy 24210 . In one or more embodiments , the RTP can
At 30020 , the emulator can provide a signal to the include a packet format for delivering audio and/ or video via
telecommunications network that indicates it is trying to an IP network .
summon a user ( e . g ., a called party ) . At 30030 , the emulator At 30090, the emulator can receive user input that indi
can provide an indication of an incoming telephone call to 65 cates that the telephone call is to be ended . In one example ,
the user. In one example , emulator 6422 can provide the emulator 6422 can receive the user input that indicates that
indication of the incoming telephone call to the user via the telephone call is to be ended via client app 23230 . In
US 9, 760 ,385 B2
47 48
another example , emulator 6423 can receive the user input At 31040 , the emulator can receive a signal from the
that indicates that the telephone call is to be ended via client telecommunications network that indicates the endpoint is
interface 63022 . trying to summon a second user ( e. g ., a called party ). In one
At 30100 , the emulator can provide a BYE request to the or more embodiments , receiving the signal from the tele
telecommunications network . For example , a signal that 5 communications network that indicates the endpoint is try
indicates the BYE request can be provided to the telecom ing to summon the second user can include receiving , via
munications network via SIP . In one instance, emulator 6422 SIP , the signal from the telecommunications network that
can provide the signal that indicates the BYE request to the indicates the endpoint is trying to summon the second user.
telecommunications network via SIP gateway 23110 and via
SIP / VOIP proxy 23210 . In another instance , emulator 6423 10 Inindicates
one example , emulator 6422 can receive the signal that
the endpoint is trying to summon the second user
can provide the signal that indicates the BYE request to the via SIP gateway 23110 and via SIP / VOIP proxy 23210 . In
telecommunications network via SIP gateway 24410 and via another example, emulator 6423 can receive the signal that
SIP / VoIP proxy 24210 . indicates the endpoint is trying to summon the second user
At 30110 , the emulator can receive an OK acknowledge
15 via SIP gateway 24110 and via SIP /VOIP proxy 24210 .
ment from the telecommunications network . For example, a 15 Via
signal that indicates the OK acknowledgement can be At 31050 , the emulator can receive , from the telecom
received from the telecommunications network via SIP. In munications network , a signal that indicates that the end
one instance , emulator 6422 can receive the signal that point is providing an indication of an incoming telephone
indicates the OK acknowledgement from the telecommuni- call to the second user. In one or more embodiments ,
cations network via SIP gateway 23110 and via SIP /VoIP 20 receiving the signal that indicates that the endpoint is
proxy 23210 . In another instance , emulator 6423 can receive providing the indication of the incoming telephone call to
the signal that indicates the OK acknowledgement from the the second user can include receiving the signal that indi
telecommunications network via SIP gateway 24410 and via cates that the endpoint is providing the indication of the
SIP /VOIP proxy 24210 . incoming telephone call to the second user via SIP . In one
Turning now to FIG . 31 , an exemplary method of utilizing 25 example , emulator 6422 can receive the signal that indicates
an emulator is illustrated , according to one or more embodi- that the endpoint is providing the indication of the incoming
ments. At 31010 , an emulator can receive , from a first user, telephone call to the second user via SIP gateway 23110 and
user input associated with a network identification associ- via SIP /VOIP proxy 23210 . In another example , emulator
ated with an endpoint ( e . g., a telephony device configured to 6423 can receive the signal that indicates that the endpoint
be operated by a user, another emulator, a wireless tele - 30 is providing the indication of the incoming telephone call to
phone, a wired telephone, an auto -attendant, a conferencing the second user via SIP gateway 24110 and via SIP /VOIP
system , etc .) of a telecommunications network . In one proxy 24210 .
example , the user input from the first user can include a In one or more embodiments, the emulator can indicate ,
selection from a contacts list and /or database . For instance , to the first user, that the endpoint is providing the indication
each selectable element of the contacts list and / or database 35 of the incoming telephone call to the second user. In one
can be associated with at least one network identification example , the emulator can indicate , to the first user, that the
associated with an endpoint of the telecommunications endpoint is providing the indication of the incoming tele
network . In another example , the user input from the first phone call to the second user via a message and/ or a graphic .
user can include a telephone number. In one or more In one instance, emulator 6422 can display , to the first user,
embodiments , the network identification associated with the 40 a message and /or a graphic that the endpoint is providing the
endpoint can include one or more of an IP addresses ( e . g ., an indication of the incoming telephone call to the second user
IP version 4 address, an IP version 6 address, etc .), a MAC via client app 23230 . In another instance, emulator 6423 can
address , an ESN , a MIN , and a MDN , among others. display, to the first user, a message and /or a graphic that the
At 31020 , an emulator can provide, to a telecommunica endpoint is providing the indication of the incoming tele
tions network , a signal that indicates the network identifi- 45 phone call to the second user via client interface 63022 .
cation associated with the endpoint. In one or more embodi- In another example , the emulator can indicate , to the first
ments , providing the signal that indicates the network user, that the endpoint is providing the indication of the
identification associated with the endpoint can include pro - incoming telephone call to the second user via one ormore
viding the signal that indicates the network identification sounds . In one instance , emulator 6422 can indicate , to the
associated with the endpoint via SIP . In one example , 50 first user, via a speaker associated with local CS 15011 . In
emulator 6422 can provide the signal that indicates the another instance , emulator 6422 can indicate , to the first
network identification associated with the endpoint via SIP user, via a speaker associated with CCD 1112 . In one or
gateway 23110 and via SIP /VoIP proxy 23210 , illustrated in more embodiments, one or more sounds that indicate, to the
FIG . 23 . In another example , emulator 6423 can provide the first user , that the endpoint is providing the indication of the
signal that indicates the network identification associated 55 incoming telephone call to the second user can include a
with the endpoint via SIP gateway 24110 and via SIP /VOIP
proxy 24210 , illustrated in FIG . 24 . At 31060 , the emulator can receive, from the telecom
At 31030 , the emulator can provide an invite to a tele munications network , a signal that indicates the second user
communications network . In one or more embodiments , has answered . For example , the signal that indicates the
providing the invite to the telecommunications network can 60 second user has answered the telephone call can be received
include providing, to the telecommunications network , a from the telecommunications network via SIP . In one
signal that indicates the invite via SIP . In one example , instance , emulator 6422 can receive the signal that indicates
emulator 6422 can provide the signal that indicates the invite the second user has answered the telephone call can be
via SIP gateway 23110 and via SIP /VOIP proxy 23210 . In received from the telecommunications network via SIP
another example, emulator 6423 can receive the signal that 65 gateway 23110 and via SIP /VoIP proxy 23210 . In another
indicates the invite via SIP gateway 24110 and via SIP /VOIP instance , emulator 6423 can receive the signal that indicates
proxy 24210. the second user has answered the telephone call can be
US 9, 760 ,385 B2
49 50
received from the telecommunications network via SIP net, WiFi, Z -Wave, IEEE 802 . 11 , IEEE 802 .15, IEEE
gateway 24410 and via SIP /VoIP proxy 24210 . 802 .15 .4 , and a proprietary wireless protocol, among others .
At 31070, the emulator can provide an acknowledgement For example , devices of the PAN can communicate via one
to the telecommunications network . For example , a signal or more ISM (industrial, scientific and medical) bands. For
that indicates the acknowledgement can be provided to the 5 instance , an ISM band can include a frequency range of
telecommunications network via SIP . In one instance, emu 6 .765 -6 .795 Mhz, 433.05 - 434. 79 Mhz, 902 - 928 Mhz , 2 . 4
lator 6422 can provide the signal that indicates the acknowl 2 . 5 Ghz, 5 .725 -5 .875 Ghz , or 24 . 0 - 24.25 Ghz, among oth
edgement to the telecommunications network via SIP gate ers . In one or more embodiments, devices of the PAN can
way 23110 and via SIP /VOIP proxy 23210 . In another communicate via one or more of a CAN ( controller area
instance, emulator 6423 can provide the signal that indicates 10 network ) protocol, Flexray, SPI (serial peripheral intercon
the acknowledgement to the telecommunications network nect ), USB , Ethernet, IEEE 802. 3 , Firewire , IEEE 1394 , 1- C
via SIP gateway 24410 and via SIP /VoIP proxy 24210 . (inter - integrated circuit ), Thunderbolt , and a proprietary
At 31080 , the emulator can exchange data (e .g ., RTP wired protocol, among others.
(real -time protocol) data ) with the telecommunications net- In one ormore embodiments , CS 5210 can emulate a PAN
work . In one example , emulator 6422 can exchange the data 15 that couples two or more of emulators 6420 -6422 . For
with the telecommunications network via SIP gateway example , one or more of emulators 6420 -6422 can be
23110 and via SIP /VOIP proxy 23210 . In another example , configured such that a first physical device , emulated by a
emulator 6423 can exchange the data with the telecommu- first emulator, can work and/or function with a second
nications network via SIP gateway 24410 and via SIP /VOIP physical device , emulated by a second emulator.
proxy 24210 . In one or more embodiments , the RTP can 20 In one instance , illustrated in FIG . 32 , a CFG 32310 of a
include a packet format for delivering audio and/or video via MD 32112 can be provided to emulator 6420 ; emulator 6422
an IP network . can be configured with CFG 5310 and coupled to emulator
At 31090 , the emulator can receive user input, from the 6420 with CFG 32310 ; and one or more of CFG 5310 and
first user, that indicates that the telephone call is to be ended . CD 2000 can be configured and/ or can be provided to user
In one example , emulator 6422 can receive the user input, 25 5010 in accordance with one or more systems, methods ,
from the first user, that indicates that the telephone call is to and / or processes described herein ( e . g ., with reference to
be ended via client app 23230 . In another example , emulator FIGS. 5A - 5H ). In another instance , illustrated in FIG . 33,
6423 can receive the user input, from the first user, that CFG 32310 , stored via one or more of storages 6120 -6122 ,
indicates that the telephone call is to be ended via client can be provided to emulator 6420 ; emulator 6422 can be
interface 63022 . 30 configured with CFG 5310 and coupled to emulator 6420
At 31100 , the emulator can provide a BYE request to the with CFG 32310 ; and one or more of CFG 5310 and CD
telecommunications network . For example , a signal that 2000 can be configured and /or can be provided to user 5010
indicates the BYE request can be provided to the telecom - in accordance with one or more systems, methods, and / or
munications network via SIP. In one instance , emulator 6422 processes described herein (e .g ., with reference to FIGS .
can provide the signal that indicates the BYE request to the 35 5A -5H ).
telecommunications network via SIP gateway 23110 and via Turning now to FIG . 34 , an exemplary method of emu
SIP /VoIP proxy 23210 . In another instance , emulator 6423 lating two or more coupled mobile devices is illustrated ,
can provide the signal that indicates the BYE request to the according to one or more embodiments . At 34010 , two or
telecommunicationsnetwork via SIP gateway 24410 and via more physical mobile devices can be emulated . For
SIP / VoIP proxy 24210 . 40 example , two or more of emulators 6420 -6425 can emulate
At 31110 , the emulator can receive an OK acknowledge two or more physical mobile devices . For instance , at least
ment from the telecommunications network . For example , a two of the emulated physical devices can be different
signal that indicates the OK acknowledgement can be physical devices.
received from the telecommunications network via SIP . In At 34020 , a first configuration can be received . For
one instance , emulator 6422 can receive the signal that 45 example , CS 5210 can receive the first configuration . In one
indicates the OK acknowledgement from the telecommuni - instance , the first configuration can be CFG 32310 , and CS
cations network via SIP gateway 23110 and via SIP /VOIP 5210 can receive CFG 32310 , via network 1010 , from MD
proxy 23210 . In another instance , emulator 6423 can receive 32310 , as illustrated in FIG . 32 . In another instance , CS
the signal that indicates the OK acknowledgement from the 5210 can receive CFG 32310 from at least one of storages
telecommunications network via SIP gateway 24410 and via 50 6120 -6122 , as illustrated in FIG . 33 .
SIP /VoIP proxy 24210 . At 34030 , a first emulator of the two or more emulators
Turning now to FIGS. 32 and 33 , exemplary block can be configured with the first configuration . For example ,
diagrams of emulators coupled together is illustrated , the first emulator can be emulator 6420, and emulator 6420
according to one or more embodiments . As shown , emulator can be configured with CFG 32310 , as illustrated in FIGS.
6420 ( e . g ., a first emulator) can be coupled to emulator 6421 55 32 and 33. At 34040, a coupling of the first emulator and a
( e. g ., a second emulator ), and emulator 6420 ( e. g ., the first second emulator can be emulated . For example , the second
emulator) can be coupled to emulator 6422 (e. g., a third emulator can be emulator 6422 , and CD 5210 can emulate
emulator). a coupling of emulator 6420 with emulator 6422 . In one
In one or more embodiments, two or more devices can instance , the coupling of emulator 6420 with emulator 6422
work and / or function together. For example , the two or more 60 can be an emulated wired coupling . In another instance , the
devices can communicate via a personal area network coupling of emulator 6420 with emulator 6422 can be an
( PAN ) . For instance , the PAN can include one ormore of a emulated wireless coupling .
wired network and a wireless network . In one or more At 34050 , data can be received via a network . For
embodiments, devices of the PAN can communicate via one example , CS 5210 can receive data from user 5010 via
or more of Bluetooth ( e . g ., via one or more of Bluetooth 65 network 1010 . At 34060 , the received data can be provided
basic rate , Bluetooth enhanced data rate , Bluetooth low to the second emulator. For example , the received data can
energy , etc .), ZigBEE , NFC , wireless USB , wireless Ether - be provided to emulator 6422 .
US 9, 760 ,385 B2
51 52
At 34070 a second configuration can be created . For In one or more embodiments, a computer system , a
example , the received data can be utilized to configure the computing device , and /or a computer can be broadly char
second emulated computing device and /or create a second acterized to include any device that includes a processor that
configuration ( e. g., CFG 5310 ). For instance, CFG 5310 can executes instructions from a memory medium . For example ,
include one or more sound recordings ( e . g ., MP3 songs , 5 a processor ( e . g ., a central processing unit or CPU ) can
musical pieces , voice memos , conversations, lectures, etc . ), execute instructions from a memory medium that stores the
one or more contacts ( e . g ., contact information associated instructions which can include one or more software pro
with people , places , companies, etc .), one or more book - grams in accordance with one or more of methods , pro
marks (e . g ., web browser book marks ), one or more ebooks , cesses , and/ or flowcharts described herein . For instance , the
one or more social networking sites' respective information 10 processor and the memory medium , that stores the instruc
( e.g ., Facebook information , Twitter information , MySpace tions which can include one or more software programs in
information , Foursquare information, Last. fm information , accordance with one or more ofmethods, processes, and /or
Google + information , etc .) associated with user 5010 , and/ or flowcharts described herein , can form one or more means for
one or more mobile device apps ( e . g ., smart phone apps , one or more functionalities described with references to
tablet computer apps, music player apps , in - vehicle apps, 15 methods, processes, and /or flowcharts described herein . In
etc .), among others, based on and/ or created via the received one or more embodiments, a memory medium can be and /or
data . can include an article of manufacture, a program product ,
At 34080 , the second configuration can be stored . In one and / or a software product. For example , the memory
example , the second configuration can be stored via storage medium can be coded and / or encoded with instructions in
5121 . In another example , the second configuration can be 20 accordance with one or more of methods , processes, and/ or
stored via one or more of storages 6120 -6122 , illustrated in flowcharts described herein to produce an article of manu
FIG . 6E . At 34090 , user input indicating a delivery method facture , a program product, and / or a software product.
can be received . In one example , CS 5210 can receive the One or more of the method elements described herein
user input indicating the delivery method . In another and/or one or more portions of an implementation of a
example , merchant CD 5114 can receive the user input 25 method element can be repeated , can be performed in
indicating the delivery method . varying orders, can be performed concurrently with one or
At 34100 , a delivery method can be determined . In one more of the other method elements and/ or one or more
example , CS 5210 can determine the delivery method. In portions of an implementation of a method element, or can
another example , merchant CD 5114 can determine the be omitted , according to one or more embodiments . In one
delivery method . In one or more embodiments , delivery of 30 or more embodiments, concurrently can mean simultane
the second configuration can include one or more of deliv - ously . In one or more embodiments, concurrently can mean
ering the configuration via the network (e . g ., network 1010 ) apparently simultaneously according to some metric . For
and delivering a physical computing device configured with example , two tasks can be context switched such that such
the second configuration . that they appear to be simultaneous to a human . In one
If the delivery of the second configuration ( e . g ., CFG 35 instance, a first task of the two tasks can include a first
5310 ) includes delivering the configuration via the network method element and/or a first portion of a first method
( e . g ., network 1010 ), the second configuration can be pro - element. In a second instance , a second task of the two tasks
vided to the user via the network , at 34110 . For example , can include a second method element and / or a first portion
CFG 5310 can be delivered to CCD 1112 and/ or to MD 5510 of a second method element. In another instance , a second
via network 1010 , as illustrated in FIG . 5H . If the delivery 40 task of the two tasks can include the first method element
of the second configuration ( e . g ., CFG 5310 ) includes deliv - and/ or a second portion of the first method element. Further,
ering the physical computing device configured with the one or more of the system elements described herein can be
second configuration , the physical computing device can be omitted and additional system elements can be added as
configured with the second configuration , at 34120 , and the desired , according to one or more embodiments. Moreover,
physical computing device ( e . g ., CD 2000 ) can be provided 45 supplementary , additional, and /or duplicated method ele
to a physical delivery service , at 34130. For instance , the ments can be instantiated and /or performed as desired ,
physical delivery service can provide the physical comput - according to one or more embodiments .
ing device (e .g ., CD 2000 ) as described herein . One or more modifications and/ or alternatives of the
In one or more embodiments , the term “memory medium " embodiments described herein may be apparent to those
can mean a “memory ” , a “memory device ” , and / or “ tangible 50 skilled in the art in view of this description . Hence , descrip
computer readable storagemedium " . In one example , one or tions of the embodiments , described herein , are to be taken
more of a “ memory ” , a “memory device ” , and “ tangible and /or construed as illustrative and /or exemplary only and
computer readable storage medium ” can include volatile are for the purpose of teaching those skilled in the art the
storage such as SRAM , DRAM , Rambus RAM , EDO RAM , generalmanner of carrying out an invention described in the
random access memory, etc . In another example , one or 55 appended claims. In one or more embodiments, one or more
more of a "memory ” , a “ memory device ” , and “ tangible materials and / or elements can be swapped or substituted for
computer readable storage medium " can include nonvolatile those illustrated and described herein . In one or more
storage such as a CD -ROM , a DVD -ROM , a floppy disk , a embodiments , one or more parts and /or processes can be
magnetic tape, EEPROM , EPROM , flash memory , reversed , and /or certain one or more features of the
NVRAM , FRAM , a magnetic media ( e . g ., a hard drive ), 60 described one or more embodiments can be utilized inde
optical storage , etc. In one or more embodiments, a memory pendently , as would be apparent to one skilled in the art after
medium can include one or more volatile storages and /or having the benefit of this description .
one or more nonvolatile storages . In one or more embodi What is claimed is:
ments , one or more of a memory medium , a memory, a 1 . A method , comprising:
memory device, and a tangible computer readable storage 65 concurrently emulating a plurality of emulated mobile
medium can be or include non - transient memory and / or devices , wherein each of the plurality of emulated
storage . mobile devices corresponds to a physical mobile
US 9, 760 ,385 B2
53 54
device , wherein at least two of the plurality of emulated processing unit , a second graphics processing unit, a
mobile devices emulate two different physical mobile second WiFi interface device , and a second Bluetooth
devices, wherein a first emulated mobile device of the device .
plurality of emulated mobile devices that corresponds 9 . The method of claim 1, wherein the second physical
to a first physical mobile device of the two different 5 mobile device includes at least one of an in - vehicle com
physical mobile devices includes a first physical pro puting device and a wearable device .
cessor, a first physical memory , and a first physical 10 . A system , comprising :
integrated circuit , wherein a second emulated mobile a processor ;
device of the plurality of emulated mobile devices that a memory coupled to the processor;
corresponds to a second physical mobile device of the 10
two different physical mobile devices includes a second a network interface coupled to the processor and config
physical processor, a second physical memory, and a ured to be coupled to a network ;
second physical integrated circuit , and wherein at least wherein the memory includes instructions that when
one of the first physical processor, the first physical executed by the processor, the system :
memory, and the first physical integrated circuit is 15 concurrently emulates a plurality of emulated mobile
different from a corresponding one of the second physi devices , wherein each of the plurality of emulated
cal processor, the second physical memory , and the mobile devices corresponds to a physical mobile
second physical integrated circuit ; device , wherein at least two of the plurality of
receiving a first configuration ; emulated mobile devices emulate two different
configuring the first emulated mobile device with the first 20 physical mobile devices, wherein a first emulated
configuration ; mobile device of the plurality of emulated mobile
emulating a coupling of the first emulated mobile device devices that corresponds to a first physical mobile
with the second emulated mobile device ; device of the two different physical mobile devices
receiving, from a user via a network , data associated with includes a first physical processor, a first physical
a network identifier ; 25 memory , and a first physical integrated circuit,
providing , based on the network identifier, the received wherein a second emulated mobile device of the
data to the second emulated mobile device ; plurality of emulated mobile devices that corre
creating a second configuration based on the received sponds to a second physicalmobile device of the two
data ; and different physical mobile devices includes a second
providing the second configuration to the user. 30
30 physical processor, a second physicalmemory , and a
2 . The method of claim 1 , further comprising: second physical integrated circuit , and wherein at
providing the second physicalmobile device to a physical least one of the first physical processor, the first
delivery service . physical memory , and the first physical integrated
3 . The method of claim 2 , further comprising : circuit is different from a corresponding one of the
configuring the second physical mobile device with the 35 second physical processor, the second physical
second configuration . memory, and the second physical integrated circuit ;
4 . The method of claim 1, wherein emulating the coupling receives a first configuration ;
of the first emulated mobile device with the second emulated configures the first emulated mobile device with the
mobile device includes emulating a wireless coupling of the first configuration ;
first emulated mobile device with the second emulated 40 emulates a coupling of the first emulated mobile device
mobile device . with the second emulated mobile device ;
5. Themethod ofclaim 1, wherein emulating the coupling receives , from a user via the network , data associated
of the first emulated mobile device with the second emulated with a network identifier ;
mobile device includes emulating a wired coupling of the provides , based on the network identifier, the received
first emulated mobile device with the second emulated 45 data to the second emulated mobile device ;
mobile device. creates a second configuration based on the received
6 . The method of claim 1, wherein the second configu data ; and
ration includes at least one of a sound recording, contact provides the second configuration to the user.
information , login information , online account information , 11 . The system of claim 10 , wherein the memory further
a bookmark , an ebook , a social networking site information , 50 includes instructions that when executed by the processor,
an a mobile device application . the system :
7 . The method of claim 1, wherein providing the second marks packaging of the physical mobile device with
configuration to the user includes providing the second identity information associated with the user and physi
configuration to the user via the network . cal address information associated with the user.
8 . The method of claim 1, 55 12 . The system of claim 10 , wherein the memory further
wherein the first physical integrated circuit includes at includes instructions that when executed by the processor,
least one of a first global positioning system (GPS) the system :
device, a firstGSM ( global system for mobile commu - configures the second physical mobile device with the
nications ) telephone network interface device, a first second configuration .
code division multiple access (CDMA ) telephone net - 60 13 . The system of claim 10 , wherein when the system
work interface device , a first graphics processing unit, emulates the coupling of the first emulated mobile device
a first graphics processing unit, a first WiFi interface with the second emulated mobile device , the system emu
device, and a first Bluetooth device; and lates a wireless coupling of the first emulated mobile device
wherein the second physical integrated circuit includes at with the second emulated mobile device .
least one of a second GPS device, a second GSM 65 14 . The system of claim 10 , wherein when the system
telephone network interface device , a second CDMA emulates the coupling of the first emulated mobile device
telephone network interface device , a second graphics with the second emulated mobile device , the system emu
US 9 , 760 ,385 B2
55 56
lates a wired coupling of the first emulated mobile device provides, based on the network identifier, the received
with the second emulated mobile device. data to the second emulated mobile device ;
15 . The system of claim 10 , wherein the second configu creates a second configuration based on the received data ;
ration includes at least one of a sound recording , contact and
information , login information , online account information , 5 provides the second configuration to the user.
20 . The non - transient computer -readable memory device
a bookmark , an ebook , a social networking site information, of claim 19 , wherein the non - transient computer-readable
an a mobile device application . memory device further includes instructions that when
16 . The system of claim 10, wherein when the system executed by the processor, the system :
provides the second configuration to the user , the system marks packaging of the physical mobile device with
provides the second configuration to the user via the net- 10 identity information associated with the user and physi
work . cal address information associated with the user .
17. The system of claim 10 , 21 . The non -transient computer -readable memory device
wherein the first physical integrated circuit includes atof claim 19, wherein the non - transient computer- readable
least one of a first global positioning system (GPS ) memory bydevice further includes instructions that when
device, a first GSM (global system for mobile commu 5 executed the processor, the system :
configures the second physical mobile device with the
nications ) telephone network interface device , a first
second configuration .
code division multiple access (CDMA ) telephone net 22 . The non -transient computer- readable memory device
work interface device, a first graphics processing unit, of claim 19 , wherein when the system emulates the coupling
a first graphics processing unit, a first WiFi interface
device, and a first Bluetooth device; and 20 of the first emulated mobile device with the second emulated
wherein the second physical integrated circuit includes at mobile device , the system emulates a wireless coupling of
least one of a second GPS device , a second GSM the first emulated mobile device with the second emulated
telephone network interface device , a second CDMA mobile device .
telephone network interface device , a second graphics 35 23 . The non - transient computer-readable memory device
processing unit, a second graphics processing unit, a 25 of claim 19 , wherein when the system emulates the coupling
second WiFi interface device, and a second Bluetooth of the first emulated mobile device with the second mobile
device , the system emulates a wired coupling of the first
device. emulated mobile device with the second emulated mobile
18 . The system of claim 10 , wherein the second physical
mobile device includes at least one of an in - vehicle com - 30 device
24 .
.
The non -transient computer -readable memory device
puting device and a wearable device .
19 . A non -transient computer -readable memory device of claim 19 , wherein the second configuration includes at
comprising instructions, that when the instructions are least one of a sound recording, contact information , login
executed by a processor of a system , the system : information , online account information , a bookmark , an
concurrently emulates a plurality of emulated mobile 35 35 ebook , application
a social networking site information , an a mobile
devices, wherein each of the plurality of emulated device .
25 . The non -transient computer -readable memory device
mobile devices corresponds to a physical mobile
device ,wherein at least two of the plurality of emulated of claim 19 , wherein when the system provides the second
configuration to the user, the system provides the second
mobile devices emulate two different physicalmobile configuration to the user via the network .
devices, wherein a first emulated mobile device of the 40 26 . The non - transient computer -readable memory device
plurality of emulated mobile devices that corresponds
to a first physical mobile device of the two different of claim 19 ,
physical mobile devices includes a first physical pro wherein the first physical integrated circuit includes at
cessor, a first physical memory , and a first physical least one of a first global positioning system (GPS )
integrated circuit , wherein a second emulated mobile 45 device, a first GSM ( global system formobile commu
device of the plurality of emulated mobile devices that nications ) telephone network interface device , a first
corresponds to a second physical mobile device of the code division multiple access (CDMA ) telephone net
two different physicalmobile devices includes a second work interface device , a first graphics processing unit ,
physical processor, a second physical memory, and a a first graphics processing unit , a first WiFi interface
device , and a first Bluetooth device ; and
second physical integrated circuit, and wherein at least 50 wherein
one of the first physical processor, the first physical the second physical integrated circuit includes at
memory, and the first physical integrated circuit is least one of a second GPS device , a second GSM
different from a corresponding one of the second physi telephone network interface device , a second CDMA
cal processor, the second physical memory, and the telephone network interface device , a second graphics
second physical integrated circuit ; processing unit, a second graphics processing unit, a
receives a first configuration ; 55 second WiFi interface device , and a second Bluetooth
configures the first emulated mobile device with the first device .
configuration ; 27 . The non -transient computer-readable memory device
emulates a coupling of the first emulated mobile device of claim 19 , wherein the second physical mobile device
includes at least one of an in - vehicle computing device and
with the second emulated mobile device ; with 60 a wearable device .
receives, from a user via the network , data associated with
a network identifier ; * * * *

Das könnte Ihnen auch gefallen