JP4999244B2 - Network telephone apparatus and system for internet telephones - Google Patents
Network telephone apparatus and system for internet telephones Download PDFInfo
- Publication number
- JP4999244B2 JP4999244B2 JP2001502311A JP2001502311A JP4999244B2 JP 4999244 B2 JP4999244 B2 JP 4999244B2 JP 2001502311 A JP2001502311 A JP 2001502311A JP 2001502311 A JP2001502311 A JP 2001502311A JP 4999244 B2 JP4999244 B2 JP 4999244B2
- Authority
- JP
- Japan
- Prior art keywords
- network
- network appliance
- data
- telephone
- sip
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
- H04L65/1104—Session initiation protocol [SIP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/64—Hybrid switching systems
- H04L12/6418—Hybrid transport
- H04L2012/6486—Signalling Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
- H04L69/085—Protocols for interworking; Protocol conversion specially adapted for interworking of IP-based networks with other networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M7/00—Arrangements for interconnection between switching centres
- H04M7/006—Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
【0001】
発明の属する技術分野
本発明は、一般的にインターネットおよびイントラネットの電話に関する。より詳しく言えば、本発明は、ネインターネット/イントラネット通信用のネットワーク遠距離通信器具およびシステムに関する。
【0002】
発明の背景
近年、インターネットは、便利な追加の通信手段からビジネス、教育、技術の分野で不可欠な通信ツールへと発展した。この点で、インターネット部分の成長は、別々の信号ネットワークによって制御された従来の回線交換ネットワークを超える多数の利点をもたらすインターネットに関する。一例を挙げると、人々は、彼らが必要とする品質に最も適切なエンコードや暗号化技法を、より容易に選択および使用をすることが可能になった。例えば、人々は、国際電話をかける場合に、完全トール(通話)品質(full toll quality)を低額で使うことを決めることができるし、一方、リポーターは、記事を電話でラジオ局に伝えるときは、費用を気にせずに完全FM品質を使うことができる。品質低下しない場合でさえ、従来の64kb/sの陸上通信線の電話ネットワークとは対照的に、5.3kb/s(G.723.1)から8kb/s(G.729)が、トール品質をほぼサポートするのに十分である。この柔軟性は、ネットワークに負荷がかかったとき、例えば自然災害の後に、電話の顧客が、約3kb/sで依然として通信を行うことができ、従って、ネットワーク容量が20倍になるという利点になる。
【0003】
電話サービスを既存のインターネットなどのデータネットワークに拡張することは当然であるが、エンド(末端)システムにおいて、インテリジェンス即ち情報処理能力が必要となるという理由からコストが大きな欠点として浮かびあがる。これまでには、基本的なアナログ電話のコストで、低グレードの数マイルの長さのツイストペア線上で動作する外部の電源を必要としないパケットボイス「電話」を構築するのは困難であった。
さらに、インターネット電話製品として知られるものの多くは、H.323信号および制御プロトコルに準拠して動作するよう設計されている。H.323プロトコルは、使用や実装するのが困難な複雑なプロトコルである。この複雑さから、異なる実装のH.323装置が、互換性の問題で悪影響がもたらされ得る。さらに、H.323プロトコルの下で動作する装置は、
相互に直接的に通信することができず、電話は、電話サーバによって処理され、ルート即ち経路選択されなければならない。
従って、低コストであり、簡単な信号プロトコルで動作し、高度な電話機能のセットを多く提供するネットワーク電話器具の必要性が依然としてある。
【0004】
発明の概要
従来の電話システムや既知のインターネット電話システムの上述した不適当な部分や制限事項は、本発明によって実質的に克服される。本発明の第1の目的としては、インターネットおよびイントラネット遠距離通信ネットワーク上で使用するパケットベース音声通信システムを提供することである。
本発明のその他の目的は、イーサネットネットワークなどのデータネットワーク上で使用するパケットデータ電話器具を提供することである。
本発明のさらにその他の目的は、パケットベース遠距離通信システムで使用するコミュニケーションプロトコルを提供することである。
本発明のさらにその他の目的は、電話、「インターネットラジオ」や「インターネットTV」などのその他の連続メディア、或いは、ストリーミングメディアサービスをサポートするインターネットプロトコルアーキテクチャーを提供することである。
本発明のさらにその他の目的は、
その他のネットワーク電話局に直接電話すること、或いは、リダイレクトサーバを介してその他の電話局の人に間接的に電話することができる、低コストのスタンドアローン型ネットワーク電話器具を提供することである。
【0005】
本発明の第1の実施例によれば、ネットワークとデータパケットを送受信するデータネットワークに結合されたイーサネットコントローラサブシステムなどのネットワークコントローラを含むネットワークパケットデータ電話器具が提供される。デジタル信号処理サブシステムは、ネットワークコントローラサブシステムに結合され、着呼を検出し、電話セッションを開始し、電話機能を実装するコンピュータプログラムの下で動作する。信号変換サブシステムは、デジタル信号処理サブシステムに結合され、デジタルパケット情報をアナログ信号に変換したりその逆を行う。ユーザインターフェイスサブシステムは、信号変換サブシステムおよびデジタル信号処理サブシステムに結合され、ユーザ制御と当該器具に対するフィードバックを提供する。このスタンドアローン型ネットワーク電話装置は、本明細書ではネットワーク電話器具と称することとする。
【0006】
ネットワーク電話器具のコンピュータプログラムが、セッション開始プロトコル(SIP)を実装することが好適である。この場合、固有のSIPアドレスが、装置に関連付けられ、制御はSIPプロトコルに準拠して実行される。
ネットワーク電話器具は、
モニタリング機能、電話転送、ストリーミングオーディオモード、発信信者記録、受信者記録などの高レベルの電話機能を実装することが好適である。
ネットワーク電話器具は、センサなどの遠隔源からの信号を受信するセンサインターフェイス回路を含むことが好適である。遠隔源から受信した信号は、ネットワーク電話器具で処理し、適切なネットワーク宛先へ送信する。
【0007】
本発明のその他の態様では、パケット遠距離通信システムで使用する通信プロトコルが提供される。この通信プロトコルは、イーサネットプロトコル層、イーサネットプロトコル層とインターフェイスする、即ち接続するイーサネットプロトコル層の上に積み重ねられたインターネットプロトコル(IP)層、イーサネットプロトコル層とIP層とをインターフェイスし、IPアドレスをメディアアクセスコントロール(MAC)アドレスに変換する、イーサネットプロトコル層の上に積み重ねられたアドレス解決プロトコル(ARP)層、ARP層とIP層とをインターフェイスし、遠距離通信システム内の制御やアプリケーションデータのリアルタイム伝送を提供する、ARP層とIP層との上に積み重ねられたユーザデータグラムプロトコル(UDP)層、UDP層とインターフェイスし、この通信システム内でリアルタイムオーディオデータ伝送を提供する、UDP層の上に積み重ねられたリアルタイム伝送プロトコル(RTP)層、UDP層とインターフェイスし、リアルタイムオーディオデータの登録の信号を出し、これを提供する、UDP層の上に積み重ねられた1つまたは複数の制御プロトコル層、および、RTP層とインターフェイスし、リアルタイムオーディオデータをフォーマットする、1つまたは複数のアプリケーションプロトコル層を持つ。
【0008】
本発明のその他の態様では、ネットワーク電話システムアークテクチャーが提供される。本システムは、本ネットワーク電話器具、および/または、PCをネットワーク電話として動作させるソフトウェアや適切なインターフェイス回路が付属する一般用途のパーソナルコンピュータ(PC)などの、少なくとも2つのネットワーク電話装置を含む。ネットワーク電話装置と共にデータネットワークに結合されたリダイレクト(宛先変更)サーバも提供される。本システムでは、ネットワーク電話装置は、相互に呼びかけて、リアルタイムオーディオ接続を確立することができる。或いは、リダイレクトサーバは、電話をかけた者の電話セッションを開始し、相手先を突きとめ、本人識別をするためにネットワーク電話装置によってアクセスされ得る。リダイレクトサーバを使用して、電話転送、多者電話、ボイスメールなどの高いレベルの電話機能を実装することもできる。
本発明のさらなる目的、機能、利点は、本発明の実施例を説明する付属の諸図面を考慮しつつ以下の詳細な説明から明確なものとなるであろう。
【0009】
本発明の詳細な説明
本発明およびその利点の完全な理解のために、付属の諸図面を参照しながら本発明を説明する。なお、同様の符号番号は同様の機能を示す。
図1は、従来の電話およびパケット電話コンポーネントを持つ通信システムを示すブロック図である。図1に示すように、本システムは、第1のゲートウェイ12を介してパケットネットワーク30に結合された回線交換音声(voice)ネットワーク20を含む。この図は、インターネット電話と従来の「平凡な古い型の電話サービス(POTS)」システムとの間で、少なくとも3つの可能な相互作用:「エンドツーエンド(end-to-end)」パケット配信、「テールエンドホップオフ(tail-end hop off)」配信、ローカルパケット配信、を示す。「エンドツーエンド」配信では、インターネット電話専用となっているネットワークコンピュータなどのエンドシステム、或いはパーソナルコンピュータ(PC)を使用して、オーディオをパケット化し、1つまたは複数の再生用の同様のエンドシステムへオーディオパケットを配信する。「テールエンドホップ」配信では、パケットネットワークを使用して長距離音声伝送を行うが、その一方で標準的な回線交換音声回路を使用して、顧客家屋内機器(CPE)、即ち、標準的なアナログ電話とパケット電話ゲートウェイとを接続する。「テールエンドホップオフ」は、個々の音声回路、同様にPBXの相互接続に使用することができ、および、従来の長距離電話サービスをバイパスすることを可能にし、同様に、POTS機器とパケットベースオーディオエンドシステムとの相互接続を可能にする。ローカルパケット配信では、ボイスデータは、パケットオーディオエンドシステムによって生成されるが、回線交換された音声として、専用或いは公衆の設備を越えて伝送される。
【0010】
図2は、本発明によるパケットデータネットワーク電話システム50の好適な実施例を示す。パケットデータネットワークシステムは、イーサネットLAN52、イーサネット電話54、56、58、ワークステーション60、およびサーバ62、イーサネットゲートウェイ64を含む。イーサネット電話は、ネットワーク装置であり、ネットワーク器具、或いは、適切なコンピュータプログラムの制御の下で動作する音声入出力周辺機器が付属するパーソナルコンピュータシステムなどのスタンドアローン即ち独立の形式をとることができる。このようなパケットデータネットワークアプローチでは、ボイスデータトラヒックが、エンドユーザの直前でパケット化される。例えば、図2のパケットデータネットワーク電話システムは、複数のイーサネットゲートウェイ(図ではただ1つだけ示す)に接続された数ダースの家、事務所、機器を含むことができる。このゲートウェイの各々は、CAT−3Sの配線距離制限であるネットワークターミネーションユニットから328フィートの範囲内に位置する。ゲートウェイは、光ファイバーを通じて近くのスイッチ(図示しない)に順繰りに接続することができる、或いは、図2に示すようにライン66を介して公衆交換電話網(PTSN)直接的に接続することができる。このアーキテクチャーは、高い帯域幅の顧客と低い帯域幅の顧客とが一緒に、別の配線を通ることなく、適応させることができるという利点がある。交換コストは、帯域幅以外のインターフェイスの回数によって支配されるものであるため、この仕組みは、ユーザあたりでより高い帯域幅(特にピーク帯域幅)を提供するが、未だに交換コストは現行の今日の電話ネットワークと同様のままである。図2のアーキテクチャーでは、各ネットワーク装置は、ネットワークアドレスを含み、各装置は、全ての他のネットワーク装置へネットワークアドレスを用いて直接アクセスすることができる。特定の機能を実装するために特化したサーバを用意することもできるが、電話セッション、即ち、ポイントツーポイントのデータ通信を確立するためにはそのようなサーバは必要ない。
【0011】
パケットデータネットワークLAN52を使用は、従来のPCインターフェイスやネットワークハードウェアを使用できるという点で比較的安価な解決策であるということで利点である。パケットデータネットワークLN52は、様々なメディアを越えて操作され得るものであり、マルチアクセスLAN上でより多くの装置を容易に追加することが可能となる。ゲートウェイ64は、簡易パケット音声モジュールとして機能し、ユーザツーネットワーク信号用のDTMF認識を実装する単一のDSPとすることができる。
【0012】
図3は、インターネット電話、および、「インターネットラジオ」や「インターネットTV」などのその他の連続メディア(ストリーミングメディア)サービスを提供するパケットデータネットワークのプロトコルスタック図である。当業者は既知および理解するように、「プロトコル」は、一般的に、コンピュータ間で通信をするための規約のセットである。従って、プロトコルは、フォーマット、タイミング、順序、エラー制御を規定する。用語「スタック」は、プロトコルを処理し、特定のプロトコルの1つまたは複数のセットの使用を可能にする実際のソフトウェアを指す。図3に示す図は、本発明に基づき、様々なプロトコルがどのように相互関連するのかを示す。
【0013】
図3のプロトコルスタック80は、幾つかの層を成すプロトコルを組合せたものであり、基本的なイーサネットメッセージフォーマットやタイミング情報を提供するベースプロトコル82、ベースプロトコル82とインターフェイスし、IPアドレスをメディアアクセスコントロール(MAC)アドレスへ変換するアドレス解決プロトコル(ARP)84、ベースプロトコル82とインターフェイスするインターネットプロトコル(IP)ネットワーク層86、ベースプロトコル82とインターフェイスするオプション、即ち任意選択の動的ホスト構成プロトコル(DHCP)88、および、ARP84、IP86、DHCP88プロトコルとインターフェイスし、アプリケーションデータや制御のリアルタイム伝送をするユーザデータグラムプロトコル(UDP)90、を含む。プロトコルスタック80は、さらに、リアルタイムオーディオデータ伝送をし、一般的にUDP90および変調、スピーチコーデックおよび制御アプリケーション94,96,98とそれぞれインターフェイスするリアルタイムトランスポートプロトコル(RTP)プロトコル層92というアプリケーション特有のプロトコルを含む。アプリケーションプロトコル94,96は、G.711パルスコード変調やG.723スピーチコーデックプロトコルなどの幾つかの形式をとることができる。さらに、リアルタイムストリーミングプロトコル(RTSP)層97を含ませて、ストリーミングメディアアプリケーションのパフォーマンスを向上させることもできる。制御層98は、セッション開始に使用され、好適には、セッション開始プロトコル(SIP)の形式をとる。
【0014】
図3に示すように、RTPは、インターネットを越えてリアルタイムでデータを伝送するのに好適なプロトコルである。H.Schulzrinne、S.Casner、R.Frederick、V.Jacobsonによる「RTP:リアルタイムアプリケーション用のトランスポートプロトコル」(リクエストフォーコメント(提案された標準、RFC1889、インターネットエンジニアリングタスクフォース(1996年1月)を参照されたい。これの全体を本明細書に参照によって包含させるものとする。RTPは、リアルタイムの属性を持つアプリケーションのサポートを提供し、タイミング再構築、ロス検出、セキュリティ、およびコンテンツ識別を含むシン(thin)プロトコルである。さらに、RTPは、インターネット内において多数のグループ向けのリアルタイム会議のサポートを提供し、発信源識別、ビデオや音声用のブリッジなどのゲートウェイ用のサポート、マルチキャスト・ツー・ユニキャストの変換器を含む。RTPは、受け取る側からマルチキャストを行うグループへのサービスの質フィードバックを提供し、同様に、種々のメディアストリームの同期化をサポートする。
【0015】
図3では、IPプロトコル86、UDPプロトコル90、RTPプロトコル92は、低速リンクおよび高度に圧縮されたオーディオ用のそれぞれのパケットに40バイトを加え、8kb/sのオーディオの20msに20バイトを加える。従って、ヘッダー圧縮が望ましい。
上述したように、図3のプロトコルスタック80は、1つまたは複数のものとマルチメディア交換を確立するためのセッション開始プロトコル(SIP)を使用することが好適である。
【0016】
SIPは、電話(自動)転送(call forwarding)、通話中着信(call waiting)、コーラーM(caller M)、内線転送(call transfer)、「キャンプオン(camp-on)」、「コールパーク(call park)」、「コールピックアップ(call pick-up)」などの標準PBXまたはCLASS機能を提供する。「キャンプオン」は、話し中の単線音声局に対して着信先生成、或いは、拡張コールが、相手先の回線が空きその他のコールを処理できるようになるまで、着信先局を自動的に待つようにすることを可能にする。「コールパーク」は、ユーザが、コール即ち電話を保留にし、その後、システム内のその他の局でコールを取ることを可能にする。「コールピックアップ」は、局が、ユーザが指定したコールピックアップグループの中のその他の内線番号でコールに応答することを可能にする。これらの機能の多くは、シグナリングサポートを全く必要としないが、エンドシステムのソフトウェアによって実装することができる。SIPは、HTTP/1.1の変形として設計されたものであり、HTTPセキュリティの再使用、認証、コンテンツのラベリングや決済、交渉機能を容易にする。
【0017】
SIP機能は、カレンダーベースのコールハンドラー(処理プログラム)を使用する。コール処理ソフトウェアは、ユーザ個人約束カレンダーにアクセスし、それに応じて電話(機)に回答する。ユーザは、発呼者のカテゴリを定義し、カレンダーのエントリーに基づき、発呼者のコールのどのコールをどこへ(自動)転送するのかをプリセットする。コールを転送しない場合は、例えば、発呼者の身元に基づき、「現在電話に出られません。」から「ジョン・スミスは、5621号室でジェーン・ドゥと午後3時まで会議中です」までの範囲で発呼者に情報を流すことができる。コールハンドラーは、コール処理言語、ボイスメールシステムや自動コール処理システムをほんの数行のコードで構築することが可能な状態ベースのスクリプト言語と統合することもできる。コールハンドラーは、ISDNコールとインターネット電話コールとの間の変換を処理・管理することができる。
【0018】
図4は、本発明によるパケットデータネットワーク電話100の好適な実施例を示す高レベルハードウェアのブロック図である。本開示を通じて明らかになるが、装置100は、音声やデータをパケットデータネットワークにのせるイーサネットLANのイントラネットやインターネットなどの比較的に低コストのインターフェイス製品である。従って、装置100は、一般的に、このスタンドアローン装置のボードへの適用を反映させるためにネットワーク器具と称する。
【0019】
ネットワーク器具100は、音声および映像の通信をローカルエリアネットワーク(LAN)、インターネット、或いは、その他のイーサネットネットワーク上で提供し、これは、一般的に、ネットワーク(例えば、イーサネット)コントローラサブシステム110、デジタル信号処理サブシステム120、信号変換サブシステム130、信号変換サブシステム130とデジタル信号処理サブシステム120とに結合されたユーザインターフェイスサブシステム160、を含む。電話100は、さらに、電源、ROM142、RAM152をも含む。ユーザインターフェイスサブシステムは、図5を参照しながら後述するが、その他のユーザ制御169スピーカ161、マイクロホン162を含む。データ取得や制御機能用のインターフェイス回路135は、信号変換サブシステム130とも結合することができる。或いは、このようなI/O回路は、直接DSP120に結合することもできる。
【0020】
ネットワークコントローラサブシステム110は、DSP120と外部ネットワークとの間に設けられ、従って、データパケットのデータ(イーサネット)ネットワークとのやり取りを提供する。イーサネットコントローラサブシステム110は、デジタル信号処理サブシステム120に、イーサネットネットワークから受信したデータを引き受けるよう、或いは、イーサネットネットワークへデータを提供するよう指示する。さらに、ネットワークコントローラサブシステムは、
壊れた、或いは所望でないイーサネットネットワークから受信したデータパケットを廃棄したり拒否したりすることによって、初期ゲートキーパーとして機能することもできる。
【0021】
図5は、本ネットワーク器具をさらに詳細な説明するブロック図である。図5に示すように、ネットワークコントローラサブシステム110の好適な実施例は、イーサネットコントローラ112、サービスフィルター114(10base-T変換器)、少なくとも1つのRJ−45ソケット116を含む。中でも特に、ネットワークコントローラサブシステム110は、以下の機能:ネットワーク器具とイーサネットネットワークとをインターフェイスする機能、イーサネットパケットを送受信する機能、データがイーサネットから利用可能である場合に、DSPサブシステム120にデータを受け入れることを知らせる機能、DSPサブシステム120からパケットを受信し、そのパケットをイーサネットへ送信する機能、および、イーサネットからの所望でないパケットを拒否し廃棄する機能、を実施する。
【0022】
図5に示すように、イーサネットコントローラ112は、アドバンスドマイクロでバイス(AMD社)から市販されるイーサネット用のAM79C940メディアアクセスコントローラ(MACE)にすることが望ましい。このMACE装置は、スレーブ登録ベースの周辺機器である。本システムへの転送、および本システムからの転送の全ては、シンプルメモリ、或いは、I/Oリードやライトコマンドを使用して実行される。ユーザの規定したDMAエンジンと協同して、MACEチップは、特定のアプリケーションに合わせたIEEE802.3インターフェイスを提供する。
個々のFIFOの送信、受信は、システムレイテンシを減少させ、そして、以下の機能:FIFOリロードでない場合自動再送する機能、自動受信ストリッピングと送信パッディング機能、自動ラントパケット(短パケット)拒否機能、衝突フレームの自動削除機能、シンプルインターフェイス用のFIFO・リード/ライトアクセスをDMAコントローラかI/Oプロセッサかにダイレクトする機能、任意バイトの配置および小/中/大メモリインターフェイスサポート機能、5〜25MHzシステムクロックスピード機能、をサポートする。
【0023】
再度図5を参照されたいが、デジタル信号処理サブシステム120は、デジタル信号プロセッサ(DSP)122と、関連する論理回路を含み、この論理回路は、読み出し専用メモリ(ROM)142、ランダムアクセスメモリ(RAM)152、消去可能プログラマブルロジック装置(EPLD)124を含む。デジタル信号処理サブシステム120は、以下の機能:音声圧縮などのデジタル信号処理機能、コール進行トーン生成機能、リング信号生成機能、DSPと相互接続する一般的な「グルー(glue)」ロジック機能、メモリとI/O装置機能、ネットワークプロトコル処理機能、コールフロー制御と有限状態機械実装機能、キーパッド活動検出とデコーディング機能、および、ディスプレイ制御機能、を提供する。
図5に示すように、本ネットワーク器具の好適な実施例に使用されるDSP122は、テキサスインスツルメント社のTMS320C32などの何らかの適切な市販されるものとすることができる。TMS320C32DSPは、以下の機能:単一サイクルにて整数、浮動小数点データで並列乗算と演算論理回路(ALU)処理、汎用レジスターファイル、プログラムキャッシュ、専用外部レジスタ演算ユニット(ARAU)、内部デゥアルアクセスメモリ(512倍語長)、2つのダイレクトメモリアクセス(DMA)チャネル、1つのシリアルポート、2つのタイマー、1つの外部メモリポート、および、多重割り込み構造を持つ。
【0024】
さらに、TMS320C32DSPは、4つの外部割込みと、5つの内部割込みリソースを含む。外部割込みは、外部ピン(端子)によって直接引き起こすことができる。内部割込みは、シリアルポート、DMAコントローラ、タイマーなどの個別の周辺機器をプログラミングすることによって引き起こすことができる。さらに、これらの全ての割込み源は、CPU/DMAの有効レジスタ、即ちIEを介するDMAチャネル割込みとしてプログラムすることができる。TMS320C32DSPは、フレキシブルブートローダーを含み、このローダーは、ネットワーク器具用のメイン制御プログラムを3つの異なる外部メモリ空間の1つまたはシリアルポートから自動的にロードさせることを可能にし、電源の投入などのDSP122が初期化されるときのINT0~INT3の外部割込みの活動によって決定されたことに従いどちらかを割り当てる。
【0025】
DSP112は、一般的に、以下のリソース割り当て、外部割込みINTO:「0x1000からシステムブート」指示、システムの電源が入れられ、int0がアクティブである場合、DSPは、プログラムを外部メモリ空間0x1000からブートする、
INT1:DMA0外部割込み信号、ネットワークコントローラ112からのパケットを受信するのに使用される、
INT2:DMA1外部割込み信号、ネットワークコントローラ112へパケットを送信するのに使用される、
INT3:AM79C940パケット状態とエラーメッセージ割込み、
を含むよう構成される。図6に、本ネットワーク器具の実施例で使用するDSPメモリマップのサンプルを示す。
【0026】
再度図5を参照されたいが、本ネットワーク器具は、ユーザインターフェイスサブシステム160を含み、このユーザインターフェイスサブシステム160は、キーエンコーダ(符号化器)166、液晶ディスプレイ(LCD)164、ハンドセット163(これは、キーパッド165、マイクロホン162、スピーカ161)を含む。ユーザインターフェイスサブシステム160コンポーネントは、以下の機能を提供することによって、ユーザがネットワーク器具と相互作用をすることを可能にする。その機能とは、入力(キーボード)と出力(LCD)用のユーザインターフェイス、音声インターフェイス、スピーカを介するリングアラート出力、ハンドセット、或いは、ハンズフリー(マイクとスピーカ)通信代替手段である。
【0027】
さらに、LCDは、ディスプレイのそば、例えば、横や下にボタンを持つことができる。これらのボタンの機能は、その機能がシステムの現在の状態に依存する「ソフトキー」として操作することができる。例えば。電話に出ないときは、ディスプレイは、クイックダイヤルリストや時刻を表示することができる。さらに、コールに出なかったり、ボイスメールとして転送された後、ディスプレイは、受けたコールのリストを表示することができる。電話に出ている間は、その他のかかって来る電話を表示し、加入者が、コール間でスイッチしたり、コールをブリッジしてコールに出るようにすることが可能である。
或いは、本ネットワーク器具100のユーザインターフェイス160は、小型タッチスクリーン(図示しない)と共に構成させ、LCDディスプレイやボタンを置き替える、或いは、それを補わせることができる。このタッチスクリーンは、図的に利用可能な機能や操作を表示し、ユーザのディスプレイに対する接触に応答し、英数字のネットワークアドレスやその他の電話操作の入力などに用いる機能強化したユーザインターフェイスを提供する。
【0028】
図5は、信号処理システム130を示し、これは、A/D変換、D/A変換を実行するPCMのエンコーダおよびデコーダ、および、ハンドセットや対応するスピーカ161やマイクロホン162に結合されるオーディオ増幅器134を含む。また、単一のAC或いはDC電源アダプタ(ウォールワート(wall wart))からプラスおよびマイナス5Vの電圧レベルを供給するための電源を設ける。図5の好適な実施例では、マイナスの電圧レベルが、LCD164とPCMコーデック132によって必要とされる。
【0029】
図7は、図5のネットワーク器具で使用するのに適するメモリインターフェイス700を説明するブロック図である。メモリインターフェイス700は、外部メモリモジュール142,152を含み、これらのメモリモジュールは、プログラム格納用に128Kバイトの読み出し専用メモリ(ROM)142と、少なくとも32Kバイトの倍語長(32ビット)のスタティックランダムアクセスメモリ(RAM)702,704,706,708とを含む。ROM142の速度が比較的遅いため、ネットワーク器具は、ROMからメインプログラムを起動し。これを実行時のために比較的速いRAM内に格納しておくことが好適である。
【0030】
図8は、本発明の好適な実施例によるDSP122とイーサネットコントローラ124との間のインターフェイスの一例を示すブロック図である。イーサネットコントローラ124の32個のレジスタは、図6に示したDSP122のメモリ空間0x810000にマップされたメモリである。はじめの2つのレジスタは、受信・送信「先入れ−先出し」(FIFO)キュー(待ち行列)とすることが望ましい。DSP122は、16ビットのデータバス802を介してイーサネットコントローラ124とデータを交換する。
【0031】
図9は、本発明の好適な実施例によるDSP122とPCMコーデック132との間のインターフェイスを説明する線図である。図9に示すように、DSP122は、内部シリアルポート902を介してPCMコーデック132と接続する。DSP122のシリアルポートは、独立2方向シリアルポートである。
【0032】
図5に示すように、DSP122は、LCD164に機能的に結合される。このLCD制御インターフェイスは、図10に示すDSPアドレスにおいてマップされる。本発明の一実施例では、LCD164は、バジトロニクス社(Vazitronics)によって製造されたMGLS-12032AD LCDなどの120×32ピクセルである。LCDのアクセス速度は、一般的に遅いため、LCDに表示されるデータは、DSP122のSTRB0(1x1000)メモリ空間にマップすることができ、これはROMメモリ空間と同じメモリ空間である。
LCDのタイミングロジックは、DSP122用のタイミングロジックと同じである。しかしながら、LCDがMGLS-12032などのように左半分と右半分から成る場合、全ラインのメッセージを表示するときに右・左の両半分を制御およびプログラムする必要がある。
【0033】
図11は、本ネットワーク器具用のソフトウェアアーキテクチャーを示すブロック図である。図11に示すように、本ネットワーク器具用の処理アーキテクチャーは、一般的に、3つのレベル:ISR(割り込みサービスルーチン)レベル1110、オペレーティングシステムまたはプロセスレベル1120、アプリケーションまたはタスクレベル1130、として編成される。それぞれのソフトウェアレベルで実行することができるタスクおよび機能のリストの例示を図13で提供する。
最も下のレベルISRレベル1110は、割り込みハンドラーとI/Oインターフェイスとを含む。ISRレベル1110は、プロセスレベル1120と図4と図5に示すネットワーク器具ハードウェアとの間のインターフェイスの役目を果たす。
上のISRレベル1110は、プロセスレベル1120、または、オペレーティングシステムであり、これは、スターコム社のCRTX埋め込みリアルタイムマイクロカーネルなどのようなリアルタイム・マルチタスキングのマイクロカーネルとすることが望ましい。一般的には、プロセスレベルソフトウェア1120(マイクロカーネル)は、メモリ管理、プロセスおよびタスク管理、およびディスク管理機能を実施する。図12に示す本発明の好適な実施例では、
マイクロカーネルは、3つのスケジューリング機構:
リアルタイムイベントフラグマネージャー1222、ディレイドタスクマネージャー1224、および、スケジューリングマネージャー1226、をサポートする。マイクロカーネルは、上述した3つの異なる機能のためにそれぞれ3つの別々のキューを持つ。
【0034】
リアルタイムイベントフラグマネージャー1222を使用してフラグ設定のためにリアルタイムイベント(事象)の実行を引き起こす。フラグが「オン」条件に設定された場合、当該フラグに関連付けられたタスクは、即座に実行される。例えば、割り込みサービスルーチンは、ある特定のイベントが起こった場合に特定のフラグをセット即ち設定する。フラグイベントは、関連付けられたタスクアドレスと共にフラグキューに入れられる。
ディレイドタスクマネージャー1224は、時限イベントの機能を果たす。フェイルセーフ、或いは、「番犬」即ち監視装置のタスクなどの時限タスクは、ある時間遅延の後で実行させることができる。あるイベントがある時間枠の範囲内に起こらない場合は、タイマーが、実行されるべきタスクを引き起こす。その他の例は、周期的なタイマーによって制御されたタスクの反復実行である。各タイマーは、時間計数器と共にロードされ、その後、ハードウェアのインターバルタイマーからタイマーのすべての時刻を決定する。計数器がゼロに至ったとき、当該タイマーに関連するタスクは、タスクキューにスケジュールされる。スケジューリングマネージャー1226は、タスクスケジュールマネージャーをスキャンしてスケジュールされたタスクを探す。キューにエントリーが見つかった後、すぐに、制御をスケジュールされたタスクへ渡す。
【0035】
図13A〜Fは、タスクレベルソフトウェア(図13A〜C)、プロセスレベルソフトウェア(図13D)、およびISRレベルソフトウェア(図13E〜F)の一部となり得る例示のソフトウェアタスクや機能をリストするテーブル即ち表である。本発明においては、ソフトウェアアーキテクチャーに関して称する用語「タスク」、「機能」は、同意語と見なす。しかしながら、「タスク」は、一般的にはスケジューリングマネージャー1226によって実行され、他方、「機能」は、一般的にはタスクやその他の機能によって呼び出される。コール処理(Call_task)やIP処理(IP_send_taskやErcv_taskなど)などのアプリケーションタスクは、プロセスレベルソフトウェア1120によってスケジュールされる。このようなタスクの実行は、ISRやその他のタスク、或いは、現行タスク自身による事前スケジューリングの結果である。
【0036】
図13A〜Fは、図11の本パケットデータネットワーク電話ソフトウェアによって実行されるエベントドリブン(主導型)操作でコールされる機能やプロシージャ(手順)の定義の例示を示す。様々なイベントから起こったものからコールされた機能は、パケットデータネットワーク電話/システムの操作をイネーブル即ち有効化し、パケットデータネットワーク電話/システムの初期化、ARPデータの処理、音声データのエンコーディング、メッセージデータ処理、IPデータ処理、音声データのデコーディング、対応バッファーとアナログおよびデジタルデータのやり取り、および、番犬機能の実行、などの全体的な操作を含む。
【0037】
パケットデータネットワーク電話器具の初期化は、ハードウェア初期化ステップとタスクスケジューリングステップとを含む。電源を入れた後、DSP122は、自動的にメインプログラムをROM142からRAM152へ転送する(ブート操作)。ハードウェア初期化は、従来からの方法で起こり、スタックポインター、外部バスインターフェイス制御レジスタ、DSPのグローバル制御レジスタ、ISR用の割り込みベクトル、などの初期化ステップ含む。
ハードウェアの初期化および予備タスクスケジューリングが終わった後、処理の制御は、プロセスレベル(マイクロカーネル)1120に戻される。CRTXマイクロカーネル1120とスケジュールされたタスクは、それから、さらなる処理を制御する。
【0038】
図13Aを再度参照されたいが、本ネットワーク器具のタスクレベルソフトウェアは、アドレス解決プロトコル(ARP)処理を含む。ARPは、IPアドレスを、イーサネットアドレスなどの物理アドレス(データリンク制御(DLC)アドレス)に変換するために使用される既知のTCP/IPプロトコルである。物理アドレスの入手を望むホストコンピュータは、ARP要求をTCP/IPネットワークに対してブロードキャストする。その後、当該要求にあるIPアドレスを持つネットワーク上のホストコンピュータは、自己の物理ハードウェアアドレスを返す。
【0039】
図14は、ARP要求出力プロシージャ1400ARP_Out()を説明するフローチャートである。図13Bに示すように、ARP_Out()は、解決すべきIPアドレスを受信し、それに対応するMACアドレスを出力するタスクレベルソフトウェアのコンポーネントである。ARP要求が開始するとき(ステップ1402)、ARP_Out()機能は、はじめに、ローカルARPキャッシュテーブルarptableの中から要求されたIPアドレスをチェックする(ステップ1404)。ステップ1406で対応するエントリー即ち項目が解決される場合は、ARP_Out()は、arptableからMACアドレスを要求されたパラメータをコピーし、ARPOKステータスフラグを返す(ステップ1408)。そうでない場合は、本プロシージャは、arptableにエントリーを割り当て、ARP要求をスケジュールする(ステップ1410)。ステップ1410でさらに示すように、arptableのMACアドレス即ち「ハンドル(handle)」が、メインプログラム(c_int00())に返される。このハンドルに従って、それから、ソフトウェアは、対応するエントリーのae_stateをチェックする。
【0040】
図15は、例示のARP要求入力プロシージャ1500ARP_In_task()のフローチャートであり、このプロシージャ1500は、図13Aにリストしたタスクレベルソフトウェアのコンポーネントである。ARP_In_taskは、ARPパケットを受信し、入ってくるパケット即ち着信パケットがARP要求である場合は、arptableを修正するか、或いは、ARPリプライをキューに入れるかを行う。ARPパケットを受信するとき(ステップ1502)、
本ソフトウェアは、ARPハードウェアのタイプ、或いは、プロトコルタイプの合致をチェックする(ステップ1504)。1つまたは両方のタイプが合致する場合、その後、本ソフトウェアは、宛先ホストが、本ホストであるかをチェックする(ステップ1510)。宛先ホストが本ホストでない場合は、その後、制御はメインプログラムに返される(ステップ1508)。
【0041】
図15にさらに示すように、宛先ホストが、現在のホストである場合は、その後、Arp_In_taskは、次に、ARPテーブルをチェックして、着信パケットに対応するARPエントリーがあるのか否かを判断する(ステップ1512)。エントリーが見つかった場合は(ステップ1514)、その後、新たなMACアドレスが既存のエントリーへとコピーされ、当該エントリーの「生存期間(TTL)」を新たな値に修正する(ステップ1516)。TTLは当業者には、廃棄される、或いは、送信者に返送される前に、パケットが移動するとき何回ホップできるかを指定するインターネットプロトコル(IP)のフィールドであると理解されている。しかしながら、そのようなMACエントリーがステップ1513によって何も見つからない場合、それから、ARP_In_taskは新たなMACエントリをARPテーブルに追加する(ステップ1518)。MACエントリーがPENDING(保留)状態の場合(ステップ1520)、その後、それはRESOLVED(解決)状態へ変えられ、MACアドレスは、目的にエントリーにコピーされる(ステップ1522)。着信ARPパケットが、その他のホストからのARP要求である場合は、ARPリプライパケットは、IP_Send_taskをキューに入れる、即ち待ち行列に入れることによって、送信される(ステップ1524、1526)。その後、制御は、メインプログラムに戻される(ステップ1528)。
【0042】
ARP入力および出力プロセスに加えて、タスクレベルにおけるARP処理は、
ARPエントリーテーブルarptableを保守管理するのに使用される遅延したループタスクであるARPTimer_task()を含む。名目上、ARPTimer_task()は、1秒あたり1回生成される。ARPTimer_task()の主目的は、ARPエントリーの生存期間(TTL)を減少すること、および、以前のARP要求が消失した場合のペンディング中にARP要求を再送することである。
【0043】
タスクレベル処理は、オーディオパケットのコーディングおよびエンコーディングに関連する処理操作を含むことができる。このCodec_taskは、「タイプ」パラメータで示されたアルゴリズムに応じて、ADBuffの音声データをエンコードしEncodeBuffに入れるSpeechEncode()機能を含む。それから、コード化したデータは、キューIP_Send_taskを介して「RTP」パラメータ設定と共に送出される。
【0044】
タスクレベル操作は、インターネットプロトコル(IP)処理を含むことができる。一般的なIP処理操作を、図16のブロック図で説明する。図16に示すように、IP処理は、イーサネットパケットの送受信(ステップ1602)、IPパケットの多重化および非多重化(ステップ1604)、イーサネット、インターネット(IP)、ユーザデータグラムプロトコル(UDP)、リアルタイム伝送プロトコル(RTP)およびアドレス解決プロトコル(ARP)パケットのパケット化および非パケット化(ステップ1606)、というステップを含む。
【0045】
図16のステップ1602では、イーサネットパケットの伝送は、イーサネットコントローラ112のダイレクトアクセスメモリ(DMA)チャネルを使用して実行することができる。DMAは、CPUを経由せずにデータをメインメモリから装置へ転送する技法である。DMAチャネルは、従来の方法より非常に速くデータを装置とやり取りできるため、DMAチャネルの使用は、本ネットワーク電話システムなどのリアルタイム用途では特に便利である。
【0046】
ネットワークコントローラ110は、パケット伝送に使用できるイーサネットコントローラ112のDMA1チャネルなどのような複数のDMAチャネル、をサポートすることが好適である。
イーサネットパケットが伝送の準備ができている場合、DMA1()機能、即ちISRレベル機能は、発信源アドレス(イーサネットパケットバッファー、ESend)、宛先アドレス(イーサネットコントローラの転送FIFO)、およびカウンター(パケット長)を設定することによって呼出される。図17に、イーサネット伝送データ構造の一例を挙げる。DMA1()機能は、DMA1チャネルを開始する。カウンターがゼロに達したとき、DMA1は停止し、次のコ―ルを待つ。
【0047】
図18は、オーディオ入力バッファー1802と、UDPバッファー1804と、イーサネットネットワークコントローラ112のイーサネットインターフェイス(イーサネット伝送FIFO)に対するARPテーブル1806との間のデータフローを示すブロック図である。
図18にさらに示すように、オーディオ入力バッファー1802、UDPバッファー1804、およびARPテーブル1806からのデータは、IP出力キュー1810へ送られ、プロトコルタイプ、ソースポインター、およびデータ長を示すように構成される。送出データをキューに入れる代わりに、IP_Send_taskが、プロセスレベルソフトウェア(マイクロカーネル)1120によってキューに入れられる。IP_Send_taskによってサポートされるプロトコルタイプは、一般的に、UDP、RTP、ARP_REQUEST、ARP_REPLYを含む。IP_Send_taskは、パケット伝送およびイーサネットのパケット化のために使用される。好適には、IP_Send_taskは、SIP_taskやARP_Out()やSpeechEncode()などのようなその他の機能やタスクによってスケジュールされる。一旦IP_Send_taskが動作すると、それは、データのプロトコルタイプをチェックする。それから、このタスクは、出力データをカプセル化してEsendバッファーの対応するイーサネットパケットに変換する。最後に、パケットは、割り当てられたDMAチャネル(DMA1)を介して送出される。
【0048】
図19は、パケット受信と非多重化操作をさらに説明するデータフロー図である。非多重化(デマルチプレキシング)は、Ercv_taskの異なるプロトコル用の異なるタスクをスケジュールすることによって実現する。図16のステップ1602では、イーサネットパケットは、受信データFIFOメモリに受信され(ステップ1902)、DMA0チャネルコントローラによってさらに処理される(ステップ1904)。DSP122は、いつパケットが到着するのかを知らないため、DMA0チャネルは、常時活動している(即ち、カウンターがゼロになっても停止しない)。パケットが到着したとき、DMA0チャネルは、自動的に、そのパケットをイーサネットコントローラの受信FIFOメモリからイーサネット受信バッファー:Ercvにコピーする(ステップ1906)。DMA0チャネルは、FIFOメモリに利用可能なデータが無くなると停止する。
【0049】
Ercv_taskは、イーサネットパケットの非多重化およびIPパケットの非多重化用のフラグ起動タスクである(ステップ1908)。このErcv_taskは、第1には、着信パケットをチェックするために呼ばれるPacketCheck()機能である。PacketCheck()機能は、パケットのプロトコルタイプを返すか、或いは、パケットが無効の場合はヌル値(NULL)を返す。第2には、返されたプロトコルタイプに基づき、Ercv_taskは、受信したパケットを処理するために種々のタスク、例えば、RTPパケット用にRTP_In_taskを(ステップ1910)、ARPパケット用にARP_In_taskを(ステップ1914)、或いは、UDPパケット用にUDP処理タスクを(ステップ1912)を起動する。
【0050】
図13Cを説明する。SpeechDecode()は、ステップ1910のRTP処理に関連する音声デコーディング機能である。まず、SpeechDecode()タスクは、デコーディングバッファー:DecodeBuff内に利用可能なデータがるか否かをチェックする。データが利用可能、例えばRcvFlagがセットされている場合は、SpeechDecode()は、受信データのデータタイプ、例えば、PCM(G.711)、G.723、G.729に基づきデータをデコードする。デコードされたデータは、D/Aバッファー:DABuffに送られる。
【0051】
A/DおよびD/A割り込みルーチンは、内部割込み源、例えば、Rint0()によって起動することができる。A/DおよびD/A割り込みルーチンは、DSPによって与えられた8kHzのサンプリング周波数によって起動されることが望ましい。このルーチンは、しばしば呼ばれるものであるため、Rint0()は、アセンブリ(機械)語で記述することが好適である。Rint0()によって実行されるステップは、D/Aバッファー(DABuff)からD/Aサンプルを読み取るステップ、サンプルをシリアルD/Aポートに送るステップ、シリアルA/Dポートからサンプルを取得するステップ、A/DサンプルをA/Dバッファー(ADBuff)に格納するステップ、および、A/DおよびD/Aバッファーポインター(ADPnt,DAPnt)を1ずつ増加させるステップを含む。
【0052】
図20Aおよび20Bは、本発明のソフトウェアによって使用されるA/DおよびD/A「ピンポン」バッファースキーム(方式)を示すブロック図である。さらに、現在のA/Dポインター値(ADPnt)が、所定のバッファー閾値(ADTh)を越えた場合は、サービスが必要であることを示すフラグタスクキューにフラグが設定される。
【0053】
A/DおよびD/Aバッファーは、2つの部分、上部バッファー2002aと下部バッファー2002bとにそれぞれ分割することができる。両バッファーは、循環バッファーとして設計することができる。従って、現在のポインターがバッファーの一番下に達するとき、それは一番上に重なる、即ち開始部分に戻る。しかしながら、エンコーダおよびデコーダから見れば、2つのフレームのピンポンバッファースキーム(上部フレームおよび下部フレームとして定義された)として使用される。この処理の操作を図20Aと20Bとに示す。A/D変換の場合は、上部(または下部)が満杯になったとき、上部(または下部)バッファーのデータは、ピンポンスイッチ2004を通って渡され、音声エンコードバッファー(EncodeBuff)2006へコピーされる。D/A変換の場合は、上部(或いは下部)バッファーが終了するとき、データの新たなフレームが音声エンコードバッファー(DecodeBuff)2010から上部2008a(或いは下部2008b)バッファーへとコピーされる。この仕組みは、エンコーディング(或いはデコーディング)アルゴリズムが、バッファーのある部分を読む(書く)間に、A/D(或いはD/A)サンプリングISRが、バファーのその他の部分を衝突することなく書く(読む)ことができることを保証する。
【0054】
図21は、本ネットワーク器具の実施例で使用されるCall_taskサブルーチンで使用される状態遷移図である。Call_taskは、コールプロシージャを処理するループするタスクである。図21に示すように、「idle(待機)」状態2102は、発呼がない、または、着呼がないときに起こる。この状態が存在するとき、Call_taskは「idle」状態でループする。「DialTone(ダイヤルトーン)」状態は、受話器の状態が「OFFHOOK(オフフック)」すなわち外した状態、或いは、ハンドセットが「ハンズフリー」を示している場合に存在する。従って、オフフックかハンズフリー状態が存在する場合、Call_taskの状態は、「idle」状態2102から「ダイヤルトーン」状態2104状態へと変化する。一般的には、コールが開始されること示すユーザ制御160からのユーザによる入力によって、これらの状態に入る。Call_task状態が「DialTone」状態2104のとき、
Codec_taskは、「ToneMode(トーンモード)、DialTone(ダイヤルトーン)」として構成され、ダイヤルトーンがユーザインターフェイス160のハンドセットコンポーネントへ送出される。
【0055】
図21を再度参照されたいが、「dialTone」状態2104の間に、何らかの数字キー(0…9,*,#)或いはリダイヤルボタンが押された場合は、コール状態は、「DialTone」状態2104から「GetDigit(数字取得)」状態2106へと変化する。「GetDigit」状態2106では、ハンドセットではダイヤルトーンが停止する。
相手先の電話番号を入力し、ダイヤルが終わりであることを示すためにエンターボタンを押した後、Call_taskが、入力が有効であるか否かをチェックする。番号が有効である場合は、コールエントリーが、機能Create_SipCall()によって作成され、Call_taskは、「SIP」状態2108に入る。そうでなければ、番号が無効である場合は、無効である場合は、番号の再入力を求め、状態は「GetDigit」状態2106のままとなる。
SIP_task処理を待つ間に、「SIP」状態2108に基づき幾つかの決定をすることができる。「SIP」状態2108は、グローバル変数(SIP_status)であり、これはSIP_taskの状態遷移によって修正される。「SIP」状態2108がSIP_Ringに変化する場合は、Call_taskは「RingBack(折り返し電話)」状態2114に変化し、Codec_taskは「ToneMode、RingBack」モードとして構成される。、Codec_taskが、「ToneMode、RingBack」モードにある場合は、リングバックトーン(呼出し音)がハンドセットへ送出される。
【0056】
「SIP」状態2108から、「SIP」状態2108がSIP_busyに変わる場合は、Call_task即ちコールは、「BusyTone(話中音)」状態2120へ変化し、話中音がハンドセットで再生される。「SIP」状態2108がSIP_Refusedに変化する場合は、SIP_Refused状態に関連する適切なメッセージがLCDスクリーンに表示される。
「RingBack」状態2118から、「SIP」状態がSIP_Connectedになった場合は、Call_task状態は「Talk(会話)」状態2116へ変化する。Call_task状態が「Talk」状態にあるときは、Codec_taskは、SpeechEncodeおよびSpeechDecodeのモードとして構成される。
【0057】
着呼の場合は、「Idle」状態2102中に、「SIP」状態2108がSIP_inviteである場合には、Call_task状態は「Ring(鳴鈴)」状態2114に変化し、Codec_taskは、「ToneMode、RingTone」として構成される。Codec_taskが「ToneMode、RingTone」として構成される場合は、リングトーン即ち着信音がラウドスピーカで再生される。SIP状態がSIP_connectedになった後、Call_task状態は「talk」状態2116に変化する。そうでなければ、SIP状態はSIP_Cancel(キャンセル)になった場合(発呼者がコールをあきらめた場合に発生する)、Call_task状態は「Idle」状態2108に戻る。
「Idle」状態2102にあるときに、エンターボタンが押された場合は、Call_taskはSetting_task(設定タスク)を呼出す。このパラメータ設定プログラム終了したとき、Call_taskに戻る。
【0058】
Call_taskの実行の間に、フック状態が、受話器がONHOOK(オンフック)であること、或いは、システムエラーが見つかったことを示す場合は、Call_taskは、以前の状態が何であるかに(「Ring」状態2114を除く)かかわらず、「Idle」状態2102に変化する。
図5に示したネットワーク器具の好適な実施例では、この電話のキーパッドは、ユーザ入力やコマンド用の17のキーを持つ。この電話キーパッドは、10の数字キー、2つの特殊キー、5つの機能キーを含み、これらは図22に示すように定義される。
Key_taskは、0.1秒毎などのような周期的に作動するループディレイドタスクである。開始したとき、はじめに、Key_taskは、Key()機能を呼出す。戻り値が「−1」でない場合は、キーが押されたことを意味する。それから、KeyMap()機能は、入力のバイナリー(二進)のキーワードをアスキー(ASCII)のキーワードにマップする。Key_taskは、それから、機能キー構造の対応する機能を設定する。本システムがキー入力を受け入れる準備ができている場合(KeyRegEnableが表示されている)、入力キーワードはKeyBuffに格納される。
【0059】
さらに、Key_taskは、4つの異なる入力モード:数字入力モード、IPアドレス入力モード、アルファベット入力モード、およびリストアドレス入力モード、をサポートすることが好適である。
この4つのモードの切替えは、ハンドセットを取り上げ、ダイヤルトーンが聞こえたときに、何かの数字やアルファベットをダイヤルする前にエンターボタンを押すことによって設定できる。入力が終わりエンターボタンが押された後、入力番号は、メッセージパイプによって現在のタスク(call_task或いはSetting_task)に転送される。リダイヤルキーが押された場合は、以前の入力をバックアップバッファー(KeyBackup)からKeyBuffへコピーする。それから、このデータはCall_taskへ転送される。
本ネットワーク器具のオペレーティングシステムは、ディレイドタスクスケジュールスキームをサポートすることが好適である。このディレイドタスクは、UNIXにおけるsleep()機能と同様のものである。しかしながら、ディレイドタスクは、このタスクの繰り返しフラグがセットされているときには、周期タイマーによる持続タスク実行にすることもできる。これは普通の時計として機能し、現在の時刻(時分秒を含む)を計算し表示する。コールが接続したとき、このタスクは通話時間を表示することができる。電話がオンフック(不使用時)になっているときは、年、月、日付をもLCDに表示することができる。
【0060】
図11を再び参照されたいが、本発明のネットワーク電話ソフトウェアは、ソフトウェアISRレベルの一部として含まれる幾つかの低レベル機能を含む。これらの低レベル機能の幾つかは、図24に定義する本電話器の8ビットI/Oパラレルポートと共に使用されるI/O関連機能である。この低レベルのI/O関連機能は、「フック」状態モニタ(Hookst())、キー入力可用性検査および読み取り(Key())、ハンドセットおよびハンズフリー制御(HandSet())、イーサネットコントローラリセット(ENET_reset())、ボリューム制御(AmpControl())、および、システムのソフトウェアリセットを含む。オーディオインターフェイスチップ136(LM4830の形式を取ることが望ましい)を使用して、ハンドセットとハンズフリーとの間で切替えをすることができる。例えば、HandSet()機能は、「ハンズフリー」モードが必要である場合には「0」をI/Oポートに書き込むことができ、或いは、「ハンドセット」モードが必要である場合は、「1」を適切なポートに書き込むことができる。
本発明の低レベル機能は、イーサネットコントローラ割込みISR(C_int03())をも含む。図25に示すように、C_int03()で使用するためのグローバルメッセージ構造が、イーサネットコントローラの状態用に定義される。パケットが送出されたとき、或いは、受信したパケットが終了したときはいつでも、イーサネットコントローラは、DSP122に割込みをかけ、割込みを示す。DSP122は、送信および受信の状態をイーサネットコントローラのレジスタから読み取り、それから、その状態を上述した状態構造に格納する。この情報はその他のタスクによって検査される。さらに、これらのメッセージは、それぞれのパケット伝送の後で読み取られる。そうでなければ、イーサネットコントローラはブロックされる。
【0061】
上述したように、本発明の本ネットワーク器具は、RTPプロトコルを使用して音声パケットをリアルタイムで送受信することが好適である。RTPパケットは、UDPパケット内にカプセル化される。IP_Send_taskとRTP_In_taskモジュールは、RTPパケットを作成し構文解析するよう操作する。図26は、RTPパケット処理用のRTPヘッダー構造を示す。
IP_Send_taskがRTPパケット送信の要求を入手したとき、それは、はじめに、イーサネットおよびUDPヘッダーを生成する。次に、イーサネット伝送バッファーにRTPヘッダーを加える。最後に、RTPデータはRTPデータエリアにコピーされ、データネットワークを越えて送出される。
【0062】
図27は、トーン生成機能(Tone_task())と共に使用するためのデータ構造を示す。
Tone_taskは、約0.1秒毎に実行することができるディレイドタスクである。これを用いて、トーンタイプ構造で定義したトーンの活動および停止の継続時間を計算する。Tone_taskは、ToneState(トーン状態)を、バースト(burst)中は「ACTIVE(活動)」に、無音中は「STOP(停止)」状態に設定する。活動と停止の持続時間の違いは、異なるトーンを生成する、これらは、ダイヤルトーンは連続トーン(停止なし)、話中音はバースト0.5秒と無音0.5秒、リングバックトーン(呼出し音)はバースト2秒と無音4秒、リング信号は2秒間に2回の0.8秒のバーストと無音4秒、である。
【0063】
好適には、ToneGenerate()モジュールは、ToneStateが活動であるときは、モードパラメータで定義した1フレーム400Hzのトーン、或いは、2400Hzのリング信号を生成する。さもなければ、1フレーム無音を提供する。
本発明のネットワーク器具は、UDPをSIP用の伝送プロトコルとして使用する。SIP_taskは、SIP信号を処理するループ型タスクである。本ネットワーク器具は、発呼或いは着呼のどちらかに使用することができるため、SIP_taskは、UAC(ユーザエージェントクライアント)およびUAS(ユーザエージェントサーバ)として動作する。
【0064】
図29は、SIPプロトコルに応じてSIP要求や応答を処理するために使用されるデータ構造を示すソース(プログラム)コードである。Tstateは、SIPの状態遷移用にSIP_taskおよびSIP_In_taskで使用される状態遷移構造である。構文解析されたSIPメッセージは、データ構造message_tの中にある。構造コールは、msg[MaxSipEntry(最大SIPエントリー)]で規定される合計の呼およびそれぞれの呼のエントリー用に定義される。
【0065】
図30は、クライアント(例えば、発呼者)として作動するSIP_taakの状態遷移図を示す。SIP電話機がコールを開始したとき、電話機はクライアントとして機能する。電話機が取り上げられコールのフラグがセットされたときのコールエントリーメッセージ[CurrentIndex(現在インデックス)]が割り振られるステップ、CreateSipCall()(SIPコール作成)が、現在の設定およびダイヤル入力に応じてSIPパケットを作成するステップ(ここで、SIPパッケージは当該コールのリファレンスとして使用され、us_stateはUACにセットされる)、SIPParse()(SIP構文解析)は、上記パケットからコール用のメッセージ構造(msg[CurrentIndex].m]を生成するステップ、および、SIP_taskは、SIP指定に応じて対応する要求を生成し、SIP状態は図30に示すようにSIP_taskにおいて更新されるステップ、などのステップでコールが作成される。
【0066】
図30は、クライアント(発呼者)操作用の例示の状態図、即ち、SIP_taskのUAC状態遷移図を示す。初期状態(ステップ3002)から、Calling(電話中)状態に入り、SIP_taskは、応答を受信するまでSIP INVITE(招待)要求を定期的(T1)に再送信する(ステップ3004)。公称では、T1は、はじめは500ms、それぞれのパケットを送信した後はその2倍である。(ステップ3006)T2は、公称32秒である。クライアントの応答を何も受信しない場合は、SIP_taskは、T2タイマーが満了したときに再送信を止めて、SIP状態はCancel(中止)に変わる(ステップ3008)。応答が暫定のものである場合は、クライアントは要求の再送信を7回まで継続する。最後の応答を受信したとき、状態はCompleted(完了)に変わり、ACK(肯定応答)が生成される(ステップ3010)。発呼者があきらめたとき、状態はBye(さよなら)状態に変わる(ステップ3012)。Bye要求は、送信の信頼のために、T1の間でT2が満了するまでに再送信する。この変数即ちSIP_statusは、図31に示すように受信した応答に応じて変化する。例えば、3xx応答を受信した場合は、SIP_taskは、リダイレクトしたアドレスに対するその他のコールを始動する。その他の最後に応答は、LCDに表示することができる。
【0067】
ネットワーク器具が電話を受けたとき、SIP_taskはSIP UAS(サーバ)として機能する。着信パケットは以下のように処理される。UDP_In_taskは着信UDPパケットを受け入れ、そのパケットを、その発信元IPアドレスおよびポート番号と共にSIP_In_taskへ送信する。SIP_In_taskは、SIP指定に応じてそのパケットを処理し、それに応じて状態を更新する。SIP_taskは、受話器の状態をモニタし、それぞれのコールのT1およびT2タイマーをセットしてそれを減少し、必要に応じてSIP状態を更新する。
【0068】
図32は、SIP UASの例示の状態遷移図を示す。SIP_taskが「initial(初期)」状態)に留まる間は(ステップ3205)は、着信SIPパケットを受ける。INVITE要求を受けた場合は、Ringing(鳴鈴)応答(180)を生成し、状態をinviteに変え、SIP_taskモジュールは「Proceeding(続行)」ステップ(ステップ3210)に進む。電話をかけられた者が受話器を取り上げた場合は、状態は「PicksUp(取り上げ)」に変わり、Success(成功)に進み(ステップ3215)、成功裏に電話セッションが確立したことが示される。
電話をかえられた者が受話器を取らなかった場合は、状態は「Failure(失敗)」に変わり、プロセスは「Failure」状態へ進む(ステップ3220)。成功または失敗の後は、クライアントは現在の状態を応答し、プロセスを「Confirmed(確認)」状態に進める(ステップ3225)。発呼者がセッションを停止したときは、状態がOnHookに変わり、プロセスは、現在のセッションが終了したことを示すByeに進む(ステップ3230)。
【0069】
本明細書で説明したように、本ネットワーク器具は独立型装置であり、パケットデータネットワークの電話コールを開始し受ける能力を有する。本明細書で述べた独立アーキテクチャーは、多くの付随する利点、例えば比較的低コストで実装できるなど提供する。また、同様に、この独立型器具100と共に説明したソフトウェアアーキテクチャーおよび機能定義は、PCベースの電話装置で提供することができる。このような場合は、マイクロホン、スピーカ、適切なネットワークインターフェイスカードを持つ従来のパーソナルコンピュータを、上述した方法と合致して操作するソフトウェアと共に提供する。もちろん、本実施例では、ユーザインターフェイスコンポーネントおよび機能が、PCの従来の要素、例えば、キーボード、モニタ、マウスなどで実行されるなどのような明らかな変更が為されている。電話の機能に対するGUIインターフェイスは、ソフトウェアによって提供され、所望の電話機能が実行できるようになる。
【0070】
本発明のネットワーク器具は、従来の電話機能の実行に加えて、ネットワークと環境との間でコスト上効率的なインターフェイスを提供することもできる。イーサネットインターフェイスに装着するセンサは、必要とされるポートが多数あり要な最小限ハードウェアのコストがかかるため実現不可能であるが、本発明のネットワーク器具は、多数のデジタルおよびアナログセンサの収集ポイントでなることができる。このことは、普通は、外部センサをネットワーク器具に従来のI/O回路135(DSP回路122に接続されている)を介して結合することによって達成される。このI/O回路は、簡易なバッファー、A/Dコンバータ、レジスタなどの形態を取ることができる。この機能は、セキュリティの理由で電話を設けるとき、例えば、エレベータ、ロビー、売り場、車庫などに設けるという環境で特に便利である。例としては、人の存在を検知するための受動赤外線(PIR)デジタルセンサ(これを使用して、誰かがオフィス、セキュリテイエリア、或いは、エネルギー管理システムに居る場合に電話を自動転送することができる)、オフィスが使用されていることを検知するアナログまたはデジタルライトセンサ、セキュリティ用のコンタクトクロージャー(ブレーカー)などがある。従って、本ネットワーク器具は、システム統合のポイントを提供する。
【0071】
さらに機能強化したI/O能力を提供するためには、I/O回路は、照明や電気器具などの電源に接続された(line-powered)装置を制御する標準として認知されているX10およびCEBusなどのローカル制御プロトコルと互換性を持たせることもできる。このようなものおよびインターフェイスを本電話機に追加すれば、ネットワークベースで照明装置などを制御できる。
【0072】
図33は、ネットワーク上で2者或いはそれ以上の者の間でコールを確立するために本ネットワーク器具を使用するシステムを示す。本システムは、一般的には、上述したように1つまたは複数の独立型ネットワーク器具100を含む。さらに、本システムは、本ネットワーク器具100とプロトコル互換である適切なネットワーク電話ソフトウェアが稼動するネットワークを行うことができるPCなどのような、PCベースの電話装置3320をも含むことができる。それぞれの電話端点は、ノードと呼ばれ、特定のSIPアドレスを持つ。この特定のアドレスを使用することによって、発呼者(クライアント)として機能する何らかのノードが、直接、ネットワーク上のその他のノード(サーバ)との電話セッションを開始することができる。
【0073】
本システムは、望ましくは、リダイレクトサーバ(3325)を含み、このサーバは、ネットワークの様々なノードによってアクセスされることができ、機能向上したサービス、例えば、ディレクトリサービス、電話転送、電話分岐、電話メッセージなどのようなサービスを提供する。例えば、ジョン・スミスへの電話を開始することを望む発呼者は、当該人物のSIPアドレス、sip:[email protected]などを入力できる。一方、発呼者が相手先のSIPアドレスを知らない場合は、発呼者は、リダイレクトサーバ3325にアクセスし、ジョン・スミスとのセッションを始めたい旨の要求を行うことができる。リダイレクトサーバは、様々な相手先の登録情報を持つデータベースを含み、発呼者にSIPアドレスを返す、或いは、電話要求を適切なSIPアドレスへ転送することができる。さらに、電話をかけられた者(着呼者)は、john.smith@home、john.simith@office、john.smith@labなどのような複数のSIPアドレスを持つことができる。リダイレクトサーバは、セッション開始信号をこれらのアドレスのそれぞれに提供し、発呼者と、開始要求に最初に応答するコンタクトされたノードとの間で接続を確立する。同様に、パーティ即ち登録者は、定期的にリダイレクトサーバに登録をして、どこで接触できるかを示す現在のSIPアドレスを示すことができる(電話転送機能)。
【0074】
ネットワーク器具3305は、1つまたは複数のセンサ3310とインターフェイスするように構成させることもできる。センサからの信号は、ネットワーク器具3305によって受信され、ネットワークで所望のネットワークノードに送信することができる。このセンサからの信号は、ネットワーク器具のタイマーによって定期的に検出することができ、メモリに格納されたSIPアドレスへ送信することができる。或いは、センサ信号は、その他のノードからの受信したコマンドに基づき、ネットワーク器具によって測定することもでき、或いは、受信した、センサの状態の変化を示す割込み信号に基づき(割込み主導型)測定することもできる。例えば、ネットワーク器具100をセキュリティシステム通信装置として使用し、様々なセキュリティセンサポイントの状況を中央監視局へ報告することもできる。このような場合では、本器具は、接続されたセンサ(ドアセンサ、火災センサ、受動赤外検出など)の状況を定期的にチェックし、中央局ノードへ現在の状況を報告する。非常事態を示すであろう状況変化の事象では、器具100は、中央局との電話セッションを生成し、同様にこの状況を報告することができる。もちろん、警報通信器として機能する同じ器具は、同様に、完全な電話機能を提供することができる。さらに、簡易なセキュリティ用途を説明したが、様々なその他のデータ収集や一般的にはSCADA(サイト制御およびデータ取得)として知られる制御用途を、本ネットワーク器具100を使用して実装できることを理解されたい。
【0075】
停電の間にライフラインサービスを保持するために、本発明のネットワーク器具は充電可能なバッテリーを装備することができ、これは壁の変圧器と一体にすることもできる。
多くの場所では現在ただ1つのイーサネットインターフェイスを装備するが、本発明のネットワーク器具は、外部RJ-45インターフェイスの付いた2つのポートのイーサネットハブを提供すべきである。このことは、電話装置およびネットワーク化したコンピュータの両方の同時稼動をもたらす。
音声データに加えて、本ネットワーク器具は、映像データも送受信することができる。例えば、映像入力インターフェイス、アナログ或いはUSB(ユニバーサルシリアルバス)を、機能的にDSP122に結合して、この機能を実装することができる。
【0076】
本ネットワーク器具100は、適切な無線イーサネットインターフェイスに結合することもでき、この結果、コードレスホンに相当するものにすることができる。
本ネットワーク器具100に下記のプロトコル:IPアドレスの自動割り当て用のDHCPおよびRARP、マルチキャストグループに申し込むためのIGMP、ボイスメールおよび独特なリンギング信号を取得するためのRTSP、マルチキャスト「ラジオ」イベントの通知を聞くためのSAP、および、名前解決(変換)のためのDNS(利用可能なプログラムメモリ空間に制約される)などを追加して拡張機能を提供することができる。
【0077】
基本的な電話操作の加えて、本ネットワーク器具は、高レベルの電話機能を提供することもできる。例えば、「邪魔しないでください」機能は、ユーザによるSIPアドレス入力によって指定されたものに応じて、所定の時間で指定の場所へ電話を自動的に転送することができる。機能を選択するたびに、時間が所定のインターバル(例えば15分)で増加する。
「電話記録」は、着呼の関するSIPアドレスおよび関連情報を、情報をメモリに格納することによって記録することができ、同時に、ユーザインターフェイスサブシステム160を介するユーザ対話によってログからリストをスクロールして発呼者のSIPアドレスを選択することによって折り返し電話をする能力を与えることもできる。
【0078】
本ネットワーク器具は、「自動アドレスブック」を含むこともできる。ユーザ入力或いはネットワークに接続したサーバを介して、本ネットワーク器具は、即時ダイヤルリスト、或いは、ユーザがスクロールさせることができる(SIP「複数選択」応答を使用する)ローカルメモリに格納される手段のリストを取得することができる。
「ボイスメールシステムへのインターフェイス」機能は、かかってきたが取らなかった全てのコールを表示することができ、これには電話の時間、発呼者、電話の要件および緊急性、および、発呼者がボイスメールを残したか否かを含む。この電話は、時間で或いは緊急性で並べることができる。電話表示は、好適には5つのソフトボタン:エントリー消去、リストにおいて前に或いは後ろへ移動、電話に戻る、およびメッセージ取り出し、で機能する。
【0079】
「独特のリンギング(いわゆる個人別着信メロディ)」機能は、器具100が特定の発呼者に対して、特有の音楽クリップ、独特な着信音、メロディ、或いは発呼者の名前などで知らせるようにプログラムされているものである。この場合、小さなデータベースに、発呼者、或いは発呼者のクラス(例えば、友人、客、緊急)を特定の選択されたリング応答に関連付けられる。
「電話転送」は、器具100に実装できるさらなる機能である。典型的には、コールは、プロキシーリダイレクトサーバーによって転送される。しかしながら、本ネットワーク器具100は、上述した「邪魔しないで下さい」ボタンで、
自分で簡易転送を実行することができる。リダイレクションは、レジスターコマンドでその他の電話機から電話をかけるという形を取り、その結果、自分へ電話を繋げることができる。また、ある時間帯のあるドメインからの電話の自動転送は、リダイレクトサーバを利用せずに実装される。
【0080】
「インターコム」モードは、「通話ボタン」を押すか、受話器を上げるまでマイクを無効にしたままで着呼を自動で「取る」機能である。これは、セキュリティ場内放送システムの一部として使用することができる。
「ベビーモニタリング」機能は、ネットワーク器具を遠隔音声監視装置として機能させることを可能にするものである。例えば、かかってきた電話を受けたうえで、ネットワーク器具100は、スピーカを無効にされ、発呼者が、電話をかけられた器具が位置する場所の環境を聞くことができるようにマイクを自動的に有効にされた状態で起動される。この機能は、所定のコードや発呼者の識別によって選択的に結ぶことができる。
【0081】
「インターネット電話」機能は、ネットワーク器具100が、電話を受発信してないときに、自動的に、ローカルRTPマルチキャストサーバーか、或いは、その他のストリーミングメディア源によって供給されたラジオ局を再生することを可能にする。本ネットワーク器具100は、SAPアナウンスメントを聞くことができ、局のリストをソフトボタンと共にディスプレイ上に表示することができる。何らかの着信コールによって現在のラジオ局は中断される。
本ネットワーク器具は、「発信リスト」を保持することもできる。以前のコールが成功した場合は、発信先のアドレスが、自動的に、ローカルダイヤルリストとして使用されるメモリの一部に入る。この相手先に再度ダイヤルするとき、この相手先を発信リストから上方か下方キーで選択することができる。これは、普通は、自動的に古いエントリーは廃棄され、より新しい現在のエントリーに置き換えられるFIFO型メモリ構造である。「リダイヤル」は、単一のキーで最後にかかってきた番号か、最後にかけた相手かにダイヤルすることを可能にする。
【0082】
さらに、無音を無視するなどの「スピーチ処理強化機能」は、ノイズ発生を低減し、エコーキャンセルも、電話の分野では良く知られた方法で本ネットワーク器具に含ませることができる。
従って、ユーザがローカルエリアネットワーク(LAN)内で、または、インターネットを越えて電話をすることを可能にする独立型「インターネット器具」であるネットワークベースの電話を開示した。その核となる部分は、デジタル信号プロセッサ(DSP、音声や映像信号の処理に最適化したマイクロコントローラ)である。これは、接続部を除いた通常の電話のスーパーセット(上位集合)、および、PTSN(公衆交換電話網)に代わりのイーサネットデータネットワークを提供する。10Mb/sで作動しているイーサネットは、アナログおよびデジタル電話機に使用される同じツイステッドペア配線を使用できるため、このパケットデータネットワーク電話は、客の構内に配線をする必要がない。最小システムは、イーサネットのクロスオーバーケーブル(いわいるクロスケーブル)によって接続された、2つのパケットデータネットワーク電話機から構成される。マルチライン基本PBXは、イーサネットハブやスイッチに接続された幾つかのパケットデータネットワーク電話機から成る構成で実装することもできる。この「PBX」は、単にイーサネット容量やポートを追加することによって多数の電話から成るように拡大することができる。パケットデータネットワーク電話機は、イーサネットをその他のLANサービスと分かち合うことができる。殆ど全ての場合に、音声トラヒックはネットワーク容量の僅かな部分となる(単一の音声コールは、10Mb/sのうちの16kb/sを消費する)。本パケットデータネットワーク電話機は、PBXが通常持つ機能を実装して音声通信を提供する。しかしながら、本ネットワーク器具は、LAN或いはインターネットに位置するサーバを使用し、追加の機能:ユーザ位置およびディレクトリサービス、電話転送、音声メール、付随サービスなどを提供することができる。
【0083】
本ネットワーク器具に基づくPBXは、インターネット電話ゲートウェイ(ITG)を通って従来の電話にもアクセスすることができる。このようなゲートウェイは、
アナログ線、ISDN基本、或いは、プライマリーレートインターフェイス、或いは、デジタルトランク(中継線、T1/E1など)を使用してPSTNに接続する。最近、ITGは、1から240回線の容量を持つ商品として紹介されている。
【0084】
本発明を特定の実施例との関連で説明してきたが、本発明の範囲および精神から離れることなく当業者は様々な修正、変形、適応をすることができることを理解されたい。本発明は請求の範囲のみから限定されることを意図する。
【図面の簡単な説明】
【図1】 従来の音声パケットネットワークに機能的に結合された回線交換音声ネットワークを特徴とする通信システムの図を示す。
【図2】 パケットデータネットワーク電話システムのブロック図である。
【図3】 図2のパケットデータネットワーク電話システム上で動作する電話装置用のプロトコルスタックを示す図である。
【図4】 本発明によるネットワーク電話器具の好適なハードウェアアーキテクチャーのブロック図である。
【図5】 図4のネットワーク電話器具をさらに説明するブロック図である。
【図6】 図5のネットワーク電話器具のDSP用のメモリマップの一例である。
【図7】 図5のネットワーク電話器具のDSP用のメモリインターフェイスブロック図である。
【図8】図5のネットワーク電話器具のDSP用のネットワークコントローラインターフェイスのブロック図である。
【図9】 図5のネットワーク電話器具のDSP用のコーデックインターフェイスのブロック図である。
【図10】 LCD制御インターフェイスのDSPメモリアドレスに対するマッピングを示す図5のDSP用のメモリマップの一例である。
【図11】 図4のネットワーク電話器具用のソフトウェアアーキテクチャーをブロック図である。
【図12】 図11のプロセスレベルソフトウェアのスケジューリング機構を説明するブロック図である。
【図13A】 Aは、図4および図11のソフトウェアやハードウェアのアーキテクチャーに基づく、パケットデータネットワーク電話を操作する好適な方法のソフトウェア操作用の例示のタスク定義を説明するテーブルである。
【図13B】 Bは、図4および図11のソフトウェアやハードウェアのアーキテクチャーに基づく、パケットデータネットワーク電話を操作する好適な方法のソフトウェア操作用の例示のタスク定義を説明するテーブルである。
【図13C】 Cは、図4および図11のソフトウェアやハードウェアのアーキテクチャーに基づく、パケットデータネットワーク電話を操作する好適な方法のソフトウェア操作用の例示のタスク定義を説明するテーブルである。
【図13D】 Dは、図4および図11のソフトウェアやハードウェアのアーキテクチャーに基づく、パケットデータネットワーク電話を操作する好適な方法のソフトウェア操作用の例示のタスク定義を説明するテーブルである。
【図13E】 Eは、図4および図11のソフトウェアやハードウェアのアーキテクチャーに基づく、パケットデータネットワーク電話を操作する好適な方法のソフトウェア操作用の例示のタスク定義を説明するテーブルである。
【図13F】 Fは、図4および図11のソフトウェアやハードウェアのアーキテクチャーに基づく、パケットデータネットワーク電話を操作する好適な方法のソフトウェア操作用の例示のタスク定義を説明するテーブルである。
【図14】 図4、11、13のソフトウェアやハードウェアのアーキテクチャーに基づく、ARP要求出力プロシージャのフローチャートである。
【図15】 図4、11、13のソフトウェアやハードウェアのアーキテクチャーに基づく、ARP要求入力プロシージャのフローチャートである。
【図16】 図4、11、13のソフトウェアやハードウェアのアーキテクチャーに基づく、IP処理ステップを示す図である。
【図17】 図11のソフトウェアアーキテクチャーに基づく、例示のイーサネット送信データ構造のリストである。
【図18】 図4、11、13のソフトウェアやハードウェアのアーキテクチャーに基づく、パケット送信プロシージャのデータフロー図である。
【図19】 図4、11、13のソフトウェアやハードウェアのアーキテクチャーに基づく、パケット受信プロシージャのデータフロー図である。
【図20】 AとBとは、本ネットワーク電話器具のソフトウェアによって使用されるA/DおよびD/A「ピンポン」バッファースキームを示す。
【図21】 本ネットワーク電話器具のCall_taskプロセスの状態遷移図である。
【図22】 図5のパケットデータネットワーク電話の好適な実施例用のキーパッドの値を定義する図である。
【図23】 図5のパケットデータネットワーク電話器具の好適な実施例用のキー状態の定義を説明するデータ構造である。
【図24】 図5のパケットデータネットワーク電話器具のI/Oパラレルポートのマッピングである。
【図25】 図5のパケットデータネットワーク電話器具のイーサネットコントローラの状態を定義するデータ構造である。
【図26】 図5のパケットデータネットワーク電話で使用されるRTPパケット処理用の例示のRTPヘッダー構造である。
【図27】 図5のパケットデータネットワーク電話のトーン生成機能で使用するデータ構造である。
【図28】 図5のパケットデータネットワーク電話器具のトーン生成機能で使用するタイミング図である。
【図29】 図5のパケットデータネットワーク電話器具に基づき、SIP_task要求や応答を処理するために使用されるデータ構造のリストである。
【図30】 図5に基づき、クライアント(電話を発呼した者)として動作するネットワーク電話器具を説明する状態遷移図である。
【図31】 図5のパケットデータネットワーク電話器具に基づく、SIP_task応答のリストである。
【図32】 図5のパケットデータネットワーク電話器具に基づく、SIP UASの状態遷移図を説明する状態図である。
【図33】本発明によるネットワーク電話器具を1つまたは複数含むパケットデータネットワーク電話システムの要素を説明するブロック図である。[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates generally to Internet and intranet telephones. More particularly, the present invention is for internet / intranet communications.NeThe present invention relates to a network telecommunications equipment and system.
[0002]
Background of the Invention
In recent years, the Internet has evolved from a convenient additional means of communication to an indispensable communication tool in the fields of business, education and technology. In this regard, the growth of the Internet portion relates to the Internet, which offers a number of advantages over conventional circuit switched networks controlled by separate signaling networks. For example, people can more easily select and use the encoding and encryption techniques that are most appropriate for the quality they need. For example, people can decide to use full toll quality for a low price when making an international call, while reporters want to send an article to a radio station by phone. You can use full FM quality without worrying about costs. Even in the absence of quality degradation, 5.3 kb / s (G.723.1) to 8 kb / s (G.729) is almost the same as toll quality, in contrast to conventional 64 kb / s landline telephone networks. Enough to support. This flexibility has the advantage that when the network is loaded, for example after a natural disaster, telephone customers can still communicate at about 3 kb / s, thus increasing the network capacity by 20 times. .
[0003]
It is natural to extend the telephone service to an existing data network such as the Internet. However, in the end system, intelligence, that is, an information processing capability is required, and this raises a cost as a major drawback. So far, a few miles long twisted pair wire at the cost of a basic analog phoneAboveIt was difficult to build a packet voice “telephone” that does not require an external power supply to operate.
In addition, many of the known Internet telephone products are H.264. Designed to operate according to H.323 signal and control protocol. H. The H.323 protocol is a complex protocol that is difficult to use and implement. Because of this complexity, different implementations of H.264. H.323 devices can be adversely affected by compatibility issues. Further, H.C. A device operating under the H.323 protocol is
Because they cannot communicate directly with each other, the phone must be processed and routed by the phone server.
Thus, there remains a need for network telephone equipment that is low cost, operates with simple signaling protocols, and provides a large set of advanced telephone features.
[0004]
Summary of the Invention
The above-mentioned inadequate parts and limitations of conventional telephone systems and known Internet telephone systems are substantially overcome by the present invention. As a first object of the present invention, the Internet and an intranet telecommunications networkAboveIt is to provide a packet-based voice communication system for use.
Another object of the present invention is to provide a data network such as an Ethernet network.AboveIt is to provide packet data telephony equipment for use.
Still another object of the present invention is to provide a communication protocol for use in a packet-based telecommunications system.
Yet another object of the present invention is to provide an Internet protocol architecture that supports telephone, other continuous media such as "Internet radio" and "Internet TV", or streaming media services.
Still another object of the present invention is to
To provide a low-cost stand-alone network telephone device that can directly call other network telephone stations or indirectly call other telephone stations via a redirect server.
[0005]
In accordance with a first embodiment of the present invention, a network packet data telephony device is provided that includes a network controller, such as an Ethernet controller subsystem coupled to a data network that transmits and receives data packets with the network. The digital signal processing subsystem is coupled to the network controller subsystem to detect incoming calls, initiate a telephone session and perform telephone functions.ImplementationOperate under a computer program. The signal conversion subsystem is coupled to the digital signal processing subsystem and converts the digital packet information into an analog signal and vice versa. The user interface subsystem is coupled to the signal conversion subsystem and the digital signal processing subsystem to provide user control and feedback for the instrument. This stand-alone network telephone apparatus will be referred to as a network telephone apparatus in this specification.
[0006]
The network phone appliance computer program uses the Session Initiation Protocol (SIP)ImplementationIt is preferable to do. In this case, a unique SIP address is associated with the device and control is performed in accordance with the SIP protocol.
Network telephone equipment
High level telephone functions such as monitoring function, telephone transfer, streaming audio mode, caller record, receiver recordImplementationIt is preferable to do.
The network telephone appliance preferably includes a sensor interface circuit that receives signals from a remote source such as a sensor. Signals received from remote sources are processed by network telephone equipment and transmitted to the appropriate network destination.
[0007]
In another aspect of the invention, a communication protocol for use in a packet telecommunications system is provided. This communication protocol interfaces the Ethernet protocol layer, the Ethernet protocol layer, that is, the Internet protocol (IP) layer stacked on the connecting Ethernet protocol layer, the Ethernet protocol layer and the IP layer, and the IP address as a medium. Stacked on top of the Ethernet protocol layer, which translates to an access control (MAC) addressThisUser data stacked on top of the ARP and IP layers to interface with the Address Resolution Protocol (ARP) layer, the ARP layer and the IP layer, and provide real-time transmission of control and application data within the telecommunications system Gram Protocol (UDP) layer, interfaces with UDP layer, provides real-time audio data transmission within this communication system, interfaces with Real-time Transmission Protocol (RTP) layer, UDP layer stacked on top of UDP layer, real-time audio One or more control protocol layers stacked on top of the UDP layer that signal and provide registration of data and interface with the RTP layer to format real-time audio data Appliqué With the Deployment protocol layer.
[0008]
In another aspect of the invention, a network telephone system architecture is provided. The system includes the network telephone device and / or at least two network telephone devices, such as a general purpose personal computer (PC) with software and an appropriate interface circuit to operate the PC as a network telephone. A redirect server coupled to the data network along with the network telephone device is also provided. In this system, network telephone devices can call each other to establish a real-time audio connection. Alternatively, the redirect server can be accessed by a network telephone device to initiate a telephone session of the person making the call, locate the destination, and identify the person. Use redirect servers for high-level phone functions such as call forwarding, multiparty calls, and voicemailImplementationYou can also
Further objects, features, and advantages of the present invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example embodiments of the invention.
[0009]
Detailed Description of the Invention
For a full understanding of the present invention and its advantages, the present invention will be described with reference to the accompanying drawings. Note that similar reference numbers indicate similar functions.
FIG. 1 is a block diagram illustrating a communication system having conventional telephone and packet telephone components. As shown in FIG. 1, the system includes a circuit switched
[0010]
FIG. 2 shows a preferred embodiment of a packet data network telephone system 50 according to the present invention. The packet data network system includes an
[0011]
The use of the packet
[0012]
FIG. 3 is a protocol stack diagram of a packet data network that provides Internet telephony and other continuous media (streaming media) services such as “Internet radio” and “Internet TV”. As known and understood by those skilled in the art, a “protocol” is generally a set of conventions for communicating between computers. Thus, the protocol defines format, timing, order, and error control. The term “stack” refers to the actual software that processes the protocols and allows the use of one or more sets of specific protocols. The diagram shown in FIG. 3 shows how the various protocols interact in accordance with the present invention.
[0013]
The
[0014]
As shown in FIG. 3, RTP is a suitable protocol for transmitting data in real time across the Internet. "RTP: Transport Protocol for Real-Time Applications" by H. Schulzrinne, S. Casner, R. Frederick, V. Jacobson (Request for Comments (Proposed Standard, RFC 1889, Internet Engineering Task Force (January 1996)) See, which is hereby incorporated by reference in its entirety, RTP provides support for applications with real-time attributes, timing reconstruction, loss detection, securityIAnd a thin protocol that includes content identification. In addition, RTP provides real-time conferencing support for multiple groups within the Internet, including source identification, support for gateways such as video and voice bridges, and multicast-to-unicast converters. RTP provides quality of service feedback from the receiver to the multicasting group, and also supports the synchronization of various media streams.
[0015]
In FIG. 3,
As described above, the
[0016]
SIP (call forwarding), call waiting, caller M (caller M), extension transfer (call transfer), "camp-on", "call park (call) Standard PBX or CLASS functions such as “park” and “call pick-up” are provided. “Camp-on” automatically waits for the destination station until a destination is created or an extended call is available for the busy single-line voice station, and the other party's line is available to handle other calls. It is possible to do so. “Call park” allows a user to place a call or call on hold and then take a call at another station in the system. “Call pickup” allows a station to answer a call at any other extension in a call pickup group specified by the user. Many of these functions do not require any signaling support, but are depending on the end system software.Implementationcan do. SIP is designed as a variant of HTTP / 1.1 and facilitates HTTP security reuse, authentication, content labeling and settlement, and negotiation functions.
[0017]
The SIP function uses a calendar-based call handler (processing program). The call processing software accesses the user personal appointment calendar and answers the phone (machine) accordingly. The user defines the caller's category and presets which call of the caller's call is forwarded to where (automatic) based on the calendar entry. If you do not transfer the call, for example, based on the caller's identity, from "I can't answer the phone now" to "John Smith is in a meeting with Jane Doe in Room 5621 until 3pm" Information can be sent to the caller within a range of. Call handlers can also be integrated with call processing languages, voice mail systems and automated call processing systems with a state-based scripting language that can be built with just a few lines of code. The call handler can handle and manage the conversion between ISDN calls and Internet telephone calls.
[0018]
FIG. 4 is a high level hardware block diagram illustrating a preferred embodiment of a packet
[0019]
The
[0020]
The
It can also function as an initial gatekeeper by discarding or rejecting data packets received from broken or unwanted Ethernet networks.
[0021]
FIG. 5 is a block diagram illustrating the network device in more detail. As shown in FIG. 5, the preferred embodiment of the
[0022]
As shown in FIG. 5, the
Sending and receiving individual FIFOs reduces system latency, and includes the following functions: automatic retransmission when not FIFO reload, automatic receive stripping and transmission padding function, automatic runt packet (short packet) rejection function, Collision frame automatic deletion function, simple interface FIFO / read / write access to DMA controller or I / O processor, arbitrary byte allocation and small / medium / large memory interface support function, 5-25MHz system Supports clock speed function.
[0023]
Referring again to FIG. 5, the digital
As shown in FIG. 5, the
[0024]
In addition, the TMS320C32DSP includes 4 external interrupts and 5 internal interrupt resources. External interrupts can be triggered directly by external pins (terminals). Internal interrupts can be triggered by programming individual peripherals such as serial ports, DMA controllers, and timers. In addition, all these interrupt sources can be programmed as DMA channel interrupts via CPU / DMA valid registers, ie IE. The TMS320C32DSP includes a flexible boot loader that allows the main control program for network appliances to be automatically loaded from one of three different external memory spaces or from a serial port, such as powering up the
[0025]
The
INT1: DMA0 external interrupt signal, used to receive packets from the
INT2: DMA1 external interrupt signal, used to send packets to the
INT3: AM79C940 packet status and error message interrupt,
Configured to include. FIG. 6 shows a sample DSP memory map used in the embodiment of the present network apparatus.
[0026]
Referring again to FIG. 5, the network appliance includes a user interface subsystem 160.SeeThe user interface subsystem 160 includes a key encoder (encoder) 166, a liquid crystal display (LCD) 164, and a handset 163 (which includes a
[0027]
In addition, the LCD can have buttons beside the display, for example, beside or down. The functions of these buttons can be operated as “soft keys” whose functions depend on the current state of the system. For example. When you do not answer the call, the displayTimes of DayCan be displayed. Furthermore, after not answering a call or being forwarded as voicemail, the display can display a list of received calls. Answer the phoneingIn the meantime, other incoming calls can be displayed and the subscriber can switch between calls or bridge the call to answer the call.
Alternatively, the user interface 160 of the
[0028]
FIG. 5 illustrates a signal processing system 130 that includes A / D conversion, PCM encoders and decoders that perform D / A conversion, and an
[0029]
FIG. 7 is a block diagram illustrating a memory interface 700 suitable for use with the network appliance of FIG. The memory interface 700 includes
[0030]
FIG. 8 is a block diagram illustrating an example of an interface between the
[0031]
FIG. 9 is a diagram illustrating the interface between
[0032]
As shown in FIG. 5,
The timing logic of the LCD is the same as the timing logic for the
[0033]
FIG. 11 is a block diagram illustrating the software architecture for the network appliance. As shown in FIG. 11, the processing architecture for the network appliance is generally organized as three levels: ISR (Interrupt Service Routine) level 1110, operating system or
The lowest level ISR level 1110 includes an interrupt handler and an I / O interface. ISR level 1110 serves as an interface between
The ISR level 1110 above is a
The microkernel has three scheduling mechanisms:
A real-time event flag manager 1222, a delayed
[0034]
A real-time event flag manager 1222 is used to trigger the execution of real-time events for flag setting. If the flag is set to an “on” condition, the task associated with the flag is executed immediately. For example, the interrupt service routine sets a specific flag when a specific event occurs. The flag event is placed in the flag queue along with the associated task address.
The delayed
[0035]
13A-F are tables or tables that list exemplary software tasks and functions that can be part of task level software (FIGS. 13A-C), process level software (FIG. 13D), and ISR level software (FIGS. 13E-F). It is a table. In the present invention, the terms “task” and “function” referring to the software architecture are considered synonymous. However, “tasks” are typically executed by the scheduling manager 1226, while “functions” are typically invoked by tasks and other functions. Application tasks such as call processing (Call_task) and IP processing (IP_send_task, Ercv_task, etc.) are scheduled by the
[0036]
13A to 13F show examples of definitions of functions and procedures (procedures) to be called in the event-driven operation executed by the packet data network telephone software of FIG. The function called from what happened from various events enables packet data network phone / system operation, packet data network phone / system initialization, ARP data processing, voice data encoding, message data Includes overall operations such as processing, IP data processing, audio data decoding, exchange of analog and digital data with corresponding buffers, and execution of watchdog functions.
[0037]
The initialization of the packet data network telephone appliance includes a hardware initialization step and a task scheduling step. After turning on the power, the
After the hardware initialization and preliminary task scheduling is complete, control of processing is returned to the process level (microkernel) 1120. The
[0038]
Referring back to FIG. 13A, the task level software of the network appliance includes address resolution protocol (ARP) processing. ARP is a known TCP / IP protocol used to translate an IP address into a physical address (data link control (DLC) address) such as an Ethernet address. A host computer that wants to obtain a physical address broadcasts an ARP request to the TCP / IP network. Thereafter, the host computer on the network having the IP address in the request returns its own physical hardware address.
[0039]
FIG. 14 is a flowchart for explaining the ARP request output procedure 1400ARP_Out (). As shown in FIG. 13B, ARP_Out () is a component of task level software that receives an IP address to be resolved and outputs a corresponding MAC address. When an ARP request starts (step 1402), the ARP_Out () function first checks the requested IP address from the local ARP cache table arptable (step 1404). If the corresponding entry or item is resolved in step 1406, ARP_Out () copies the parameter requested for the MAC address from the arptable and returns an ARPOK status flag (step 1408). Otherwise, the procedure assigns an entry to the arptable and schedules an ARP request (step 1410). As further shown in step 1410, the arptable MAC address or "handle" is returned to the main program (c_int00 ()). Following this handle, the software then checks the ae_state of the corresponding entry.
[0040]
FIG. 15 is a flowchart of an example ARP request entry procedure 1500ARP_In_task (), which is a component of the task level software listed in FIG. 13A. ARP_In_task receives an ARP packet, and when an incoming packet, that is, an incoming packet is an ARP request, it modifies arptable or queues an ARP reply. When receiving an ARP packet (step 1502),
The software checks for a match between the ARP hardware type or protocol type (step 1504). If one or both types match, then the software checks whether the destination host is the host (step 1510). If the destination host is not this host, then control is returned to the main program (step 1508).
[0041]
As further shown in FIG. 15, if the destination host is the current host, then Arp_In_task next checks the ARP table to determine whether there is an ARP entry corresponding to the incoming packet. (Step 1512). If an entry is found (step 1514), then the new MAC address is copied to the existing entry and the “lifetime (TTL)” of the entry is modified to a new value (step 1516). TTL is understood by those skilled in the art as an Internet Protocol (IP) field that specifies how many times a packet can be hopped as it travels before being discarded or sent back to the sender. However, if no such MAC entry is found by step 1513, then ARP_In_task then adds a new MAC entry to the ARP table (step 1518). If the MAC entry is in the PENDING state (step 1520), then it is changed to the RESOLVED state and the MAC address is copied to the entry for purpose (step 1522). If the incoming ARP packet is an ARP request from another host, the ARP reply packet is sent by queuing, i.e., queuing IP_Send_task (
[0042]
In addition to the ARP input and output process, ARP processing at the task level
Contains ARPTimer_task (), a delayed loop task used to maintain the ARP entry table arptable. Nominally, ARPTimer_task () is generated once per second. The main purpose of ARPTimer_task () is to reduce the lifetime (TTL) of an ARP entry and to resend the ARP request during pending if the previous ARP request is lost.
[0043]
Task level processing may include processing operations related to coding and encoding of audio packets. This Codec_task includes a SpeechEncode () function that encodes ADBuff audio data and puts it in EncodeBuff according to the algorithm indicated by the “type” parameter. The encoded data is then sent along with the “RTP” parameter setting via the queue IP_Send_task.
[0044]
Task level operations can include Internet Protocol (IP) processing. A general IP processing operation will be described with reference to the block diagram of FIG. As shown in FIG. 16, IP processing includes transmission / reception of Ethernet packets (step 1602), multiplexing and demultiplexing of IP packets (step 1604), Ethernet, Internet (IP), user datagram protocol (UDP), real time. Packetizing and depacketizing transmission protocol (RTP) and address resolution protocol (ARP) packets (step 1606).
[0045]
In
[0046]
The
When an Ethernet packet is ready for transmission, the DMA1 () function, ie the ISR level function, has a source address (Ethernet packet buffer, ESend), a destination address (Ethernet controller forwarding FIFO), and a counter (packet length). Called by setting. FIG. 17 shows an example of an Ethernet transmission data structure. The DMA1 () function starts the DMA1 channel. When the counter reaches zero, DMA1 stops and waits for the next call.
[0047]
FIG. 18 is a block diagram showing a data flow between the audio input buffer 1802, the UDP buffer 1804, and the ARP table 1806 for the Ethernet interface (Ethernet transmission FIFO) of the
As further shown in FIG. 18, data from audio input buffer 1802, UDP buffer 1804, and ARP table 1806 is sent to IP output queue 1810 and is configured to indicate protocol type, source pointer, and data length. . Instead of queuing outgoing data, IP_Send_task is queued by process level software (microkernel) 1120. Protocol types supported by IP_Send_task generally include UDP, RTP, ARP_REQUEST, and ARP_REPLY. IP_Send_task is used for packet transmission and Ethernet packetization. Preferably, IP_Send_task is scheduled by other functions or tasks such as SIP_task, ARP_Out (), SpeechEncode (), etc. Once IP_Send_task is running, it checks the protocol type of the data. The task then encapsulates the output data and converts it to the corresponding Ethernet packet in the Esend buffer. Finally, the packet is sent out through the assigned DMA channel (DMA1).
[0048]
FIG. 19 is a data flow diagram further illustrating packet reception and demultiplexing operations. Demultiplexing (demultiplexing) is achieved by scheduling different tasks for different protocols of Ercv_task. In
[0049]
Ercv_task is a flag activation task for demultiplexing Ethernet packets and demultiplexing IP packets (step 1908). This Ercv_task is first a PacketCheck () function called to check incoming packets. The PacketCheck () function returns the protocol type of the packet or returns a null value (NULL) if the packet is invalid. Second, based on the returned protocol type, the Ercv_task may use various tasks to process the received packet, eg, RTP_In_task for RTP packets (step 1910) and ARP_In_task for ARP packets (step 1914). Alternatively, the UDP processing task (step 1912) is started for the UDP packet.
[0050]
FIG. 13C will be described. SpeechDecode () is a speech decoding function related to the RTP process in Step 1910. First, the SpeechDecode () task checks whether there is data available in the decoding buffer: DecodeBuff. If data is available, eg RcvFlag is set, SpeechDecode () decodes the data based on the data type of the received data, eg PCM (G.711), G.723, G.729. The decoded data is sent to the D / A buffer: DABuff.
[0051]
The A / D and D / A interrupt routines can be triggered by an internal interrupt source, for example, Rint0 (). The A / D and D / A interrupt routines are preferably triggered by the 8 kHz sampling frequency provided by the DSP. Since this routine is often called, Rint0 () is preferably written in assembly (machine) language. The steps performed by Rint0 () include reading a D / A sample from a D / A buffer (DABuff), sending a sample to a serial D / A port, obtaining a sample from a serial A / D port, A Storing the / D sample in an A / D buffer (ADBuff) and incrementing the A / D and D / A buffer pointers (ADPnt, DAPnt) by one.
[0052]
FIGS. 20A and 20B are block diagrams illustrating the A / D and D / A “ping-pong” buffer schemes used by the software of the present invention. Further, when the current A / D pointer value (ADPnt) exceeds a predetermined buffer threshold value (ADTh), a flag is set in the flag task queue indicating that service is required.
[0053]
The A / D and D / A buffers can be divided into two parts, an
[0054]
FIG. 21 is a state transition diagram used in the Call_task subroutine used in the embodiment of the present network apparatus. Call_task is a looping task that processes a call procedure. As shown in FIG. 21, the “idle”
The Codec_task is configured as “ToneMode (Done Mode), DialTone (Dial Tone)”, and the dial tone is sent to the handset component of the user interface 160.
[0055]
Please refer to FIG. 21 again, if any numeric key (0 ... 9, *, #) or redial button is pressed during the “dialTone”
After entering the destination phone number and pressing the enter button to indicate that the dialing is over, Call_task checks whether the input is valid. If the number is valid, a call entry is created with the function Create_SipCall () and the Call_task enters the “SIP”
While waiting for the SIP_task process, some decisions can be made based on the “SIP”
[0056]
If the “SIP”
If the “SIP” state becomes SIP_Connected from the “RingBack”
[0057]
In the case of an incoming call, when the “SIP”
If the enter button is pressed while in the “Idle”
[0058]
During the execution of Call_task, if the hook state indicates that the handset is ONHOOK, or that a system error has been found, Call_task determines what the previous state is ("Ring" state) Regardless of (except 2114), the state changes to "Idle"
In the preferred embodiment of the network appliance shown in FIG. 5, the telephone keypad has 17 keys for user input and commands. The telephone keypad includes 10 numeric keys, 2 special keys, and 5 function keys, which are defined as shown in FIG.
Key_task is a loop delayed task that operates periodically such as every 0.1 second. When started, first, Key_task calls the Key () function. If the return value is not “−1”, it means that the key has been pressed. The KeyMap () function then uses the input binary keyword as ASCII (ASCII) keywords. Key_task then sets the corresponding function in the function key structure. If the system is ready to accept key input (KeyRegEnable is displayed), the input keyword is stored in KeyBuff.
[0059]
In addition, Key_task preferably supports four different input modes: a numeric input mode, an IP address input mode, an alphabet input mode, and a list address input mode.
These four modes can be switched by picking up the handset and pressing the enter button before dialing any number or alphabet when a dial tone is heard. After the input is finished and the enter button is pressed, the input number is transferred to the current task (call_task or Setting_task) by the message pipe. When the redial key is pressed, the previous input is copied from the backup buffer (KeyBackup) to KeyBuff. This data is then transferred to Call_task.
The operating system of the network appliance preferably supports a delayed task schedule scheme. This delayed task is similar to the sleep () function in UNIX. However, the delayed task can also be made to execute a continuous task by a periodic timer when the repetition flag of this task is set. It functions as an ordinary clock and calculates and displays the current time (including hours, minutes and seconds). When a call connects, this task can display the call duration. When the phone is on hook (when not in use), the year, month and date can also be displayed on the LCD.
[0060]
Referring back to FIG. 11, the network telephone software of the present invention includes several low level functions that are included as part of the software ISR level. Some of these low level functions are I / O related functions used in conjunction with the 8-bit I / O parallel port of the telephone as defined in FIG. This low-level I / O-related function includes a “hook” status monitor (Hookst ()), key input availability check and read (Key ()), handset and hands-free control (HandSet ()), Ethernet controller reset (ENET_reset ()), Volume control (AmpControl ()), and system software reset. Audio interface chip 136 (preferably in the form of LM4830) can be used to switch between handset and hands-free. For example, the HandSet () function can write “0” to the I / O port if the “hands free” mode is required, or “1” if the “handset” mode is required. Can be written to the appropriate port.
The low level functionality of the present invention also includes an Ethernet controller interrupt ISR (C_int03 ()). As shown in FIG. 25, a global message structure for use with C_int03 () is defined for the state of the Ethernet controller. Whenever a packet is sent out or when the received packet is finished, the Ethernet controller interrupts the
[0061]
As described above, the network device of the present invention preferably transmits and receives voice packets in real time using the RTP protocol. RTP packets are encapsulated within UDP packets. The IP_Send_task and RTP_In_task modules operate to create and parse RTP packets. FIG. 26 shows an RTP header structure for RTP packet processing.
When IP_Send_task gets a request to send an RTP packet, it first generates an Ethernet and UDP header. Next, an RTP header is added to the Ethernet transmission buffer. Finally, RTP data is copied to the RTP data area and sent over the data network.
[0062]
FIG. 27 shows a data structure for use with the tone generation function (Tone_task ()).
Tone_task is a delayed task that can be executed about every 0.1 second. This is used to calculate the tone activity and stop duration defined in the tone type structure. Tone_task sets ToneState (tone state) to “ACTIVE (activity)” during a burst, and “STOP (stop)” during silence. The difference between the duration of the activity and the stop generates different tones, these are the dial tone continuous tone (no stop), the busy tone is burst 0.5 seconds and silence 0.5 seconds, the ringback tone (ringing) (Sound) is a burst of 2 seconds and 4 seconds of silence, and the ring signal is a burst of 0.8 seconds twice and 2 seconds of silence for 2 seconds.
[0063]
Preferably, the ToneGenerate () module generates a one frame 400 Hz tone defined by the mode parameter or a 2400 Hz ring signal when ToneState is active. Otherwise, one frame of silence is provided.
The network device of the present invention uses UDP as a transmission protocol for SIP. SIP_task is a loop type task that processes a SIP signal. Since this network device can be used for either outgoing calls or incoming calls, the SIP_task operates as a UAC (user agent client) and a UAS (user agent server).
[0064]
FIG. 29 shows source (program) code indicating a data structure used for processing a SIP request or response according to the SIP protocol. Tstate is a state transition structure used in SIP_task and SIP_In_task for SIP state transition. The parsed SIP message is in the data structure message_t. Structure calls are defined for the total call specified in msg [MaxSipEntry] and the entry for each call.
[0065]
FIG. 30 shows a state transition diagram of SIP_taak operating as a client (eg, caller). When a SIP phone initiates a call, the phone functions as a client. A step where call entry message [CurrentIndex] is assigned when the phone is picked up and the call flag is set, CreateSipCall () (SIP call creation), current settings and dial-inInSteps to create a SIP packet accordingly (where the SIP package is used as a reference for the call and us_state is set to UAC), SIPParse () (SIP parsing) is the message structure for the call from the above packet (Steps of generating msg [CurrentIndex] .m] and SIP_task generates a corresponding request according to the SIP designation, and the SIP state is updated in SIP_task as shown in FIG. A call is made.
[0066]
FIG. 30 shows an exemplary state diagram for client (caller) operation, ie, UAC state transition diagram for SIP_task. From the initial state (step 3002), the calling state is entered and the SIP_task retransmits the SIP INVITE request periodically (T1) until a response is received (step 3004). Nominally, T1 is initially 500 ms, twice after each packet is transmitted. (Step 3006) T2 is nominally 32 seconds. If no client response is received, the SIP_task stops resending when the T2 timer expires and the SIP state changes to Cancel (step 3008). If the response is provisional, the client continues to resend the request up to seven times. When the last response is received, the state changes to Completed and an ACK (acknowledgment) is generated (step 3010). When the caller gives up, the state changes to the Bye state (step 3012). Bye requests are retransmitted before T2 expires during T1, due to transmission trust. This variable, SIP_status, changes according to the received response as shown in FIG. For example, if a 3xx response is received, SIP_task initiates another call to the redirected address. The other last response can be displayed on the LCD.
[0067]
When the network appliance receives a call, the SIP_task functions as a SIP UAS (server). Incoming packets are processed as follows. UDP_In_task accepts an incoming UDP packet and sends the packet to SIP_In_task along with its source IP address and port number. SIP_In_task processes the packet according to the SIP designation and updates the state accordingly. The SIP_task monitors the state of the handset, sets and decreases the T1 and T2 timers for each call, and updates the SIP state as needed.
[0068]
FIG. 32 shows an exemplary state transition diagram of SIP UAS. While the SIP_task remains in the “initial” state (step 3205), the incoming SIP packet is received. If an INVITE request is received, a Ringing response (180) is generated, the state is changed to invite, and the SIP_task module proceeds to a “Proceeding” step (step 3210). If the callee picks up the handset, the state changes to “PicksUp” and proceeds to Success (step 3215), indicating that the phone session has been successfully established.
If the person who changed the phone did not pick up the handset, the state changes to "Failure" and the process proceeds to the "Failure" state (step 3220). After success or failure, the client responds with the current state and advances the process to the “Confirmed” state (step 3225). When the caller stops the session, the state changes to OnHook and the process proceeds to Bye indicating that the current session has ended (step 3230).
[0069]
As described herein, the network appliance is a stand-alone device and has the ability to initiate and receive packet data network telephone calls. The independent architecture described herein has many attendant advantages, such as relatively low cost.ImplementationProvide as possible. Similarly, the software architecture and functional definitions described with this stand-
[0070]
In addition to performing traditional telephone functions, the network appliance of the present invention can also provide a cost effective interface between the network and the environment. Sensors attached to Ethernet interfaces are not feasible due to the large number of required ports and the required minimum hardware cost, but the network appliance of the present invention is a collection point for many digital and analog sensors. Can be This is usually accomplished by coupling an external sensor to the network appliance via conventional I / O circuit 135 (connected to DSP circuit 122). This I / O circuit consists of a simple buffer, A / D converter, and resistor.TCan take any form. This function is particularly convenient in an environment where a telephone is provided for security reasons, for example, in an elevator, lobby, sales floor, garage, or the like. For example, a passive infrared (PIR) digital sensor to detect the presence of a person (which can be used to automatically forward a call when someone is in the office, security area, or energy management system ), Analog or digital light sensors that detect when the office is in use, and contact closures (breakers) for security. The network appliance thus provides a point of system integration.
[0071]
To provide more enhanced I / O capabilities, I / O circuits are recognized as standards for controlling line-powered devices such as lighting and appliances, X10 and CEBus It can be made compatible with a local control protocol such as If such a thing and an interface are added to this telephone, a lighting apparatus etc. can be controlled on a network basis.
[0072]
FIG. 33 illustrates a system that uses the network appliance to establish a call between two or more parties over a network. The system generally includes one or more stand-
[0073]
The system preferably includes a redirect server (33This server can be accessed by various nodes of the network and provides enhanced services such as directory services, telephone forwarding, telephone branching, telephone messaging, etc. For example, John・A caller who wants to initiate a call to Smith can enter his or her SIP address, sip: [email protected], and so on. On the other hand, if the caller does not know the SIP address of the other party, the caller325, John・A request can be made to start a session with Smith. The redirect server includes a database with registration information for various destinations, and can return a SIP address to the caller or forward the phone request to the appropriate SIP address. In addition, the person who is called (the called party) can have multiple SIP addresses such as john.smith@home, john.simith@office, john.smith@lab, etc. The redirect server provides a session start signal to each of these addresses, and the caller and start requestInthe firstRespond tocontactWasEstablish a connection with the node. Similarly, a party or registrant can periodically register with the redirect server to indicate the current SIP address that indicates where they can be contacted (telephone forwarding function).
[0074]
Network appliance 3305 can also be configured to interface with one or more sensors 3310. The signal from the sensor can be received by the network appliance 3305 and transmitted over the network to the desired network node. The signal from this sensor can be detected periodically by a timer of the network appliance and sent to a SIP address stored in memory. Alternatively, sensor signals can be measured by network appliances based on commands received from other nodes, or they can be measured (interrupt-driven) based on received interrupt signals indicating sensor state changes. You can also. For example, the
[0075]
In order to maintain lifeline service during a power failure, the network appliance of the present invention can be equipped with a rechargeable battery, which can also be integrated with a wall transformer.
In many places nowHoweverAlthough equipped with one Ethernet interface, the network appliance of the present invention should provide a two port Ethernet hub with an external RJ-45 interface. This results in simultaneous operation of both the telephone device and the networked computer.
In addition to audio data, the network appliance can also transmit and receive video data. For example, a video input interface, analog or USB (Universal Serial Bus) can be functionally coupled to the
[0076]
The
The
[0077]
In addition to basic telephone operations, the network appliance can also provide high-level telephone functions. For example, the “don't disturb” feature can automatically forward a call to a specified location at a predetermined time, depending on what is specified by the user entering a SIP address. Each time a function is selected, the time increases by a predetermined interval (for example, 15 minutes).
“Telephone Record” can record the SIP address and related information for an incoming call by storing the information in memory, and at the same time, scrolling through the list from the log by user interaction through the user interface subsystem 160 You can also give the ability to call back by selecting the caller's SIP address.
[0078]
The network appliance may also include an “automatic address book”. Through user input or a network-connected server, the network appliance can be either an immediate dial list or a list of means stored in local memory that can be scrolled by the user (using a SIP “multi-select” response). Can be obtained.
The “Interface to Voicemail System” feature can display all calls that have been received but not received, including call time, caller, phone requirements and urgency, and call origination. Whether or not the person has left a voicemail. The calls can be arranged in time or urgency. The phone display preferably works with five soft buttons: delete entry, move forward or backward in list, return to phone, and retrieve message.
[0079]
The “unique ringing” (so called personal ring melody) function allows the
"Telephone transfer"Implemented inA further feature that can be done. Typically, the call is forwarded by a proxy redirect server. However, the
You can perform a simple transfer yourself. Redirection takes the form of making a call from another phone with a register command, so that you can connect the phone to yourself. In addition, automatic transfer of a phone call from a domain in a certain time zone does not use a redirect server.ImplementationIs done.
[0080]
In "Intercom" mode, press the "call button" or lift the handsetRumaThis function automatically picks up an incoming call with the microphone disabled. This can be used as part of a security venue broadcast system.
The “baby monitoring” function allows the network device to function as a remote voice monitoring device. For example, upon receiving an incoming call, the
[0081]
The “Internet Phone” function allows the
The network appliance can also maintain a “outgoing list”. If the previous call is successful, the destination address automatically enters a portion of memory used as a local dial list. When dialing again, this destination can be selected from the outgoing list with the up or down key. This is usually a FIFO-type memory structure that automatically discards old entries and replaces them with newer current entries. “Redial” makes it possible to dial the last number dialed with a single key or the last called party.
[0082]
Furthermore, the “speech processing enhancement function”, such as ignoring silence, reduces noise generation, and echo cancellation can also be included in the network appliance in a manner well known in the telephone field.
Accordingly, a network-based telephone has been disclosed that is a stand-alone “Internet appliance” that allows users to make calls within a local area network (LAN) or across the Internet. At its core is a digital signal processor (DSP, microcontroller optimized for audio and video signal processing). This provides a superset (superset) of regular phones excluding connections and an alternative Ethernet data network to PTSN (Public Switched Telephone Network). Because Ethernet operating at 10 Mb / s can use the same twisted pair wiring used for analog and digital telephones, this packet data network telephone does not need to be wired to the customer premises. The minimum system consists of two packet data network telephones connected by an Ethernet crossover cable (so-called cross cable). A multiline basic PBX consists of several packet data network telephones connected to an Ethernet hub or switch.ImplementationYou can also This "PBX" can be expanded to consist of a large number of phones simply by adding Ethernet capacity and ports. Packet data network telephones can share Ethernet with other LAN services. In almost all cases, voice traffic is a small part of the network capacity (a single voice call consumes 16 kb / s out of 10 Mb / s). This packet data network phoneImplement the normal functions of PBXProvides voice communicationDo. However, the network appliance can use a server located on the LAN or the Internet to provide additional functions: user location and directory services, telephone forwarding, voice mail, ancillary services, and the like.
[0083]
A PBX based on this network appliance can also access a conventional telephone through an Internet telephone gateway (ITG). Such a gateway
Connect to PSTN using analog line, ISDN basic, primary rate interface, or digital trunk (relay line, T1 / E1, etc.). Recently, ITG has been introduced as a product with a capacity of 1 to 240 lines.
[0084]
Although the invention has been described in connection with specific embodiments, it should be understood that various modifications, changes and adaptations may be made by those skilled in the art without departing from the scope and spirit of the invention. The present invention is intended to be limited only by the scope of the claims.
[Brief description of the drawings]
FIG. 1 shows a diagram of a communication system featuring a circuit switched voice network operatively coupled to a conventional voice packet network.
FIG. 2 is a block diagram of a packet data network telephone system.
FIG. 3 is a diagram showing a protocol stack for a telephone device operating on the packet data network telephone system of FIG. 2;
FIG. 4 is a block diagram of a preferred hardware architecture for a network telephone appliance according to the present invention.
FIG. 5 is a block diagram further illustrating the network telephone device of FIG.
6 is an example of a memory map for DSP of the network telephone device of FIG. 5;
7 is a memory interface block diagram for the DSP of the network telephone apparatus of FIG.
FIG. 8 is a block diagram of a network controller interface for the DSP of the network telephone device of FIG.
9 is a block diagram of a codec interface for a DSP of the network telephone device of FIG.
10 is an example of a memory map for the DSP of FIG. 5 showing the mapping of the LCD control interface to the DSP memory address.
FIG. 11 is a block diagram of a software architecture for the network telephone appliance of FIG.
12 is a block diagram illustrating a scheduling mechanism of the process level software of FIG.
13A is a table illustrating exemplary task definitions for software operations in a preferred method of operating a packet data network phone based on the software and hardware architectures of FIGS. 4 and 11. FIG.
13B is a table illustrating exemplary task definitions for software operations in a preferred method of operating a packet data network phone based on the software and hardware architecture of FIGS. 4 and 11. FIG.
FIG. 13C is a table describing exemplary task definitions for software operations in a preferred method of operating packet data network phones based on the software and hardware architectures of FIGS. 4 and 11.
13D is a table illustrating exemplary task definitions for software operations in a preferred method of operating a packet data network phone based on the software and hardware architecture of FIGS. 4 and 11. FIG.
FIG. 13E is a table describing exemplary task definitions for software operations in a preferred method of operating a packet data network phone based on the software and hardware architecture of FIGS. 4 and 11;
FIG. 13F is a table illustrating exemplary task definitions for software operation of a preferred method of operating a packet data network phone based on the software and hardware architecture of FIGS. 4 and 11.
14 is an ARP request output procedure based on the software or hardware architecture of FIGS.OfIt is a flowchart.
15 is an ARP request input procedure based on the software or hardware architecture of FIGS.OfIt is a flowchart.
FIG. 16 is a diagram showing IP processing steps based on the software and hardware architecture of FIGS.
17 is a list of exemplary Ethernet transmission data structures based on the software architecture of FIG.
FIG. 18 is a packet transmission procedure based on the software and hardware architectures shown in FIGS.OfIt is a data flow figure.
FIG. 19 is a packet reception procedure based on the software or hardware architecture of FIGS.OfIt is a data flow figure.
20A and B show the A / D and D / A “ping-pong” buffer scheme used by the network phone appliance software. FIG.
FIG. 21 is a state transition diagram of the Call_task process of the present network telephone device.
22 is a diagram defining keypad values for the preferred embodiment of the packet data network telephone of FIG. 5. FIG.
FIG. 23 is a data structure illustrating key state definitions for the preferred embodiment of the packet data network telephone apparatus of FIG. 5;
24 is a mapping of the I / O parallel port of the packet data network telephone device of FIG.
25 is a data structure that defines the state of the Ethernet controller of the packet data network telephone device of FIG.
26 is an exemplary RTP header structure for RTP packet processing used in the packet data network phone of FIG. 5. FIG.
27 is a data structure used in the tone generation function of the packet data network telephone of FIG.
FIG. 28 is a timing diagram for use with the tone generation function of the packet data network telephone appliance of FIG. 5;
FIG. 29 is a list of data structures used to process SIP_task requests and responses based on the packet data network phone appliance of FIG.
FIG. 30 is a state transition diagram for explaining a network telephone device that operates as a client (a person who makes a call) based on FIG. 5;
FIG. 31 is a list of SIP_task responses based on the packet data network phone appliance of FIG.
32 is a state diagram illustrating a state transition diagram of SIP UAS based on the packet data network telephone device of FIG. 5. FIG.
FIG. 33 is a block diagram illustrating elements of a packet data network telephone system including one or more network telephone appliances according to the present invention.
Claims (29)
パケットデータネットワークと、
それぞれが固有のネットワークアドレスを持ち、前記パケットデータネットワークに機能的に結合され、前記ネットワークアドレスによって相互に直接的にアクセス可能である、音声データを含むパケット化したデータを受信し、生成する少なくとも2つのデータネットワーク電話ノードと、
前記パケットデータネットワークに機能的に結合され、前記パケットデータネットワーク上のそれぞれの前記データネットワーク電話ノードによってアクセス可能であり、少なくとも1つのノードの前記固有のネットワークアドレスと少なくとも1つのパラメータとの関連を示す、少なくとも1つのデータベースを持つ、リダイレクトサーバと、
を含み、前記少なくとも1つのパラメータは、登録された電話ノードの前記固有のネットワークアドレスに関連付けられた、複数のリダイレクションネットワークアドレスであり、
前記データベースは少なくとも第2のパラメータを更に含み、前記リダイレクトサーバは、選択されたリダイレクションネットワークアドレスをこのリダイレクトサーバにアクセスするノードへ提供し、前記第2のパラメータに従って前記登録された電話ノードとの電話を開始し、
前記第2のパラメータは曜日、時刻、登録者のSIPアドレスからなる一群から選択される、
ことを特徴とするパケットデータネットワークシステム。A packet data network system,
A packet data network;
Receiving and generating packetized data, including voice data, each having a unique network address, functionally coupled to the packet data network and directly accessible to each other by the network address; Two data network phone nodes;
Operatively coupled to the packet data network and accessible by each of the data network telephone nodes on the packet data network, indicating an association between the unique network address of at least one node and at least one parameter A redirect server with at least one database;
The at least one parameter is a plurality of redirection network addresses associated with the unique network address of a registered telephone node;
The database further includes at least a second parameter, wherein the redirect server provides a selected redirection network address to a node that accesses the redirect server, and the phone with the registered phone node according to the second parameter the start,
The second parameter is selected from the group consisting of the day of the week, the time, and the SIP address of the registrant.
A packet data network system.
前記固有のネットワークアドレスがSIPアドレスである、
ことを特徴とするパケットデータネットワークシステム。The packet data network system according to claim 1,
The unique network address is a SIP address;
A packet data network system.
前記第1のパラメータは、前記電話ノードの名前および物理アドレスを含む、
ことを特徴とするパケットデータネットワークシステム。The packet data network system according to claim 1,
The first parameter includes the name and physical address of the telephone node;
A packet data network system.
前記電話ノードの少なくとも1つはネットワーク器具である、ことを特徴とするパケットデータネットワークシステム。The packet data network system according to claim 1,
A packet data network system, wherein at least one of the telephone nodes is a network appliance.
ポイントツーポイント通信を確立するための前記パケットデータネットワークに結合されたネットワークコントローラサブシステムと、
着呼を検出し電話セッションを開始するコンピュータプログラムを含む、前記ネットワークコントローラサブシステムに結合されたデジタル信号処理サブシステムと、
前記デジタル信号処理サブシステムに結合された信号変換サブシステムと、
前記信号変換サブシステムおよび前記デジタル信号処理サブシステムに結合されたユーザインターフェイスサブシステムと、
を含み、
前記デジタル信号処理サブシステムは、デジタル信号プロセッサ(DSP)と、該デジタル信号プロセッサに結合された1つまたは複数の記憶装置とを含み、
前記コンピュータプログラムは、電話セッションを検出して開始し、電話セッション制御を実行するセッション開始プロトコルを実装し、
固有のSIPアドレスが、前記ネットワーク器具に関連付けられ、
前記SIPアドレスは、前記記憶装置のうちの少なくとも1つに格納されており、
前記パケット化されたデータはオーディオデータを含み、
前記ユーザインターフェイスサブシステムは、入力装置と、マイクロホンと、スピーカとを含むハンドセットとディスプレイ装置とを備え、
前記コンピュータプログラムは、発呼者からの前記ネットワーク器具に対する電話を検出すると同時に電話セッションを自動的に開始し、当該電話セッション中は、前記マイクロホンを有効化し、前記スピーカを無効化するモニタ機能と、
少なくとも1つの転送SIPアドレスが、前記記憶装置の少なくとも1つに格納され、前記転送SIPアドレスの少なくとも1つは、前記ユーザインターフェイスサブシステムを介してユーザによって選択可能であり、発呼者から前記ネットワーク器具への電話を検出すると同時に、この電話を前記選択された転送SIPアドレスへリダイレクトする、電話転送機能と、
を実装することを特徴とするネットワーク器具。A unified end-user network appliance that provides packetized data over a packet data network,
A network controller subsystem coupled to the packet data network for establishing point-to-point communication;
A digital signal processing subsystem coupled to the network controller subsystem, including a computer program for detecting an incoming call and initiating a telephone session;
A signal conversion subsystem coupled to the digital signal processing subsystem;
A user interface subsystem coupled to the signal conversion subsystem and the digital signal processing subsystem;
Including
The digital signal processing subsystem includes a digital signal processor (DSP) and one or more storage devices coupled to the digital signal processor;
The computer program implements a session initiation protocol that detects and initiates a telephone session and performs telephone session control;
A unique SIP address is associated with the network appliance;
The SIP address is stored in at least one of the storage devices;
The packetized data includes audio data;
The user interface subsystem includes an input device, a microphone, a handset including a speaker, and a display device;
The computer program will automatically start at the same time telephone session detects the phone for the network device from the caller, in the telephone session, a monitor function that enable the microphone, to disable the speaker,
At least one forwarding SIP address is stored in at least one of the storage devices, and at least one of the forwarding SIP addresses is selectable by a user via the user interface subsystem and from the caller to the network A call forwarding function that simultaneously detects a phone call to an appliance and redirects the phone to the selected forwarding SIP address;
A network appliance characterized by being implemented .
少なくとも1人の承認された発呼者の識別基準が、前記記憶装置の少なくとも1つに格納され、
前記デジタル信号プロセッサが、識別基準を前記発呼者から受信し、前記受信された識別基準が、前記少なくとも1つの所定の承認された発呼者の前記格納されている識別基準のうちの少なくとも1つに合致する場合にのみ、前記モニタ機能を起動する、
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
At least one authorized caller identification criterion is stored in at least one of the storage devices;
The digital signal processor receives an identification criterion from the caller, and the received identification criterion is at least one of the stored identification criteria of the at least one predetermined authorized caller. Activates the monitor function only if it matches
A network appliance characterized by that.
前記識別基準が、名前、SIPアドレス、およびパスワードを含む群から選ばれる、
ことを特徴とするネットワーク器具。The network appliance according to claim 6 , wherein
The identification criteria is selected from the group comprising name, SIP address, and password;
A network appliance characterized by that.
前記識別基準が、SIPアドレスを含むことを特徴とするネットワーク器具。The network appliance according to claim 6 , wherein
A network appliance, wherein the identification criteria includes a SIP address.
前記識別基準が、名前およびパスワードを含む群から選ばれた一つ以上を更に含むことを特徴とするネットワーク器具。The network appliance according to claim 8 , wherein
The network appliance according to claim 1, wherein the identification criterion further includes one or more selected from a group including a name and a password.
前記電話転送機能は、前記ユーザからの入力に応答して所定の時間の間起動される、
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
The call forwarding function is activated for a predetermined time in response to an input from the user.
A network appliance characterized by that.
人が不在であることを検出する、前記ネットワーク器具に結合されたセンサをも含み、
前記センサからの信号に応答して前記電話転送機能が起動される、
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
Including a sensor coupled to the network appliance for detecting the absence of a person;
The call forwarding function is activated in response to a signal from the sensor;
A network appliance characterized by that.
前記ユーザインターフェイスサブシステムは出力装置を含み、
前記コンピュータプログラムは、前記ネットワークからストリーミングデータを受信して前記出力装置に供給される知覚可能な信号に変換する、ストリーミングメディアモードを実装する、
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
The user interface subsystem includes an output device;
The computer program implements a streaming media mode that receives streaming data from the network and converts it into a perceptible signal that is supplied to the output device.
A network appliance characterized by that.
前記出力装置はスピーカを含み、
電話セッションが進行中でないときは、前記ネットワークからストリーミングデータを受信して前記スピーカに供給されるオーディオ信号に変換する、
ことを特徴とするネットワーク器具。The network appliance according to claim 12 , wherein
The output device includes a speaker;
When a telephone session is not in progress, it receives streaming data from the network and converts it into an audio signal supplied to the speaker;
A network appliance characterized by that.
前記コンピュータプログラムは、新たな電話セッションが開始した場合は、ストリーミングメディアモードから元に戻す、
ことを特徴とするネットワーク器具。The network appliance according to claim 13 ,
The computer program restores from streaming media mode when a new phone session is started,
A network appliance characterized by that.
前記出力装置はスピーカを含み、
ストリーミングデータを前記ネットワークから選択的に受信し、前記スピーカに供給されるオーディオ信号に変換する、
を特徴とするネットワーク器具。The network appliance according to claim 12 , wherein
The output device includes a speaker;
Selectively receiving streaming data from the network and converting it into an audio signal supplied to the speaker;
Network equipment characterized by.
前記ストリーミングデータは前記ネットワークから受信され、電話セッション中に別の装置へ選択的に転送され、このストリーミングデータはそこで前記装置によって知覚可能な信号に変換可能である、
ことを特徴とするネットワーク器具。The network appliance according to claim 12 , wherein
The streaming data is received from the network and selectively transferred to another device during a telephone session, where the streaming data can be converted to a signal perceptible by the device.
A network appliance characterized by that.
前記出力装置はビデオディスプレイを含み、
ストリーミングデータが、前記ネットワークから選択的に受信されて前記ビデオディスプレイに供給されるビデオ信号に変換されるストリーミングビデオデータを含む、
ことを特徴とするネットワーク器具。The network appliance according to claim 12 , wherein
The output device includes a video display;
Streaming data includes streaming video data that is selectively received from the network and converted into a video signal that is provided to the video display.
A network appliance characterized by that.
前記デジタル信号プロセッサが、発呼者の前記SIPアドレスを検出し、前記記憶装置の少なくとも1つに、複数の発呼者SIPアドレスを格納し、
前記複数の発呼者SIPアドレスは、前記ディスプレイ装置上に表示可能なものであり、前記ユーザインターフェイスサブシステムからの入力に応じて選択可能なものである、
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
The digital signal processor detects the SIP address of the caller and stores a plurality of caller SIP addresses in at least one of the storage devices;
The plurality of caller SIP addresses can be displayed on the display device and can be selected in response to an input from the user interface subsystem.
A network appliance characterized by that.
前記デジタル信号プロセッサが、複数の着呼したSIPアドレスを前記記憶装置に格納し、
前記複数の着呼したSIPアドレスは、成功裏に開始した電話セッションのアドレスに対応するものであり、前記ディスプレイ装置上に表示可能なものであり、前記ユーザインターフェイスサブシステムからの入力に応答して選択可能なものである、
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
The digital signal processor stores a plurality of incoming SIP addresses in the storage device;
The plurality of incoming SIP addresses correspond to addresses of telephone sessions that have been successfully initiated and are displayable on the display device, in response to input from the user interface subsystem. Is selectable,
A network appliance characterized by that.
前記ネットワークコントローラサブシステムは、イーサネットコントローラおよびサービスフィルターを含む、
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
The network controller subsystem includes an Ethernet controller and a service filter;
A network appliance characterized by that.
前記デジタル信号処理サブシステムは、
着信オーディオデータをデジタル着信オーディオデータに変換するアナログデジタル(A/D)コンバータと、
前記A/Dコンバータに結合された、前記デジタル着信オーディオデータをエンコードするエンコーダと、
前記デジタル信号処理サブシステムから供給された、デジタル送出オーディオ信号をデコードするデコーダと、
前記デコーダに結合された、デジタル送出オーディオ信号を送出オーディオ信号に変換するデジタルアナログ(D/A)コンバータと、
前記ハンドセット、対応する前記スピーカ、およびマイクロホンに結合された、前記着信オーディオ信号および前記送出オーディオ信号を調整するオーディオアンプと、を更に含む、
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
The digital signal processing subsystem includes:
An analog-digital (A / D) converter that converts incoming audio data into digital incoming audio data;
An encoder coupled to the A / D converter for encoding the digital incoming audio data;
A decoder for decoding a digitally transmitted audio signal supplied from the digital signal processing subsystem;
A digital analog (D / A) converter coupled to the decoder for converting a digital outgoing audio signal into an outgoing audio signal;
An audio amplifier coupled to the handset, the corresponding speaker, and a microphone for adjusting the incoming audio signal and the outgoing audio signal;
A network appliance characterized by that.
前記コンピュータプログラムは、
イーサネットプロトコル層と、
前記イーサネットプロトコル層とインターフェイスする、前記イーサネットプロトコル層の上に積み重ねられたインターネットプロトコル(IP)層と、
前記イーサネットプロトコル層および前記IP層とインターフェイスし、IPアドレスをメディアアクセスコントロール(MAC)アドレスに変換する、前記イーサネットプロトコル層の上に積み重ねられたアドレス解決プロトコル(ARP)層と、
前記ARP層および前記IP層とインターフェイスし、前記電話通信システム内の制御およびアプリケーションデータの伝送をリアルタイムで提供する、前記ARP層と前記IP層との上に積み重ねられたユーザデータグラムプロトコル(UDP)層と、
前記UDP層とインターフェイスし、前記電話通信システム内においてリアルタイムオーディオデータの伝送を提供する、前記UDP層の上に積み重ねられたリアルタイムトランスポート(RTP)層と、
前記UDP層とインターフェイスし、前記リアルタイムオーディオデータの登録の信号を送りそれを提供する、前記UDP層の上に積み重ねられた1つまたは複数の制御プロトコル層と、
前記RTP層とインターフェイスし、前記リアルタイムオーディオデータをフォーマットする、前記RTP層の上に積み重ねられた1つまたは複数のアプリケーションプロトコル層と、をも含む
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
The computer program is
An Ethernet protocol layer,
An Internet Protocol (IP) layer stacked on top of the Ethernet protocol layer that interfaces with the Ethernet protocol layer;
An address resolution protocol (ARP) layer stacked on top of the Ethernet protocol layer that interfaces with the Ethernet protocol layer and the IP layer and translates IP addresses into media access control (MAC) addresses;
User Datagram Protocol (UDP) stacked on top of the ARP layer and the IP layer that interfaces with the ARP layer and the IP layer and provides real-time transmission of control and application data within the telephony communication system Layers,
A real-time transport (RTP) layer stacked on top of the UDP layer that interfaces with the UDP layer and provides transmission of real-time audio data within the telephony system;
One or more control protocol layers stacked on top of the UDP layer that interface with the UDP layer and signal and provide registration of the real-time audio data;
One or more application protocol layers stacked on top of the RTP layer for interfacing with the RTP layer and formatting the real-time audio data.
前記アプリケーションプロトコルはRTSPプロトコル層を含む、
ことを特徴とするネットワーク器具。The network appliance according to claim 22 , wherein
The application protocol includes an RTSP protocol layer;
A network appliance characterized by that.
少なくとも1つのセンサインターフェイス回路をも含み、
前記センサインターフェイス回路は、前記デジタル信号処理サブシステムに機能的に結合され、前記ネットワーク器具をリモートセンサに機能的に結合するためのポートを持つ、
ことを特徴とするネットワーク器具。The network appliance according to claim 5 , wherein
Including at least one sensor interface circuit;
The sensor interface circuit is functionally coupled to the digital signal processing subsystem and has a port for functionally coupling the network appliance to a remote sensor;
A network appliance characterized by that.
前記デジタル信号処理サブシステムは、所定の時間間隔で前記センサインターフェイス回路からデータを取得し、この取得したデータをネットワークパケットデータのようにフォーマットし、このデータを前記ネットワーク上の所定の宛先へ伝送する、
ことを特徴とするネットワーク器具。The network appliance according to claim 24 , wherein
The digital signal processing subsystem acquires data from the sensor interface circuit at predetermined time intervals, formats the acquired data like network packet data, and transmits the data to a predetermined destination on the network. ,
A network appliance characterized by that.
前記デジタル信号処理サブシステムは、前記センサインターフェイス回路からほぼ連続でデータを取得し、この取得したデータをネットワークパケットデータのようにフォーマットし、前記取得したデータが少なくとも1つの所定の基準を満たす場合に、このデータを伝送する、
ことを特徴とするネットワーク器具。The network appliance according to claim 24 , wherein
The digital signal processing subsystem acquires data from the sensor interface circuit almost continuously, formats the acquired data like network packet data, and the acquired data meets at least one predetermined criterion. Transmit this data,
A network appliance characterized by that.
前記センサインターフェイス回路は、割り込みサービス要求入力を含み、
前記デジタル信号処理サブシステムは、前記割り込みサービス要求入力の信号に応答して前記センサインターフェイス回路からデータを取得し、この取得したデータをネットワークパケットデータとしてフォーマットし、このデータを前記ネットワーク上の所定の宛先へ伝送する、
ことを特徴とするネットワーク器具。The network appliance according to claim 24 , wherein
The sensor interface circuit includes an interrupt service request input;
The digital signal processing subsystem acquires data from the sensor interface circuit in response to a signal of the interrupt service request input, formats the acquired data as network packet data, and converts the data into predetermined data on the network. Transmit to the destination,
A network appliance characterized by that.
前記コンピュータプログラムは、電話転送機能を含み、
前記電話転送機能は、前記センサインターフェイス回路に供給された信号に応答して選択的に有効化される、
ことを特徴とするネットワーク器具。The network appliance according to claim 24 , wherein
The computer program includes a telephone transfer function,
The call forwarding function is selectively enabled in response to a signal provided to the sensor interface circuit;
A network appliance characterized by that.
前記センサインターフェイス回路に結合され、人の存在を検出し、前記電話転送機能を選択的に有効化するための信号を提供するセンサをも含む、
ことを特徴とするネットワーク器具。The network appliance according to claim 28 , wherein
A sensor coupled to the sensor interface circuit for detecting the presence of a person and providing a signal for selectively enabling the call forwarding function;
A network appliance characterized by that.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13883299P | 1999-06-08 | 1999-06-08 | |
US60/138,832 | 1999-06-08 | ||
PCT/US2000/040175 WO2000076158A1 (en) | 1999-06-08 | 2000-06-08 | Network telephony appliance and system for inter/intranet telephony |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004500744A JP2004500744A (en) | 2004-01-08 |
JP4999244B2 true JP4999244B2 (en) | 2012-08-15 |
Family
ID=22483871
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001502311A Expired - Fee Related JP4999244B2 (en) | 1999-06-08 | 2000-06-08 | Network telephone apparatus and system for internet telephones |
Country Status (10)
Country | Link |
---|---|
US (4) | US7610384B1 (en) |
EP (1) | EP1186144B1 (en) |
JP (1) | JP4999244B2 (en) |
KR (1) | KR100670006B1 (en) |
AU (1) | AU6120900A (en) |
CA (1) | CA2376214A1 (en) |
ES (1) | ES2441203T3 (en) |
IL (2) | IL146885A0 (en) |
MX (1) | MXPA01012622A (en) |
WO (1) | WO2000076158A1 (en) |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6201805B1 (en) | 1997-10-21 | 2001-03-13 | Dialogic Corporation | Apparatus and method for computer telephone integration in packet switched telephone networks |
US7068648B2 (en) | 1997-10-21 | 2006-06-27 | Intel Corporation | Apparatus and method for computer controlled call processing and information provision |
US6876633B2 (en) | 1997-10-21 | 2005-04-05 | Intel Corporation | Apparatus and method for computer telephone integration in packet switched telephone networks |
US6901068B1 (en) | 1997-10-21 | 2005-05-31 | Intel Corporation | Apparatus and method for computer controlled call processing applications in packet switched telephone networks |
US7072308B2 (en) | 1997-10-21 | 2006-07-04 | Intel Corporation | Apparatus and method for computer controlled call processing applications in packet switched telephone networks |
US6856618B2 (en) | 1997-10-21 | 2005-02-15 | Intel Corporation | Apparatus and method for computer telephone integration in packet switched telephone networks |
US7126942B2 (en) | 1997-10-21 | 2006-10-24 | Intel Corporation | Apparatus and method for integrated computer controlled call processing in packet switched telephone networks |
US7120141B2 (en) | 1998-09-24 | 2006-10-10 | Genesys Telecommunications Laboratories, Inc. | Integrating SIP control messaging into existing communication center routing infrastructure |
US20070121601A1 (en) * | 1998-09-24 | 2007-05-31 | Genesys Telecommunications Laboratories, Inc | Integrating SIP Control Messaging into Existing Communication Center Routing Infrastructure |
US6958994B2 (en) | 1998-09-24 | 2005-10-25 | Genesys Telecommunications Laboratories, Inc. | Call transfer using session initiation protocol (SIP) |
KR100670006B1 (en) | 1999-06-08 | 2007-01-18 | 더 트러스티스 오브 콜롬비아 유니버시티 인 더 시티 오브 뉴욕 | Network telephony appliance and system for inter/intranet telephony |
US9607041B2 (en) * | 1999-07-15 | 2017-03-28 | Gula Consulting Limited Liability Company | System and method for efficiently accessing internet resources |
US20060121938A1 (en) * | 1999-08-12 | 2006-06-08 | Hawkins Jeffrey C | Integrated handheld computing and telephony device |
US7286521B1 (en) * | 2000-07-21 | 2007-10-23 | Tellme Networks, Inc. | Localized voice over internet protocol communication |
CN100571310C (en) | 2000-08-11 | 2009-12-16 | 纽约市哥伦比亚大学托管会 | The system of unified communication in the Internet/intranet conversation |
WO2002060124A2 (en) * | 2001-01-26 | 2002-08-01 | Netbotz, Inc. | Method and system for a set of network appliances which can be connected to provide enhanced collaboration, scalability, and reliability |
EP1368975A1 (en) | 2001-03-09 | 2003-12-10 | Ayman L.L.C. | Universal point of contact identifier system and method |
US7002987B2 (en) * | 2001-06-07 | 2006-02-21 | Motorola, Inc. | Common services and applications agent |
US7746848B2 (en) | 2002-12-05 | 2010-06-29 | Resource Consortium Limited | Virtual PBX based on feature server modules |
WO2004057846A1 (en) | 2002-12-20 | 2004-07-08 | Nimcat Networks Inc. | Voice mail system for packet switched networks |
DE10301262A1 (en) * | 2003-01-15 | 2004-08-05 | Siemens Ag | Method and arrangement for establishing a communication link using a transmission network |
WO2004066604A1 (en) * | 2003-01-22 | 2004-08-05 | Nimcat Networks Inc. | Call transfer system, method and network devices |
US7394345B1 (en) * | 2003-12-08 | 2008-07-01 | At&T Corp. | Arrangement for indicating presence of individual |
HUP0400899A2 (en) * | 2004-04-30 | 2006-02-28 | Zoltan Kuthi | Voice controlled call divert |
US7881446B1 (en) | 2004-09-03 | 2011-02-01 | Confinement Telephony Technology, Llc | Telephony system and method with enhanced validation |
US7680256B2 (en) | 2005-08-18 | 2010-03-16 | One Number Corporation | Contact number encapsulation system |
US20070115926A1 (en) * | 2005-10-27 | 2007-05-24 | 3Com Corporation | System and method for receiving a user message at a packet-network telephone |
KR100772172B1 (en) * | 2005-11-21 | 2007-10-31 | 한국전자통신연구원 | Switching method and apparatus of real-time multicast packet stream, and ethernet switching system using the same |
WO2007129942A1 (en) * | 2006-05-05 | 2007-11-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and arrangement for a virtual meeting |
US20080259918A1 (en) | 2007-04-19 | 2008-10-23 | Craig Elliott Walker | Method and apparatus for managing telephone calls |
US20090138313A1 (en) | 2007-05-15 | 2009-05-28 | American Power Conversion Corporation | Methods and systems for managing facility power and cooling |
US8290133B2 (en) | 2007-05-31 | 2012-10-16 | Centurylink Intellectual Property Llc | System and method for remote home monitoring and intercom communication |
US8290138B2 (en) * | 2007-07-20 | 2012-10-16 | Ipc Systems, Inc. | Systems, methods, apparatus and computer program products for sharing resources between turret systems and PBXS using SIP |
US8306509B2 (en) * | 2007-08-31 | 2012-11-06 | At&T Mobility Ii Llc | Enhanced messaging with language translation feature |
US8321557B2 (en) * | 2007-10-10 | 2012-11-27 | Sony Mobile Communications Ab | Web feeds over SIP |
US8411669B2 (en) * | 2008-04-18 | 2013-04-02 | Cisco Technology, Inc. | Distributed transcoding on IP phones with idle DSP channels |
US8402267B1 (en) | 2009-03-18 | 2013-03-19 | University Of Louisville Research Foundation, Inc. | Security enhanced network device and method for secure operation of same |
US8868907B2 (en) | 2009-03-18 | 2014-10-21 | University Of Louisville Research Foundation, Inc. | Device, method, and system for processing communications for secure operation of industrial control system field devices |
EP2438749A1 (en) * | 2009-06-01 | 2012-04-11 | Telefonaktiebolaget LM Ericsson (publ) | Graphical user- interface for terminals with visual call progress indicator |
DE102009042354C5 (en) * | 2009-09-23 | 2017-07-13 | Phoenix Contact Gmbh & Co. Kg | Method and device for safety-related communication in the communication network of an automation system |
US8804513B2 (en) | 2010-02-25 | 2014-08-12 | The Trustees Of Columbia University In The City Of New York | Methods and systems for controlling SIP overload |
US9246952B2 (en) * | 2010-06-30 | 2016-01-26 | International Business Machines Corporation | Controlling telephone call processing using global signaling codes |
US9824334B2 (en) | 2011-07-11 | 2017-11-21 | ClearCare, Inc. | System for updating a calendar or task status in home care scheduling via telephony |
US9015641B2 (en) | 2011-01-06 | 2015-04-21 | Blackberry Limited | Electronic device and method of providing visual notification of a received communication |
US9423878B2 (en) | 2011-01-06 | 2016-08-23 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
US9471145B2 (en) | 2011-01-06 | 2016-10-18 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
US9477311B2 (en) | 2011-01-06 | 2016-10-25 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
US9465440B2 (en) | 2011-01-06 | 2016-10-11 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
US9766718B2 (en) | 2011-02-28 | 2017-09-19 | Blackberry Limited | Electronic device and method of displaying information in response to input |
US9213421B2 (en) | 2011-02-28 | 2015-12-15 | Blackberry Limited | Electronic device and method of displaying information in response to detecting a gesture |
AU2011384046A1 (en) | 2011-12-22 | 2014-07-17 | Schneider Electric It Corporation | Analysis of effect of transient events on temperature in a data center |
US9619038B2 (en) | 2012-01-23 | 2017-04-11 | Blackberry Limited | Electronic device and method of displaying a cover image and an application image from a low power condition |
US9058168B2 (en) | 2012-01-23 | 2015-06-16 | Blackberry Limited | Electronic device and method of controlling a display |
US9106673B2 (en) | 2012-12-28 | 2015-08-11 | Vonage Network, Llc | Systems and methods for connecting telephony communications |
US9690476B2 (en) | 2013-03-14 | 2017-06-27 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
US9507495B2 (en) | 2013-04-03 | 2016-11-29 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
DE102013219543A1 (en) * | 2013-09-27 | 2015-04-02 | Siemens Aktiengesellschaft | Communication device and method for communication between a communication device and a central device |
US10078635B2 (en) * | 2013-11-22 | 2018-09-18 | Genband Us Llc | Systems and methods for customizing SIP message processing |
US9912783B2 (en) * | 2016-01-29 | 2018-03-06 | Veritas Technologies Llc | Securing internal services in a distributed environment |
US11029998B2 (en) * | 2016-06-03 | 2021-06-08 | International Business Machines Corporation | Grouping of tasks for distribution among processing entities |
EP3615491B1 (en) | 2017-04-25 | 2022-04-13 | GCP Applied Technologies Inc. | Agents for enhancing cement strength |
US11601827B2 (en) * | 2019-12-05 | 2023-03-07 | Cubic Corporation | Radio gateway tranmission failure notification |
US11425247B1 (en) * | 2021-02-11 | 2022-08-23 | Verizon Patent And Licensing Inc. | Methods and systems for reducing resource usage for call originations |
Family Cites Families (153)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6165555A (en) | 1984-09-05 | 1986-04-04 | Mitsubishi Electric Corp | Home control system |
JPH0754933B2 (en) * | 1986-08-14 | 1995-06-07 | 日本電気株式会社 | Circuit switching method and device in packet network |
JPS63286044A (en) | 1987-05-19 | 1988-11-22 | Tamura Electric Works Ltd | Functional telephone set |
JPH0368063A (en) | 1989-08-07 | 1991-03-25 | Seiko Epson Corp | Documentation device |
JPH0521914A (en) | 1991-07-17 | 1993-01-29 | Tatsuta Electric Wire & Cable Co Ltd | Flexible printed circuit board |
JPH05207023A (en) * | 1992-01-24 | 1993-08-13 | Hitachi Ltd | Mass data transmitting method |
US6018771A (en) | 1992-11-25 | 2000-01-25 | Digital Equipment Corporation | Dynamic assignment of multicast network addresses |
JPH07283815A (en) * | 1994-04-08 | 1995-10-27 | Hitachi Ltd | Voice communication system |
US5675507A (en) | 1995-04-28 | 1997-10-07 | Bobo, Ii; Charles R. | Message storage and delivery system |
CN1122086A (en) * | 1994-07-21 | 1996-05-08 | 株式会社日立制作所 | System for distributing picture information |
US5742905A (en) * | 1994-09-19 | 1998-04-21 | Bell Communications Research, Inc. | Personal communications internetworking |
US5647002A (en) | 1995-09-01 | 1997-07-08 | Lucent Technologies Inc. | Synchronization of mailboxes of different types |
US6009469A (en) * | 1995-09-25 | 1999-12-28 | Netspeak Corporation | Graphic user interface for internet telephony application |
US6108704A (en) * | 1995-09-25 | 2000-08-22 | Netspeak Corporation | Point-to-point internet protocol |
JPH09168063A (en) | 1995-12-18 | 1997-06-24 | Sony Corp | Terminal equipment for speech system |
EP0885530B1 (en) * | 1996-02-21 | 2001-09-12 | International Business Machines Corporation | Distributed architecture for services in a telephony system |
GB2310970A (en) | 1996-03-05 | 1997-09-10 | Ibm | Voice mail on the Internet |
US6125113A (en) * | 1996-04-18 | 2000-09-26 | Bell Atlantic Network Services, Inc. | Internet telephone service |
US5892535A (en) * | 1996-05-08 | 1999-04-06 | Digital Video Systems, Inc. | Flexible, configurable, hierarchical system for distributing programming |
US5778187A (en) * | 1996-05-09 | 1998-07-07 | Netcast Communications Corp. | Multicasting method and apparatus |
US6085101A (en) * | 1996-05-17 | 2000-07-04 | Telcordia Technologies, Inc. | Communications network having a multicast capability |
US5748736A (en) * | 1996-06-14 | 1998-05-05 | Mittra; Suvo | System and method for secure group communications via multicast or broadcast |
AU4353097A (en) | 1996-09-12 | 1998-04-02 | Dialnet, Inc. | Dedicated system and process for distributed communication on a packet-switched network |
US6101180A (en) * | 1996-11-12 | 2000-08-08 | Starguide Digital Networks, Inc. | High bandwidth broadcast system having localized multicast access to broadcast content |
CA2279845A1 (en) * | 1996-11-18 | 1998-05-28 | Mci Worldcom, Inc. | A communication system architecture |
US5867495A (en) * | 1996-11-18 | 1999-02-02 | Mci Communications Corporations | System, method and article of manufacture for communications utilizing calling, plans in a hybrid network |
JP3085216B2 (en) * | 1996-11-28 | 2000-09-04 | 日本電気株式会社 | Telephone communication terminal and communication method using the same |
FR2756998A1 (en) | 1996-12-06 | 1998-06-12 | Philips Electronics Nv | TELECOMMUNICATION DEVICE COMPRISING A BASE AND AT LEAST ONE MOBILE DEVICE PROVIDED WITH A PARTICULAR INTERCOM MODE, AND METHOD OF INITIALIZING THE MODE |
US6011579A (en) | 1996-12-10 | 2000-01-04 | Motorola, Inc. | Apparatus, method and system for wireline audio and video conferencing and telephony, with network interactivity |
US5903559A (en) * | 1996-12-20 | 1999-05-11 | Nec Usa, Inc. | Method for internet protocol switching over fast ATM cell transport |
US5909183A (en) * | 1996-12-26 | 1999-06-01 | Motorola, Inc. | Interactive appliance remote controller, system and method |
GB2322767B (en) * | 1997-03-01 | 2001-05-16 | Motorola Ltd | A method of transmitting call information |
US6144671A (en) * | 1997-03-04 | 2000-11-07 | Nortel Networks Corporation | Call redirection methods in a packet based communications network |
US6075796A (en) | 1997-03-17 | 2000-06-13 | At&T | Methods and apparatus for providing improved quality of packet transmission in applications such as internet telephony |
US5893091A (en) * | 1997-04-11 | 1999-04-06 | Immediata Corporation | Multicasting with key words |
CA2286338A1 (en) | 1997-04-22 | 1998-10-29 | Telcordia Technologies, Inc. | Apparatus and method for internet telephony routing |
US5990883A (en) * | 1997-04-28 | 1999-11-23 | Microsoft Corporation | Unified presentation of programming from different physical sources |
US6108706A (en) * | 1997-06-09 | 2000-08-22 | Microsoft Corporation | Transmission announcement system and method for announcing upcoming data transmissions over a broadcast network |
JPH113072A (en) | 1997-06-12 | 1999-01-06 | Sony Corp | Information network system and communication terminal |
JP3263339B2 (en) | 1997-07-18 | 2002-03-04 | 日本電信電話株式会社 | Internet / telephone network integrated utilization method and system |
US6243376B1 (en) * | 1997-08-13 | 2001-06-05 | Mediaring.Com Ltd. | Method and apparatus for making a phone call connection over the internet connection |
JP3844026B2 (en) | 1997-08-15 | 2006-11-08 | ソニー株式会社 | Information communication method, information communication system, communication terminal, and server apparatus |
EP0939522B1 (en) * | 1997-08-19 | 2006-10-04 | Yugen Kaisha LS Net | Method of communicating with subscriber devices through a global communication network |
US6199068B1 (en) * | 1997-09-11 | 2001-03-06 | Abb Power T&D Company Inc. | Mapping interface for a distributed server to translate between dissimilar file formats |
US6088659A (en) * | 1997-09-11 | 2000-07-11 | Abb Power T&D Company Inc. | Automated meter reading system |
US6608832B2 (en) * | 1997-09-25 | 2003-08-19 | Telefonaktiebolaget Lm Ericsson | Common access between a mobile communications network and an external network with selectable packet-switched and circuit-switched and circuit-switched services |
JPH11112677A (en) * | 1997-09-30 | 1999-04-23 | Canon Inc | Speech communication terminal |
US6337858B1 (en) | 1997-10-10 | 2002-01-08 | Nortel Networks Limited | Method and apparatus for originating voice calls from a data network |
US6671276B1 (en) | 1997-11-18 | 2003-12-30 | Nec Corporation | Switch based network architecture for IP multicast and integrated services |
US6034621A (en) * | 1997-11-18 | 2000-03-07 | Lucent Technologies, Inc. | Wireless remote synchronization of data between PC and PDA |
US6690663B1 (en) | 1998-01-15 | 2004-02-10 | Mci Communications Corporation | Internet telephony system with automated call answering |
US6529501B1 (en) | 1998-05-29 | 2003-03-04 | 3Com Corporation | Method and apparatus for internet telephony |
US6763020B1 (en) | 1998-06-24 | 2004-07-13 | Innomedia, Inc. | Call establishment method for dial-up internet telephony appliances |
US6360265B1 (en) * | 1998-07-08 | 2002-03-19 | Lucent Technologies Inc. | Arrangement of delivering internet protocol datagrams for multimedia services to the same server |
US6707797B1 (en) * | 1998-10-23 | 2004-03-16 | Verizon Corporate Services Group Inc. | Multi-line telephony via network gateways |
US6275574B1 (en) * | 1998-12-22 | 2001-08-14 | Cisco Technology, Inc. | Dial plan mapper |
US7216348B1 (en) * | 1999-01-05 | 2007-05-08 | Net2Phone, Inc. | Method and apparatus for dynamically balancing call flow workloads in a telecommunications system |
US6741575B1 (en) * | 1999-02-26 | 2004-05-25 | Hughes Electronics Corporation | Apparatus and method for efficient delivery of multicast data over personal access communications system (PACS) |
US6493324B1 (en) * | 1999-03-29 | 2002-12-10 | Worldcom, Inc. | Multimedia interface for IP telephony |
US6842505B1 (en) * | 1999-04-05 | 2005-01-11 | Estech Systems, Inc. | Communications system enhanced with human presence sensing capabilities |
US6564261B1 (en) * | 1999-05-10 | 2003-05-13 | Telefonaktiebolaget Lm Ericsson (Publ) | Distributed system to intelligently establish sessions between anonymous users over various networks |
US7006616B1 (en) * | 1999-05-21 | 2006-02-28 | Terayon Communication Systems, Inc. | Teleconferencing bridge with EdgePoint mixing |
US6614805B1 (en) | 1999-05-27 | 2003-09-02 | Nortel Networks Limited | Method and apparatus for media access control for packet transmission over a buffer insertion ring |
KR100670006B1 (en) | 1999-06-08 | 2007-01-18 | 더 트러스티스 오브 콜롬비아 유니버시티 인 더 시티 오브 뉴욕 | Network telephony appliance and system for inter/intranet telephony |
US6842447B1 (en) | 1999-06-14 | 2005-01-11 | Mci, Inc. | Internet protocol transport of PSTN-to-PSTN telephony services |
AU5879800A (en) * | 1999-06-18 | 2001-01-09 | Trustees Of Columbia University In The City Of New York, The | System and method for receiving over a network a broadcast from a broadcast source |
US6832254B1 (en) * | 1999-08-23 | 2004-12-14 | Nortel Networks Limited | Method and apparatus for associating an end-to-end call identifier with a connection in a multimedia packet network |
US6782412B2 (en) * | 1999-08-24 | 2004-08-24 | Verizon Laboratories Inc. | Systems and methods for providing unified multimedia communication services |
US6636596B1 (en) * | 1999-09-24 | 2003-10-21 | Worldcom, Inc. | Method of and system for providing intelligent network control services in IP telephony |
US6795444B1 (en) * | 1999-10-26 | 2004-09-21 | Telefonaktiebolaget L M Ericsson (Publ) | System and method for providing wireless telephony over a packet-switched network |
US6434143B1 (en) | 1999-11-08 | 2002-08-13 | Mci Worldcom, Inc. | Internet protocol telephony voice/video message deposit and retrieval |
US6701366B1 (en) * | 1999-11-09 | 2004-03-02 | Nortel Networks Corporation | Providing communications services |
EP1102498B1 (en) * | 1999-11-09 | 2004-02-25 | Nortel Networks Corporation | Telephony services in a communications network |
US6625258B1 (en) * | 1999-12-27 | 2003-09-23 | Nortel Networks Ltd | System and method for providing unified communication services support |
US6826173B1 (en) * | 1999-12-30 | 2004-11-30 | At&T Corp. | Enhanced subscriber IP alerting |
US7069432B1 (en) * | 2000-01-04 | 2006-06-27 | Cisco Technology, Inc. | System and method for providing security in a telecommunication network |
US6678735B1 (en) * | 2000-01-26 | 2004-01-13 | Nortel Networks Limited | Method and apparatus for a sip client manager |
US6839323B1 (en) * | 2000-05-15 | 2005-01-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Method of monitoring calls in an internet protocol (IP)-based network |
US6850496B1 (en) * | 2000-06-09 | 2005-02-01 | Cisco Technology, Inc. | Virtual conference room for voice conferencing |
US7286521B1 (en) * | 2000-07-21 | 2007-10-23 | Tellme Networks, Inc. | Localized voice over internet protocol communication |
US7088720B1 (en) * | 2000-08-07 | 2006-08-08 | Sbc Technology Resources, Inc. | Multiservice use of network connection capability under user-to-network interface signaling |
CN100571310C (en) * | 2000-08-11 | 2009-12-16 | 纽约市哥伦比亚大学托管会 | The system of unified communication in the Internet/intranet conversation |
US6674852B1 (en) * | 2000-08-31 | 2004-01-06 | Cisco Technology, Inc. | Call management implemented using call routing engine |
US6934756B2 (en) * | 2000-11-01 | 2005-08-23 | International Business Machines Corporation | Conversational networking via transport, coding and control conversational protocols |
US7072303B2 (en) * | 2000-12-11 | 2006-07-04 | Acme Packet, Inc. | System and method for assisting in controlling real-time transport protocol flow through multiple networks |
US6865681B2 (en) * | 2000-12-29 | 2005-03-08 | Nokia Mobile Phones Ltd. | VoIP terminal security module, SIP stack with security manager, system and security methods |
WO2002069608A2 (en) * | 2001-01-16 | 2002-09-06 | Akamai Technologies, Inc. | Using virtual domain name service (dns) zones for enterprise content delivery |
US6728358B2 (en) * | 2001-01-25 | 2004-04-27 | Paltalk Holdings, Inc. | Efficient buffer allocation for current and predicted active speakers in voice conferencing systems |
US20020103850A1 (en) * | 2001-01-31 | 2002-08-01 | Moyer Stanley L. | System and method for out-sourcing the functionality of session initiation protocol (SIP) user agents to proxies |
WO2002063828A1 (en) * | 2001-02-06 | 2002-08-15 | Polycom Israel Ltd. | Control unit for multipoint multimedia/audio conference |
US7266091B2 (en) * | 2001-02-28 | 2007-09-04 | The Trustees Of Columbia University In City Of New York | System and method for conferencing in inter/intranet telephony |
US6898188B1 (en) * | 2001-04-19 | 2005-05-24 | 3Com Corporation | Gatekeeper simulator in a LAN telephony system |
GB2370448B (en) * | 2001-04-28 | 2003-03-26 | Ericsson Telefon Ab L M | Cost control in a SIP based network |
WO2002091678A1 (en) * | 2001-05-10 | 2002-11-14 | Nokia Corporation | Method, system and network element device for controlling sessions between terminals |
US20040044791A1 (en) * | 2001-05-22 | 2004-03-04 | Pouzzner Daniel G. | Internationalized domain name system with iterative conversion |
US20020049817A1 (en) * | 2001-07-12 | 2002-04-25 | Eatamar Drory | Storageless system and method for unified messaging on existing mail accounts via standard internet mail protocols |
US6970909B2 (en) * | 2001-10-11 | 2005-11-29 | The Trustees Of Columbia University In The City Of New York | Multi-protocol data communication system supporting wireless telephony and content delivery |
US7016343B1 (en) * | 2001-12-28 | 2006-03-21 | Cisco Technology, Inc. | PSTN call routing control features applied to a VoIP |
US7640326B2 (en) * | 2002-04-03 | 2009-12-29 | Cisco Technology, Inc. | Relaying of message waiting indications to support distributed telephony networks |
US7139797B1 (en) * | 2002-04-10 | 2006-11-21 | Nortel Networks Limited | Presence information based on media activity |
US8255501B2 (en) * | 2002-05-15 | 2012-08-28 | Motorola Mobility Llc | Establishing an IP session between a host using SIP and a device without an IP address |
KR100453350B1 (en) * | 2002-06-17 | 2004-10-15 | 엘지전자 주식회사 | Routing Device and Method of Using BICC in the Next Generation Open Network |
ATE377314T1 (en) * | 2002-07-04 | 2007-11-15 | Nokia Corp | MANAGEMENT OF A PACKET SWITCHED CONFERENCE CIRCUIT |
US7167912B1 (en) * | 2002-08-09 | 2007-01-23 | Cisco Technology, Inc. | Method and apparatus for detecting failures in network components |
US7826868B2 (en) * | 2002-10-10 | 2010-11-02 | Robbins Barry R | Extension of a local area phone system to a wide area network |
US7066616B2 (en) * | 2003-06-20 | 2006-06-27 | Howell Jay E | Modular temporary lighting assembly |
US20050041646A1 (en) * | 2003-06-27 | 2005-02-24 | Marconi Communications, Inc. | Audio mixer and method |
EP1507395A1 (en) * | 2003-08-14 | 2005-02-16 | Siemens Aktiengesellschaft | Method for the setting up of call forwarding for a SIP telephone number of a SIP client in a mixed circuit switched / packet network |
JP4728586B2 (en) * | 2004-03-16 | 2011-07-20 | Necインフロンティア株式会社 | IP phone method |
US7301938B2 (en) * | 2004-04-14 | 2007-11-27 | Lucent Technologies Inc. | Method of transferring a packet switched to a circuit switched call |
US8027335B2 (en) * | 2004-05-05 | 2011-09-27 | Prodea Systems, Inc. | Multimedia access device and system employing the same |
US7613170B1 (en) * | 2004-06-29 | 2009-11-03 | 3Com Corporation | Method and apparatus for PSTN-based IP active call recovery and re-routing |
US8218457B2 (en) * | 2004-06-29 | 2012-07-10 | Stmicroelectronics Asia Pacific Pte. Ltd. | Apparatus and method for providing communication services using multiple signaling protocols |
US7840681B2 (en) * | 2004-07-30 | 2010-11-23 | International Business Machines Corporation | Method and apparatus for integrating wearable devices within a SIP infrastructure |
US7983245B2 (en) * | 2004-09-13 | 2011-07-19 | Tekelec | Methods and systems for converting an internet protocol (IP)-based message containing subscriber content to a public switched telephone network (PSTN)-based message including subscriber content |
US7593390B2 (en) * | 2004-12-30 | 2009-09-22 | Intel Corporation | Distributed voice network |
US8194640B2 (en) * | 2004-12-31 | 2012-06-05 | Genband Us Llc | Voice over IP (VoIP) network infrastructure components and method |
US7483416B2 (en) * | 2005-04-01 | 2009-01-27 | Cml Emergency Services Inc. | Internet protocol radio dispatch system and method |
JP4690767B2 (en) * | 2005-05-11 | 2011-06-01 | 株式会社日立製作所 | Network system, server device, and communication method |
US8401004B2 (en) * | 2005-06-21 | 2013-03-19 | Lg Electronics Inc. | Terminal, method and system for performing combination service using terminal capability version |
US8019986B2 (en) * | 2005-08-12 | 2011-09-13 | Comcast Cable Holdings, Llc | Method and system for booting, provisioning and activating hardware and software clients |
US20070115919A1 (en) * | 2005-10-14 | 2007-05-24 | 3Com Corporation | Method and system for using a packet-network telephone to schedule a conference call |
US7643472B2 (en) * | 2005-10-19 | 2010-01-05 | At&T Intellectual Property I, Lp | Methods and apparatus for authorizing and allocating outdial communication services |
JP4585480B2 (en) * | 2006-03-30 | 2010-11-24 | 株式会社東芝 | Telephone system and telephone exchange device |
US9219686B2 (en) | 2006-03-31 | 2015-12-22 | Alcatel Lucent | Network load balancing and overload control |
US8837704B2 (en) * | 2006-08-31 | 2014-09-16 | Microsoft Corporation | Client controlled dynamic call forwarding |
US7620167B2 (en) * | 2006-09-21 | 2009-11-17 | Siemens Communications, Inc. | Apparatus to override the redirect or reject feature at an SIP end point |
US20080123627A1 (en) * | 2006-09-26 | 2008-05-29 | Moreman Charles S | Media terminal adapter with session initiation protocol (sip) proxy |
EP2078430B1 (en) * | 2006-10-19 | 2015-03-18 | BlackBerry Limited | Client device method and apparatus for routing a call |
US20080130628A1 (en) * | 2006-11-07 | 2008-06-05 | Shiejye Geoffrey Lin | Systems and methods for providing advanced call processing features to analog telephone subscribers |
CN1988546A (en) * | 2006-12-15 | 2007-06-27 | 华为技术有限公司 | Method and system for obtaining conversation start protocol news transmission path |
JP2008153896A (en) * | 2006-12-15 | 2008-07-03 | Nec Corp | Content distribution system, content server side user terminal, content client side user terminal and authentication method of content distribution system |
US8873405B2 (en) * | 2006-12-15 | 2014-10-28 | Verizon Patent And Licensing Inc. | Automated session initiation protocol (SIP) device |
US8189570B2 (en) * | 2006-12-28 | 2012-05-29 | Alcatel Lucent | System and method for processing calls to VoIP devices using the called party's email address |
WO2008086887A1 (en) * | 2007-01-16 | 2008-07-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Evaluating initial filter criteria |
KR101429712B1 (en) * | 2007-01-19 | 2014-08-12 | 삼성전자주식회사 | Blind transfer and attended transfer system and control method in network of SIP base |
US8085742B2 (en) * | 2007-01-31 | 2011-12-27 | Research In Motion Limited | Call forwarding methods and apparatus for mobile communication devices which operate in WWANS and WLANS |
US20080219241A1 (en) * | 2007-03-09 | 2008-09-11 | Nokia Corporation | Subscriber access authorization |
US8223757B2 (en) * | 2007-06-11 | 2012-07-17 | At&T Intellectual Property I, L.P. | Methods and apparatus to perform call screening in a voice over internet protocol (VOIP) network |
EP2204036B1 (en) * | 2007-10-31 | 2013-04-03 | Telefonaktiebolaget LM Ericsson (publ) | Session initiation protocol message payload compression |
US7614384B2 (en) * | 2007-11-02 | 2009-11-10 | Gm Global Technology Operations, Inc. | Engine torque control with desired state estimation |
US8855103B2 (en) * | 2008-01-17 | 2014-10-07 | Blackberry Limited | Personal network access control system and method |
WO2009129487A2 (en) * | 2008-04-17 | 2009-10-22 | Tekelec | Methods, systems, and computer readable media for session initiation protocol (sip) overload control |
US8838819B2 (en) * | 2009-04-17 | 2014-09-16 | Empirix Inc. | Method for embedding meta-commands in normal network packets |
US8804513B2 (en) | 2010-02-25 | 2014-08-12 | The Trustees Of Columbia University In The City Of New York | Methods and systems for controlling SIP overload |
US20120014375A1 (en) * | 2010-07-16 | 2012-01-19 | Avaya Inc. | Method for Telephone Connection Preservation |
US8811393B2 (en) * | 2010-10-04 | 2014-08-19 | Cisco Technology, Inc. | IP address version interworking in communication networks |
WO2012084018A1 (en) * | 2010-12-21 | 2012-06-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Delivery and execution of logic in user terminal in ims session |
US8890925B2 (en) * | 2011-12-07 | 2014-11-18 | Positron Telecommunication Systems, Inc. | Systems and methods for mapping a URI to a plurality of endpoints for a SIP communication |
EP2640030B1 (en) * | 2012-03-12 | 2014-11-12 | Telefonaktiebolaget LM Ericsson (publ) | Capability update in a telecommunications network |
EP2835027B1 (en) * | 2012-04-03 | 2015-12-30 | Telefonaktiebolaget L M Ericsson (publ) | Call-back to a ue that has made an emergency call in a visited ims network |
US9407672B2 (en) * | 2013-10-30 | 2016-08-02 | Vonage America Inc. | Systems and methods for reducing signalling in an internet protocol telephony system |
US9178773B1 (en) * | 2014-04-15 | 2015-11-03 | Green Key Technologies Llc | Computer-programmed telephone-enabled devices for processing and managing numerous simultaneous voice conversations conducted by an individual over a computer network and computer methods of implementing thereof |
-
2000
- 2000-06-08 KR KR1020017015821A patent/KR100670006B1/en not_active IP Right Cessation
- 2000-06-08 MX MXPA01012622A patent/MXPA01012622A/en active IP Right Grant
- 2000-06-08 IL IL14688500A patent/IL146885A0/en active IP Right Grant
- 2000-06-08 AU AU61209/00A patent/AU6120900A/en not_active Abandoned
- 2000-06-08 EP EP00947639.1A patent/EP1186144B1/en not_active Expired - Lifetime
- 2000-06-08 US US09/980,885 patent/US7610384B1/en not_active Expired - Lifetime
- 2000-06-08 CA CA002376214A patent/CA2376214A1/en not_active Abandoned
- 2000-06-08 ES ES00947639.1T patent/ES2441203T3/en not_active Expired - Lifetime
- 2000-06-08 JP JP2001502311A patent/JP4999244B2/en not_active Expired - Fee Related
- 2000-06-08 WO PCT/US2000/040175 patent/WO2000076158A1/en active IP Right Grant
-
2001
- 2001-12-03 IL IL146885A patent/IL146885A/en not_active IP Right Cessation
-
2009
- 2009-05-19 US US12/468,707 patent/US8271660B2/en not_active Expired - Lifetime
- 2009-09-16 US US12/560,821 patent/US20100002690A1/en not_active Abandoned
-
2012
- 2012-08-17 US US13/588,369 patent/US9413585B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
WO2000076158A1 (en) | 2000-12-14 |
EP1186144A1 (en) | 2002-03-13 |
US20130016715A1 (en) | 2013-01-17 |
ES2441203T3 (en) | 2014-02-03 |
KR100670006B1 (en) | 2007-01-18 |
IL146885A (en) | 2007-03-08 |
KR20020032431A (en) | 2002-05-03 |
IL146885A0 (en) | 2002-08-14 |
EP1186144A4 (en) | 2009-09-09 |
JP2004500744A (en) | 2004-01-08 |
CA2376214A1 (en) | 2000-12-14 |
EP1186144B1 (en) | 2013-10-23 |
US7610384B1 (en) | 2009-10-27 |
US8271660B2 (en) | 2012-09-18 |
US9413585B2 (en) | 2016-08-09 |
AU6120900A (en) | 2000-12-28 |
US20100002690A1 (en) | 2010-01-07 |
MXPA01012622A (en) | 2002-06-21 |
US20090290695A1 (en) | 2009-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4999244B2 (en) | Network telephone apparatus and system for internet telephones | |
US6970909B2 (en) | Multi-protocol data communication system supporting wireless telephony and content delivery | |
US7149208B2 (en) | Method and apparatus for providing caller identification based responses in a computer telephony environment | |
US7715413B2 (en) | Multi-network exchange system for telephony applications | |
CA2394008C (en) | A client-server network for managing internet protocol voice packets | |
US7068641B1 (en) | Telephony and data network services at a telephone | |
EP1180296B1 (en) | Telephony and data network services at a telephone | |
KR100496120B1 (en) | Internet Protocol-Private Branch Exchange for Providing Internet Messenger Function and Internet Terminal for Use Therewith | |
US20020071424A1 (en) | Packet voice telephony apparatus and method | |
JP2002519891A (en) | Method and system for broadcasting call notifications | |
US6956848B1 (en) | Computer network-based auto-attendant method and apparatus | |
JP2003527786A (en) | Distributed communication network including one or more telephony devices with programming capabilities | |
EP2391094B1 (en) | Network telephony appliance and system supporting wireless internet telephony | |
US20060259920A1 (en) | Streaming voice over protocol | |
JP2011124775A (en) | Communication system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060130 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080529 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081111 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20090212 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20090219 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20091006 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100205 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20100215 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100518 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100813 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100820 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100921 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20101029 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120124 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120127 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120224 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120229 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120326 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120515 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150525 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |