`US008391298B2
`
`c12) United States Patent
`Suder et al.
`
`(IO) Patent No.:
`(45) Date of Patent:
`
`US 8,391,298 B2
`Mar.5,2013
`
`(54) PHONE DIRECTORY IN A VOICE OVER IP
`TELEPHONE SYSTEM
`
`(75)
`
`Inventors: Eric G. Suder, Plano, TX (US); Harold
`E. A. Hansen, II, Plano, TX (US)
`
`(73) Assignee: Estech Systems, Inc., Plano, TX (US)
`
`( *) Notice:
`
`Subject to any disclaimer, the term ofthis
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 3439 days.
`
`(21) Appl. No.: 10/447,607
`
`(22) Filed:
`
`May 29, 2003
`
`(65)
`
`Prior Publication Data
`
`US 2004/0062235 Al
`
`Apr. 1, 2004
`
`Related U.S. Application Data
`
`(63) Continuation-in-part of application No. 09/775,018,
`filed on Feb. 1, 2001, now Pat. No. 7,068,684.
`
`(51)
`
`Int. Cl.
`H04L 12156
`(2006.01)
`H04M 11100
`(2006.01)
`(52) U.S. Cl. ..................................... 370/401; 379/93.17
`(58) Field of Classification Search ............... 379/93.23,
`379/354, 355.02, 355.04, 90.01
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`6,065,016 A *
`.......... 707 /200
`5/2000 Stuntebeck et al.
`6,094,674 A *
`7 /2000 Hattori et al. ................. 709/203
`6,298,057 Bl *
`..................... 370/389
`10/2001 Guy et al.
`6,396,531 Bl*
`5/2002 Gerszberg et al .......... 348/14.01
`6,446,127 Bl*
`9/2002 Schuster et al.
`.............. 709/227
`6,829,231 Bl*
`12/2004 Wilson .......................... 370/352
`7,047,287 B2 *
`5/2006 Sim et al. ...................... 709/221
`7,349,967 B2 *
`3/2008 Wang ............................ 709/227
`2001/0037331 Al *
`11/2001 Lloyd ............................... 707 /4
`
`* cited by examiner
`
`Primary Examiner - Gregory Sefcheck
`(74) Attorney, Agent, or Firm - Kelly Kordzik; Matheson
`Keys & Kordzik PLLC
`
`(57)
`
`ABSTRACT
`In a Voice over IP system, a user can dial numbers stored in a
`series oflists, which are stored in the system and displayed to
`the user of an IP telephone. One implementation will allow a
`user to scroll through a list of remote sites. When the user
`finds the desired site, the user is then presented with the same
`options as a user local to that site.All of this can be performed
`without the need for an operator or a printed directory. This
`system provides an ability for a user to scroll through a list of
`names and phone numbers and then call a person once their
`name and phone number is displayed.
`
`19 Claims, 19 Drawing Sheets
`
`IP SERVER
`
`101
`
`IP SERVER
`
`202
`
`CISCO EXHIBIT 1001
`Page 1 of 29
`
`
`
`U.S. Patent
`
`Mar.5,2013
`
`Sheet 1 of 19
`
`US 8,391,298 B2
`
`-------DATA-------
`~
`~
`
`PC
`
`106
`
`105
`
`' VOICE"
`
`HUB
`
`SERVER
`
`103
`
`104
`
`Fig. 1
`
`IP SERVER
`
`101
`
`co
`
`102
`
`IP SERVER
`
`101
`
`IP SERVER
`
`201
`
`Fig. 2
`
`CISCO EXHIBIT 1001
`Page 2 of 29
`
`
`
`00 = N
`\0
`"'""' N
`\0
`00 w
`d r.,;_
`
`....
`0 ....
`N
`.....
`rJJ =- ('D
`
`('D
`
`1,0
`
`~
`
`0 ....
`
`N
`Ul
`~ :-:
`~
`
`~
`
`~ = ~
`
`~
`~
`~
`•
`00
`
`e •
`
`PHONE
`REMOTE
`
`TELEPHONE
`
`IP
`
`312
`
`PC
`
`302
`
`DETROIT
`
`WORKSTATION 309
`
`PC
`
`I
`
`I
`
`I
`
`I
`
`~308
`
`r301 I
`
`TELEPHONE
`
`IP
`
`•••••
`
`HUB
`
`LINES
`co
`
`SERVER
`
`IP
`
`306
`
`305
`
`313
`
`NAT ROUTER/ H11
`
`HUB
`
`HOME
`TELECOM M LITER'S
`
`303
`
`Fig. 3
`
`310
`
`MODEM
`ADSL
`
`301
`
`DALLAS
`
`SERVER
`WORKSTATIONl 1~ATA
`
`106
`
`PC
`
`• PUBLIC INTERNET
`
`• VPN
`
`• PRIVATE DATA
`
`NETWORK
`
`HUB
`
`•
`: 103 I
`•
`
`I
`
`TELEPHONE
`
`IP
`
`ps
`
`l-101
`
`SERVER
`
`IP
`
`LINES -
`co
`
`- 1
`
`CISCO EXHIBIT 1001
`Page 3 of 29
`
`
`
`00 = N
`
`\0
`'N
`"'""'
`\0
`00 w
`d r.,;_
`
`106
`
`WORKSTATION
`
`Fig. 4
`
`TELEPHONE
`ANALOG
`406
`
`301/
`
`120VAC
`
`~
`
`('D
`('D
`
`....
`0 ....
`.....
`rJJ =(cid:173)
`
`1,0
`
`~
`
`N
`~Ul
`~ :-:
`~
`
`0 ....
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`TELEPHONE
`ETHERNET
`FAST
`105
`
`•CO/ANALOG
`
`co
`
`o---•CO
`
`HUB
`
`ETHERNET
`
`103
`
`405
`'ij ~ T1
`
`(P-CARDS)
`PERIPHERAL
`
`(10 SLOTS)
`BACKPLANE
`
`0
`
`D
`
`CARD
`
`IP NETWORK
`
`402
`
`409
`
`304
`
`1101
`
`403
`
`HDD
`IDE
`
`BOARD
`MAIN
`
`401
`
`PACK
`POWER! ~407
`
`CISCO EXHIBIT 1001
`Page 4 of 29
`
`
`
`00 = N
`\0
`"'""' N
`\0
`00 w
`d r.,;_
`
`; ¼ ]"
`Li
`
`;
`
`'411
`
`I'
`I.L
`
`5711 B~F~~RI : /l
`t /\
`·~
`
`1/0
`
`'---,I
`L.>.
`
`/405
`PCARD L
`
`'
`
`PCARD 0
`
`,
`405
`
`404
`BACKPLANE
`
`511
`
`SRAM 1
`
`t---
`
`CONNECTORS
`
`JI
`
`V
`
`HIGHWAYS
`
`SYSTEM
`
`v5 509
`
`\
`
`409;
`,
`
`SWITCH
`
`CROSSPOINT
`
`DIGITAL
`
`....
`0 ....
`('D a
`rJJ =(cid:173)
`
`.i;...
`
`1,0
`
`~
`
`0 ....
`
`N
`Ul
`~ :-:
`~
`
`~
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`PHY ~
`
`MAC/
`10/100
`
`416
`
`I ~
`
`517
`
`I
`516
`
`PHY
`MAC/
`10/100
`
`I
`515
`
`I Fi
`7 DSP C' I 5?8
`
`_J 506 ;::i
`
`.___ _
`
`J
`5ot.
`
`FPGA
`
`513
`
`v510
`
`h
`
`~ DSP
`
`' 507
`J
`I
`DSP FARM EXPANSION CONNECTOR
`
`I'
`
`\
`505
`
`Fig. 5
`
`' 504
`
`DRAM
`
`I'
`
`ECP
`
`~
`503
`
`1/0
`
`I
`501
`
`402\
`
`FROM M.B.
`CONNECTION
`DEHDD
`
`'
`
`..l
`410
`
`CISCO EXHIBIT 1001
`Page 5 of 29
`
`
`
`00 = N
`\0
`"""' N
`\0
`00 w
`d r.,;_
`
`Fig. 6
`
`....
`0 ....
`('D a
`rJJ =(cid:173)
`
`Ul
`
`1,0
`
`~
`
`0 ....
`
`~
`
`N
`Ul
`
`~ :-:
`~
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`~sl409
`
`t
`MATRIX
`POINT
`CROSS-
`DIGITAL
`61,6
`
`'
`
`CODEC
`
`i--
`
`i--
`
`MODEM
`
`61,1
`
`61p
`
`407
`
`(
`
`75VA ~
`24VAC
`
`401
`
`SWITCHING f--+5V/3A "'
`
`'---SV/.SA
`'--+ 12V/1A
`
`SUPPLY
`POWER
`
`Mus1c623
`
`11
`
`0000
`
`ANALOG CJ
`
`62]~ PORT
`
`#2
`
`#1
`PORT
`
`ANALOG
`
`620--
`
`r 7
`
`DSLAC
`
`619 -
`
`6~7
`
`618
`t
`
`I
`
`MHZ COUNTER
`2.048 TIME SLOT
`
`SYNC
`FRAME
`
`i st614
`
`ARRAY
`GATE
`
`l.622
`
`CODEC
`
`l
`
`DSP
`
`f-608
`
`b
`
`~ '-
`
`613-K -=c=._
`
`,
`615
`
`612,
`
`DRAM
`
`6~6
`
`ASYNC COMM LINK
`
`MULTI-DROP
`
`I
`
`609
`
`MEM
`FLASH
`
`CLOCK
`
`REAL-TIME
`
`DOG
`WATCH-
`
`PROCESSOR::=
`
`I<==: MICRO-
`
`:
`
`HARD DISK
`
`605
`
`' 601
`
`60,4
`
`60,3
`
`...__
`
`607
`'
`
`f!!l_
`
`k==:
`
`CISCO EXHIBIT 1001
`Page 6 of 29
`
`
`
`~
`~
`'N
`"'""'
`\0
`w
`;
`d
`
`1,0
`....
`S.,
`~
`a
`g
`
`rF1
`
`~
`
`N
`~Ul
`~
`~
`
`0 ....
`
`~
`~
`r,;.
`~
`
`a_
`~
`
`INTTR~CES
`TELEPHONE
`
`ANALOG
`
`70
`
`708
`
`J INTERFACES
`START co
`
`LOOP
`
`~405
`
`H
`
`Fig. 7
`
`101
`
`CODECS
`
`706
`
`CODECS
`
`FROM CARD 40 2
`SYSTEM TIMING
`
`TO/FROM CARD 402
`CONTROL HIGHWAYS
`
`SYSTEM SPEECH/
`
`~1
`
`I==> TIMING
`
`BUFFERS
`
`704
`
`~-~-~ ---~-
`
`CROSSPOINT
`
`DIGITAL
`
`SWITCH
`
`DAAM
`512KB
`
`7o3~
`
`I
`
`TOM
`
`~ mDM
`
`DSP
`
`702
`
`MICROCONTROLLER
`
`(ECP)
`
`701
`
`CISCO EXHIBIT 1001
`Page 7 of 29
`
`
`
`00 = N
`
`\0
`'N
`"'""'
`\0
`00 w
`d r.,;_
`
`....
`0 ....
`-....J
`.....
`rJJ =(cid:173)
`
`('D
`('D
`
`1,0
`
`~
`
`N
`~Ul
`~ :-:
`~
`
`0 ....
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`Fig. 8
`
`'~822
`I MIC
`
`821
`SPEAKER
`HANDSFREE
`
`+ 1.8V
`+3.3V
`+SV
`
`I POWER
`
`SUPPLYe REG.
`POWER ~
`
`..I
`823
`
`'-----------~CODEC
`
`819-
`
`HANDSET
`
`817
`
`.___ ________ ICO~ECI 19
`
`I"'
`,A
`I"'
`..A-
`
`804
`SRAM
`
`NETWORK
`
`~ 816
`
`RJ45
`
`PHY
`~ MAC/
`10/100
`
`ETHERNET
`
`814
`
`\
`
`WORKSTATION
`
`~ RJ45 815
`
`ETHERNET
`
`PHY
`MAC/
`10/100
`
`813
`
`_l
`
`l<=7=
`BUS
`PCI i?
`811
`
`812
`
`.,.,,---105
`
`~-------11 r (I.E. DSS CONSOLE)
`
`, ni PERIPHERAL
`
`·806
`
`I'
`IL
`
`,A
`
`803
`FLASH
`
`SWITCH
`LAYER 2
`BRIDGE/
`
`PCI
`
`FPGA
`
`802
`
`l=l t------v1
`
`..,.
`-~
`
`I
`_l_________,.,
`805
`
`"
`
`......
`
`810
`
`I<=::! DISPLAY
`
`LCD
`
`801
`
`DSP
`ll
`1/0
`'
`
`r-,....
`
`809-
`
`....>
`
`808
`LEDS
`
`807
`
`KEYBOARD
`
`y
`
`CISCO EXHIBIT 1001
`Page 8 of 29
`
`
`
`U.S. Patent
`
`Mar.5,2013
`
`Sheet 8 of 19
`
`US 8,391,298 B2
`
`ORIGINATOR
`I STATION GOES
`OFF HOOK
`
`901
`
`~
`ORIGINATING
`STATION DIALS
`REMOTE ACCESS
`CODEAND
`EXTENSION NUMBER
`
`'
`
`IP SERVER VERIFIES
`REMOTE ACCESS
`CODE
`
`-902
`
`e--903
`
`FIG. 9A
`
`FIG. 98
`
`'
`
`--908
`
`NORMAL CALL
`PROCESSING CODE
`IS EXECUTED TO
`RING EXTENSION
`PHONE
`+
`REMOTE IP SERVER -909
`SENDS A CONNECTION
`ESTABLISHED MESSAGE
`TO ORIGINATING IP
`SERVER
`
`IP SERVER ASSIGNS -904
`AN AVAILABLE VOICE
`COMPRESSION
`CHANNEL
`
`IP SERVER SENDS
`UDP/IP MESSAGE
`TO REMOTE IP
`SERVER
`
`_905
`
`~
`
`(906
`
`UPON RECEIPT OF UDP/IP
`MESSAGE, REMOTE IP
`SERVER DETERMINES IF
`EXTENSION NUMBER IS
`VALID
`
`IF EXTENSION NUMBER
`IS VALID, A RETURN
`VOICE COMPRESSION
`CHANNEL IS ASSIGNED
`
`l
`
`907
`
`I
`
`WHEN CONNECTION
`ESTABLISHED MESSAGE
`RECEIVED, IP SERVER CONNECTS
`AUDIO PATHS TO ORIGINATING
`STATION AND SENDS UPDATED
`INFORMATION TO DISPLAY OF
`ORIGINATING STATION
`
`.... 910
`
`-911
`
`WHEN CALLED
`EXTENSION PHONE
`ANSWERS, AN ANSWER
`MESSAGE IS SENT TO
`ORIGINATING IP SERVER
`
`'--912
`
`+
`ORIGINATING IP
`SERVER UPDATES
`LAMP/DISPLAY OF
`ORIGINATING
`STATION
`+
`,
`....,
`I HANG upf-913
`
`... ®
`
`Fig. 9A
`
`CISCO EXHIBIT 1001
`Page 9 of 29
`
`
`
`U.S. Patent
`
`Mar.5,2013
`
`Sheet 9 of 19
`
`US 8,391,298 B2
`
`...
`914
`
`' 915
`
`'-
`
`916
`
`'" 917
`
`~ 918
`
`'
`
`ON HOOK MESSAGE
`SENT TO IP SERVER
`FROM STATION
`
`!
`CALL PROCESSING
`TEARS DOWN THE
`CALL AND A REMOTE
`MESSAGE SENT TO
`0TH ER IP SERVER
`l
`UPON RECEIPT OF
`REMOVE MESSAGE, IP
`SERVER ALSO TEARS
`DOWN CALL
`!
`
`ACKNOWLEDGE
`RETURNED
`
`l
`
`FINALIZE TEAR
`DOWN
`
`!
`END
`
`,.
`
`..
`
`"
`
`.J
`
`Fig. 98
`
`CISCO EXHIBIT 1001
`Page 10 of 29
`
`
`
`00 = N
`
`\0
`'N
`""""
`\0
`00 w
`d r.,;_
`
`....
`0 ....
`0
`....
`.....
`rJJ =(cid:173)
`
`('D
`('D
`
`1,0
`
`~
`
`N
`~Ul
`~ :-:
`~
`
`0 ....
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`(906
`
`IP TELEPHONE
`
`308
`
`IP SERVER
`
`306
`
`916
`
`LAMP/DISPLAY
`• TEAR-DOWN CALL ../
`
`UPDATE
`
`OFF HOOK
`
`LAMP/DISPLAY
`
`UPDATE
`
`/
`908
`
`RING COMMAND
`
`• RINGBACK TO ORIG -907
`• ASSIGN COMP. CHANNEL
`
`• VERIFY EXTENSION
`
`IS VALID
`
`\919
`
`915
`
`l
`
`ACK
`
`REMOVE
`
`-
`
`911
`
`l
`
`ANSWER
`
`CONNECTED ~ 910
`909
`
`• AUDIO PATHS
`
`I
`
`CONNECTION ESTABLISHED
`ESTABLISH CONNECTION 9p5
`• ASSIGN COMP. CHANNEL 904
`
`VALIDATES REMOTE #702
`
`• IP SERVER .,9o3
`
`LAMP/DISPLAY
`
`UPDATE
`
`914
`'
`
`912
`
`ON HOOK
`
`LAMP/DISPLAY
`
`UPDATE
`
`LAMP/DISPLAY
`
`UPDATE
`
`902
`DIAL 702106
`
`l
`
`LAMP/DISPLAY
`
`UPDATE
`
`• • •
`•
`
`IP SERVER
`
`101
`
`IP TELEPHONE
`
`105
`
`OFF HOOK 9r1
`
`DETROIT
`
`DALLAS
`
`Fig. 10
`
`CISCO EXHIBIT 1001
`Page 11 of 29
`
`
`
`U.S. Patent
`
`Mar.5,2013
`
`Sheet 11 of 19
`
`US 8,391,298 B2
`
`Fig. 11
`
`NO
`
`DISPLAY FIRST OF
`N REMOTE SITE
`NAMES
`
`DISPLAY
`RESPONSE
`MESSAGE
`
`DISPLAY STATION - DEX
`OR SYSTEM DEX
`OPTIONS FOR
`SELECTED REMOTE SITE
`
`DISPLAY
`SELECTED
`REMOTE SITE
`
`SEND MESSAGE TO
`SELECTED REMOTE SITE
`PERTAINING TO
`PRESSED KEY
`
`1115
`
`BEGIN CALL
`PROCESSING
`(SEE FIG. 9A)
`
`CISCO EXHIBIT 1001
`Page 12 of 29
`
`
`
`00 = N
`
`\0
`'N
`"'""'
`\0
`00 w
`d r.,;_
`
`Fig. 12
`
`ARROW
`
`KEY
`
`....
`0 ....
`N
`....
`.....
`rJJ =(cid:173)
`
`('D
`('D
`
`1,0
`
`PROCESSING
`
`CALL
`
`1206
`
`1204
`
`~
`
`N
`~Ul
`~ :-:
`~
`
`0 ....
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`ARROW
`
`KEY
`
`ROLODEX
`
`KEY
`
`CISCO EXHIBIT 1001
`Page 13 of 29
`
`
`
`U.S. Patent
`
`Mar.5,2013
`
`Sheet 13 of 19
`
`US 8,391,298 B2
`
`1301
`
`DTMF
`RECEIVER
`
`-DT
`-ST/ROT
`-RBT
`13P7
`-SINGLE TONES
`______ __.___,-DTMF SENDING
`CALL
`PROCESSING
`TONE GEN.
`
`1302
`
`1303
`
`1308
`
`RECORDING
`BUFFERS
`
`PLAY BUFFERS
`
`AUTOMATIC
`GAIN
`CONTROL
`
`1304
`
`FAX TONE
`DET.
`
`1305
`
`CALLER ID
`MODEMS
`
`Fig. 13
`
`306
`o---------• - CONFERENCE t--------------.. o
`I
`.
`BRIDGES
`
`r1
`
`CISCO EXHIBIT 1001
`Page 14 of 29
`
`
`
`00 = N
`\0
`"'""' N
`\0
`00 w
`d r.,;_
`
`1,0
`
`....
`0 ....
`....
`.....
`rJJ =- ('D
`
`.i;...
`
`('D
`
`~
`
`0 ....
`
`N
`Ul
`~ :-:
`~
`
`~
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`SEND ACK
`
`CALL PROCESS
`TEAR-DOWN
`
`DISPLAY
`SEND APPROPRIATE
`PROMPT{S)
`PLAY APPROPRIATE
`ESI-DEX
`DECODE KEY PER
`
`PROMPT
`PLAY SITE-DEX
`
`CHANNEL
`ASSIGN VOICE
`
`~
`
`MESSA GE FLOW
`
`SITE DEX
`
`Fig. 14
`
`REMOVE ACK
`
`14,07
`
`DISCONN
`ECT
`•COMPLET
`.
`
`REMOVE MSG W/ACK (CHANNEL)
`
`l
`
`14,06
`
`14,05 DISPLAY UPDATE
`
`KEY PRESS
`
`14,04-
`
`SEND SITE-DEX DISPLAY
`
`1~03
`
`CONNECTION ESTABLISHED
`
`14-02
`
`ESTABLISH CONNECTION (CHANNEL, ORIG STA, SITE DEX)
`
`14,01
`
`)
`
`HANGS U
`•USER
`
`DISPLAY
`• UPDATE
`
`PRESS
`•PASSKEY
`
`DISPLAY
`• UPDATE
`PATH
`AUDIO
`•OPEN
`SITE DEX
`SELECTS
`•USER
`
`SITE 11811
`
`REMOTE USER
`
`CISCO EXHIBIT 1001
`Page 15 of 29
`
`
`
`U.S. Patent
`
`Mar.5,2013
`
`Sheet 15 of 19
`
`US 8,391,298 B2
`
`1504
`
`1501
`
`START
`
`ENTER PROGRAM
`MODE
`
`EXIT
`
`1503
`
`OTHER
`PROGRAM
`OPTIONS
`
`1517.
`
`1507
`
`ENTER
`"PROGRAMMABLE
`FEATURE KEY"
`PROGRAM MODE
`
`NO
`
`PROGRAM
`FEATURE LOOP
`
`GET
`PASSWORD
`
`1511
`
`SET-UP DATA
`POINTERS FOR
`THIS KEY
`
`Fig. 15
`
`1516
`
`ROLODEX
`PROGRAM
`FEATURE
`
`1515
`
`YES
`
`MANUAL
`PROGRAM
`FEATURE ENTRY
`
`YES
`
`CISCO EXHIBIT 1001
`Page 16 of 29
`
`
`
`U.S. Patent
`
`Mar.5,2013
`
`Sheet 16 of 19
`
`US 8,391,298 B2
`
`1515
`
`1601
`
`MANUAL
`PROGRAM
`FEATURE ENTRY
`
`SAVE FIRST
`DIGIT TO
`BUFFER
`
`YES
`
`1603
`
`SAVE DIGIT TO
`BUFFER
`
`Fig. 16
`
`NO
`
`YES 1605
`
`UPDATE
`DATABASE
`WITH ENTRY
`
`1517
`
`PROGRAM
`FEATURE LOOP
`
`CISCO EXHIBIT 1001
`Page 17 of 29
`
`
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`Fig. 17A
`
`FIG. 17B
`
`FIG. 17A
`
`1705
`
`1703
`
`., ~
`
`MODE
`
`"PERSONAL DEX»
`ENTER ROLODEX r170J
`
`FEATURE
`PROGRAM
`ROLODEX v1516
`
`RETURN
`PERSONAL 1
`
`00 = N
`
`\0
`'N
`"'""'
`\0
`00 w
`d r.,;_
`
`DEX LOOP
`LOCATION t-1718
`
`1712
`
`ALPHABETICALLY
`NAME FOUND
`DISPLAY FIRST
`
`RETURN
`FEATURE
`
`NO
`
`NEXT ENTRY
`
`DISPLAY
`
`IN DEX
`
`"LOO\TION DEX"
`
`MODE
`
`ENTER
`
`1710
`
`RETURN
`STATION
`
`DEX" MODE
`YES • I ENTER "STATION
`
`....
`0 ....
`-....J
`....
`.....
`rJJ =(cid:173)
`
`('D
`('D
`
`1,0
`
`~
`
`N
`~Ul
`~ :-:
`~
`
`0 ....
`
`• • ENTER "FEATURE
`
`DEX" MODE
`
`>
`
`1707..,..... ____ _
`
`RETURN
`r-----1 LOCATION
`
`1717
`
`CISCO EXHIBIT 1001
`Page 18 of 29
`
`
`
`00 = N
`
`\0
`'N
`"'""'
`\0
`00 w
`d r.,;_
`
`Fig. 17B
`
`1,0
`
`....
`0 ....
`QO
`....
`.....
`rJJ =(cid:173)
`
`('D
`('D
`
`~
`
`0 ....
`
`N
`~Ul
`
`~ :-:
`~
`
`~ = ~
`
`~
`~
`~
`•
`00
`~
`
`}-1516
`
`LOOP
`
`FEATURE
`PROGRAM
`
`MODE
`
`APPROPRIATE
`RETURN TO }-1715
`
`TO FEATURE KEY
`... ROLODEX ENTRY
`
`TRANSFER
`
`>
`
`1714
`
`CISCO EXHIBIT 1001
`Page 19 of 29
`
`
`
`U.S. Patent
`
`Mar.5,2013
`
`Sheet 19 of 19
`
`US 8,391,298 B2
`
`1718
`
`LOCATION DEX
`LOOP
`
`1806
`
`ENTER REMOTE
`"STATION DEX"
`MODE
`
`1802
`
`DISPLAY NEXT
`SITE
`
`1804
`
`DISPLAY SITES
`ALPH ABETI CALLY
`
`1808
`
`DISPLAY NEXT
`REMOTE
`STATION
`
`YE
`
`1810
`
`NO
`
`DISPLAY REMOTE
`NAMES
`ALPHABETICALLY
`
`LOCATION DEX
`RETURN
`
`NO
`
`1812
`
`TRANSFER
`ROLODEX ENTRY
`TO FEATURE KEY
`
`Fig. 18
`
`PROGRAM
`FEATURE LOOP
`
`1516
`
`CISCO EXHIBIT 1001
`Page 20 of 29
`
`
`
`US 8,391,298 B2
`
`1
`PHONE DIRECTORY IN A VOICE OVER IP
`TELEPHONE SYSTEM
`
`CROSS REFERENCE TO RELATED
`APPLICATIONS
`
`This application for patent is a continuation-in-part appli(cid:173)
`cation of U.S. patent application Ser. No. 09/775,018, filed
`Feb. 1, 2001 now U.S. Pat. No. 7,068,684 entitled
`"QUALIFY OF SERVICE IN A VOICE OVER IP TELE-
`PHONE SYSTEM."
`This application for patent is related to the following patent
`applications:
`Ser. No. 10/072,343: entitled "QUALITY OF SERVICE
`IN A REMOTE TELEPHONE";
`Ser. No. 10/041,332, now U.S. Pat No. 6,925,167; entitled
`"SERVICE OBSERVING IN A VOICE OVER IP TELE(cid:173)
`PHONE SYSTEM"; and
`Ser. No. 10/210,902, now U.S. Pat. No. 7,123,699; entitled
`"VOICE MAIL IN A VOICE OVER IP TELEPHONE SYS-
`TEM"; which are all hereby incorporated by reference herein. 20
`
`10
`
`2
`FIG. 1 illustrates an information processing system;
`FIG. 2 illustrates a wide area network ("WAN");
`FIG. 3 illustrates another embodiment of a wide area net(cid:173)
`work configuration;
`FIG. 4 illustrates a block diagram of a configuration of an
`embodiment of the present invention;
`FIG. 5 illustrates a block diagram of a network card;
`FIG. 6 illustrates a block diagram of main processing
`board;
`FIG. 7 illustrates a block diagram of a peripheral card;
`FIG. 8 illustrates a block diagram of a telephony device;
`FIGS. 9A-9B illustrate a flow diagram of call processing
`over a configuration in accordance with the present invention;
`FIG. 10 illustrates a message flow diagram corresponding
`15 to an embodiment of the present invention;
`FIG. 11 illustrates a flow diagram in accordance with the
`present invention;
`FIG. 12 illustrates a message flow diagram in accordance
`with the present invention;
`FIG. 13 illustrates functions implemented in the process(cid:173)
`ing means of the main board;
`FIG. 14 illustrates a message flow over a WAN; and
`FIGS. 15-18 illustrate flow diagrams for prograniming a
`special purpose key on a telephone in accordance with an
`25 embodiment of the present invention.
`
`DETAILED DESCRIPTION
`
`TECHNICAL FIELD
`
`The present invention relates in general to information
`processing systems, and in particular, to the use ofVoice over
`IP technology to transmit voice conversations.
`
`BACKGROUND INFORMATION
`
`Voice over IP ("VoIP") is a relatively recent development
`that is utilized to transmit voice conversations over a data
`network using the Internet Protocol ("IP"). Such a data net(cid:173)
`work may be the Internet or a corporate intranet, or any IP
`network. There are several potential benefits for moving
`voice over a data network using IP. First, there is a savings in
`money compared to the need to use traditional tolled telecom(cid:173)
`munications networks. Additionally, Voice over IP enables
`the management of voice and data over a single network. And,
`with the use ofIP phones, moves, adds and changes are easier
`and less expensive to implement. Moreover, additional and
`integrated new services, including integrated messaging,
`bandwidth on demand, voice e-mails, the development of
`"voice portals" on the Web, simplified setting up and tearing
`down, and transferring of phone calls are capable.
`Using Voice over IP technology, phone systems can com(cid:173)
`municate with each other over existing IP data networks
`typically present between remote offices. This feature alone
`can eliminate the need for expensive, dedicated circuits
`between facilities. The shared bandwidth can also be used for
`voice calls and data communication simultaneously; no band(cid:173)
`width is dedicated to one or the other.
`Another advantage of a Voice over IP system is the ability
`to implement a phone system over an existing data network
`that is already connecting workstations within a local area
`network, such as over an Ethernet. An Ethernet operates over
`twisted wire and over coaxial cable for connecting comput(cid:173)
`ers, printers, workstations, terminals, servers, etc., within the
`same building or a campus. The Ethernet utilizes frame pack(cid:173)
`ets for transmitting information. Voice over IP can utilize such
`packet switching capabilities to connect IP phones onto the
`Ethernet.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`For a more complete understanding of the present inven(cid:173)
`tion, and the advantages thereof, reference is now made to the
`following descriptions taken in conjunction with the accom(cid:173)
`panying drawings, in which:
`
`In the following description, numerous specific details are
`30 set forth such as specific network configurations, network
`devices, types of multimedia traffic, etc. to provide a thorough
`understanding of the present invention. However, it will be
`obvious to those skilled in the art that the present invention
`may be practiced without such specific details. In other
`35 instances, well-known circuits have been shown in block
`diagram form in order not to obscure the present invention in
`unnecessary detail. For the most part, details concerning tim(cid:173)
`ing considerations and the like have been omitted in as much
`as such details are not necessary to obtain a complete under-
`40 standing of the present invention and are within the skills of
`persons of ordinary skill in the relevant art.
`Refer now to the drawings wherein depicted elements are
`not necessarily shown to scale and wherein like or similar
`elements are designated by the same reference numeral
`45 through the several views.
`FIG. 1 illustrates an information processing system con(cid:173)
`figured in accordance with the present invention. FIG. 1
`essentially illustrates a local area network ("LAN"), which in
`one configuration could be implemented with an Ethernet
`50 protocol. However, the present invention is not limited to use
`with any particular data transfer protocol. Workstation PC
`106, network hub 103 and server 104 coupled to each other
`illustrate a typical LAN configuration where data is commu(cid:173)
`nicated between the workstation 106 and the server 104.
`55 Naturally, other workstations and servers could also be
`coupled to the LAN through hub 103, including the use of
`additional hubs. Hub 103 may be a 10 Base Tor 10/100 Base
`T Ethernet hub. In an alternative embodiment, the hub 103
`and server 104 may be implemented in the same data process-
`60 ing system. Herein, the term "workstation" can refer to any
`network device that can either receive data from a network,
`transmit data to a network, or both.
`To add in the voice communication capabilities, an IP
`multimedia server 101 is coupled to hub 103 and an IP tele-
`65 phony device 105 is connected between the workstation 106
`and the hub 103. Workstation 106 may be optional. The IP
`multimedia server 101 is coupled to a central office ("CO")
`
`CISCO EXHIBIT 1001
`Page 21 of 29
`
`
`
`US 8,391,298 B2
`
`3
`102 so that telephony device 105 can connnunicate to other
`telecommunications networks, such as the public switched
`telephone network ("PSTN"). Naturally, additional IP tele(cid:173)
`phony devices 105 can be coupled to hub 103, including
`having workstations coupled to hub 103 through such IP 5
`telephony devices. Further details on multimedia server 101
`and IP telephony device 105 are described below. An IP
`telephone, or telephony device, is any apparatus, device, sys(cid:173)
`tem, etc., that can connnunicate multimedia traffic using IP
`telephony technology. IP telephony is defined within New- 10
`ton's Telecom Dictionary, Harry Newton, Sixteenth Edition,
`page 454, which is hereby incorporated by reference herein.
`Information, or data, on the network includes both the voice
`and data information, and any other multimedia traffic. How(cid:173)
`ever, an IP telephone is not limited to the configurations 15
`described herein. For example, all of the functionality of the
`present invention can be implemented in a workstation.
`FIG. 2 illustrates how the information processing system of
`the present invention as noted above with respect to FIG. 1
`can be implemented across a wide area network ("WAN") 20
`201 where the multimedia server 101 of FIG. 1 is coupled to
`another multimedia server 202 across LAN 201. Note that the
`other items described above in FIG. 1 have been omitted in
`FIG. 2 for the sake of simplicity.
`FIG. 3 illustrates further detail of a configuration of the
`present invention over a WAN 201. Note that such a WAN
`may implement the IP protocol, and could be a public WAN,
`such as the Internet, a private data network, an intranet, a
`Virtual Private Network ("VPN"), or any external network.
`FIG. 3 illustrates an exemplary system where WAN 201
`couples an information processing system 301 in Dallas, Tex.
`to another information processing system 302 in Detroit,
`Mich., while also permitting a remote system 303 to couple to
`both systems 301 and 302 through WAN 201, such as from a
`telecommuter's home.
`System 301 is similar to the system described above with
`respect to FIG.1. System301 is coupled to WAN201 through
`router 304.
`System 302 is similar to system 301 with the exception that
`a data server is not implemented within system 302. Router
`305 is similar to router 304, multimedia server 306 is similar
`to multimedia server 101, hub 307 is similar to hub 103, IP
`telephony device 308 is similar to IP telephony device 105,
`and workstation 309 is similar to workstation 106.
`Remote system 303 is coupled to WAN 201 using a modem
`310, such as a cable modem or anADSL (asynnnetric digital
`subscriber line) modem. A NAT (Network Address Transla(cid:173)
`tion) router/hub 311 then couples a workstation PC 312 and
`an IP telephony device 313 to the modem 310. Not only can
`data be transferred across WAN 201 between systems 301- 50
`303, but also any one of telephony devices 105, 308 and 313
`can connnunicate with each other and with the PSTN (not
`shown) over CO lines coupled to either of systems 301 and
`302.
`FIG. 4 illustrates further details of system 301. As noted
`above, system 301 is coupled to WAN 201 through IP router
`304, which is coupled by line 413 to Ethernet hub 103. Eth(cid:173)
`ernet hub 103 is connected by line 414 to fast Ethernet tele(cid:173)
`phony device 105, which is coupled by line 415 to worksta(cid:173)
`tion 106. Ethernet hub 103 is coupled to IP network card 402 60
`by connection 416, which may be a 10/100 Base T connector.
`Multimedia server 101 is comprised of main board 401,
`network card 402, hard drive 403, backplane 404 and periph(cid:173)
`eral cards 405. Network card 402 is further discussed below in
`more detail with respect to FIG. 5. Network card 402 is 65
`coupled by ribbon cable 409 to main board 401, which is
`further described below in more detail with respect to FIG. 6.
`
`4
`Multimedia server 101 is powered through power pack 407.
`IDE (Integrated Drive Electronics) HDD (hard disk drive)
`403 is coupled by ribbon cable 410 to network card 402 and
`main board 401, while network card 402 is coupled to back(cid:173)
`plane 404 through ribbon cable 411. Backplane 404 provides
`capacity for several peripheral cards (P-cards) 405, which are
`of a typical configuration for enabling a telephone system to
`connect to a central office (CO), Ti lines, analog central office
`trunks and analog telephones 406. Alternatively, ribbon cable
`411 could be coupled to one of the peripheral cards 405
`directly.
`Referring next to FIG. 5, there is illustrated a block dia(cid:173)
`gram of network card 402. Network card 402 is responsible
`for connnunicating with all IP telephones, remote telephones
`and remote sites via a 10/100 Base T connection. The higher(cid:173)
`level connnunication protocol used may be a standard UDP/
`IP (User Datagram Protocol/Internet Protocol) protocol, or
`any other packet switching protocol. In addition, network
`card 402 connnunicates with the main board 401 for overall
`system control. Network card 402 has effectively replaced
`individual electronic key telephone circuits with a single Eth(cid:173)
`ernet interface, and network card 402 now acts as the central
`distribution point for all peripheral cards 405, which can plug
`25 into backplane 404.
`Ribbon cable 410 from hard drive 403 is received at I/O
`501 coupled to bus 502. Bus 502 is coupled to ECP (Enhanced
`Call Processing) microcontroller 503, DRAM 504, DSPs 505
`and 506, DSP farm expansion connector 507, digital cross-
`30 point switch 509, and I/O and buffers 512. ECP 503 is a
`microcontroller responsible for overall connnunications
`between network card 402 and main board 401. ECP 503
`directly interfaces the DSPs 505, 506 via the host port inter(cid:173)
`face. The host port interface is a parallel (8 bit) interface
`35 between the DSPs and the host processor. This interface can
`be used to directly manipulate the DSP memory by a host
`processor. I/O 501 is a mail box type parallel connnunication
`channel, which is multiplexed between connnunication with
`the IDE disk drive 403 and I/O 501 allowing direct control for
`40 functions such as firmware download and message passing.
`ECP 503 is based on a 16-bit Hitachi HS family processor
`with built-in flash memory.
`DSPs 505 and 506 can be implemented using Texas Instru(cid:173)
`ment 5410 DSPs that perform packet encoding/decoding,
`45 jitter buffer management and UDP/IP protocol stacked func(cid:173)
`tions. DSPs 505, 506 are connected to an external SRAM 511
`and ASIC (FPGA) 513 that performs a PCI bridge function
`between bus 508 and bus 514, which is coupled to connectors
`517 and 416 via 10/100 MAC/PHY devices 515 and 516.
`DSPs 505, 506 connnunicate with peripherals 405 via bus
`502. DSP firmware is downloaded via the host port interface
`501. I/0 501 allows connnunication with the main board 401
`and the hard drive 403. Additionally, EPC 503 can directly
`control a daughter card containing additional DSPs through
`55 expansion connector 507 for functions such as speech com-
`pression.
`Digital cross-point switch 509 is used to connect system
`voice conversations as needed between peripherals. Main
`board 401 houses the master cross-points with 616 discussed
`below with respect to FIG. 6. The peripheral cards 405 share
`a pool of 160 time slots. Cross-point switch 509 is primarily
`responsible for connecting the packet-switched voice con(cid:173)
`nections of the IP telephones or remote systems to the circuit
`switchboard. The FPGA/PCI bridge 513 performs the func(cid:173)
`tions required to connect the 10/100 Base T Ethernet MAC/
`PHY devices 515,516. Since devices 515,516 are designed to
`connnunicate via a standard PCI bus 514, the FPGA 513
`
`CISCO EXHIBIT 1001
`Page 22 of 29
`
`
`
`US 8,391,298 B2
`
`15
`
`5
`implements a minimal PCI bus implementation. In addition,
`the FPGA 513 implements I/O latches and buffers as
`required.
`The 10/100 Base T devices 515, 516 are stand-alone Eth(cid:173)
`ernet devices, which perform the media access control 5
`("MAC") and the Physical layer functions in a single, low(cid:173)
`cost chip. Devices 515,516 communicate to the host proces(cid:173)
`sor via a standard PCI bus 514, and communicate to the
`network via a pulse transformer coupled RJ-45 connection
`517, 416. These devices contain FIFOs to minimize lost pack- 10
`ets during traffic peaks. Per the PCI bus mastering specifica(cid:173)
`tion, devices 515,516 take control of the DSP bus and DMA
`data directly to SRAM 511. Conversely, the DSP 505, 506
`writes data to be sent into the SRAM 511 and the devices 515,
`516 DMA data via the PCI bus 514 to the network (LAN).
`Referring next to FIG. 6, there is illustrated, in block dia(cid:173)
`gram form, main board 401 for integrating call processing
`and voice processing using a single processing means, which
`in this example is one microprocessor 601. Microprocessor
`601, which may be a Motorola 68000 class microprocessor, 20
`communicates with hard disk 607 using driver circuitry 602.
`Hard disk 607 stores program data (such as programs run
`under the present invention), voice prompts, voice mail mes(cid:173)
`sages, and all other types of speech used within main board
`401. Microprocessor 601 also includes watchdog timer 603 25
`and real-time clock source 604.
`Microprocessor 601 is coupled via bus 608 to flash
`memory 605 and dynamic
`random access memory
`("DRAM") 606. Flash memory 605 is used to store bootstrap
`data for use during power up of main board 401. DRAM 606 30
`stores the program accessed by microprocessor 601 during
`operation of main board 401.
`Bus 608 also couples microprocessor 601 to signal pro(cid:173)
`cessing circuitry, which in this example is digital signal pro(cid:173)
`cessor ("DSP") 615. Digital signal processor 615 implements 35
`a number of functions traditionally implemented by discrete
`analog components.
`Referring next to FIG. 13, there are illustrated some of the
`primary functions implemented in DSP 615. DTMF receivers
`1301 are implemented using frequency domain filtering tech- 40
`niques. DTMF receivers 1301 detect all 16 standard DTMF
`(touch-tone) digits. Automatic gain control ("AGC") 1302 is
`a closed-loop gain control system, which normalizes received
`audio levels during recording. Recording buffers 1303, which
`are coupled to AGC 1302, receive and store speech samples 45
`after they have passed through AGC block 1302. These
`speech samples are converted to µ-law PCM (Pulse Code
`Modulation) and double buffered ( several samples per buffer)
`. Microprocessor 601 copies the record data out of DSP
`buffers 1303 into RAM buffers (not shown), which are 50
`located in the microprocessor 601 data RAM area. Fax tone
`detector 1304 is implemented using frequency domain filter(cid:173)
`ing techniques. Fax tone detector 1304 detects the standard
`1100 Hz FAX CNG tone ( also referred to as the Calling Tone).
`Caller ID modems 1305 are 1200 baud FSK modems similar
`to Bell 202-type modems. Caller ID modems 1305 are imp le- 55
`mented as a frequency discriminator where a time delayed
`(quadrature) signal is multiplied by the original signal, low
`pass filtered, then sliced, which produce the square wave
`caller ID data stream. Call processing tone generators 1307
`are free running oscillators, which generate the appropriate 60
`tones (and tone pairs) which make up the industry standard
`call processing tones. These tones include:
`dial tone
`busy/reorder tone
`ring back tone
`single frequency (440 Hz) tone
`DTMF dialer tones
`
`6
`Play buffers 1308 replay data from hard disk 607 through
`microprocessor 601 and place this play data in buffers 1308.
`This data is converted from an 8-bit µ-law PCM signal to
`14-bit linear data. Conference bridges 1306 allow multiple
`conference bridges to mix together conferees into a multi(cid:173)
`party conference. These conferees may be