위의 목적을 달성하기 위하여 본 발명은 전화 연결 스위칭 유니트가 접속된 다수의 클라이언트컴퓨터와, 클라이언트컴퓨터와 인터넷을 통하여 연결될 수 있으며 각 클라이언트컴퓨터 사용자의 전화번호가 저장되어 있는 연결 관리 서버를 구비하되, 상기 전화스위칭 유니트에는 전화기와 공중전화망(PSTN)의 국선이 연결되어 있는 구성의 인터넷 전화 시스템에서 전화를 연결하기 위한 방법으로서,
상기 클라이언트컴퓨터가 IP 주소를 부여받은 상태에서 상기 관리서버에 접속하여 클라이언트컴퓨터의 IP 주소를 알려주고 대기 상태를 유지하다가,상기 시스템에서 전화를 걸 때에는,상기 클라이언트컴퓨터는 상기 전화기로부터 전화번호를 입력받아 상기 관리서버로 전송하고,상기 관리서버로부터 상기 입력된 전화번호에 상응하는 상대방의 IP 주소를 확인한 정보를 전달받고,상기 상대방의 IP 주소로 연결이 가능한 상태일 때에는, 상기 IP 주소와 인터넷으로 통하여 연결하고, 상기 전화기 스위칭 유니트가 전화기와 클라이언트컴퓨터 사이를 연결한 상태가 되게 하여 인터넷을 통한 전화연결을 제공하며,
상기 상대방의 IP 주소로 연결이 불가능한 상태이거나 상대방의 IP 주소가 없는 상태일 때에는 상기 전화기 스위칭 유니트가 전화기와 공중전화망의 국선 사이를 연결한 상태가 되게 하여 전화연결을 제공하는 전화 연결 방법을 제공한다.
본 발명의 다른 측면에 따르면, 클라이언트 컴퓨터의 USB 연결포트에 연결되며, 공중전화망(PSTN)의 국선 및 전화기와 연결되는 전화 연결을 스위칭하기 위한 전화 연결 스위칭 장치로서,
상기 전화기를 상기 공중전화망의 국선과 상기 컴퓨터 사이에서 선택적으로 연결해주는 스위칭부와,
상기 스위칭부를 제어하는 제어부와,
상기 전화기와 클라이언트컴퓨터 사이에서 음성의 신호를 아날로그 신호와 디지털 신호 사이에서 바꾸어주는 변환기를 구비하는 전화 연결 스위칭 장치가 제공된다.
이하, 도면을 참조하여 본 발명의 실시예를 상세히 설명한다. 도 1을 참조하면, 본 발명의 실시예에 따른 인터넷 전화 시스템(10)은 각 사용자가 사용하는 클라이언트 컴퓨터(100)와 거기에 연결된 전화 스위칭 유니트(200), 인터넷 전화 관리서버(300)가 구비된다. 클라이언트 컴퓨터(100)는 인터넷연결 서비스 제공 서버(이하 ISP 서버라 한다)(310)를 통하여 인터넷(320)에 연결된다. 인터넷(320)을 통하여 클라이언트 컴퓨터(100)는 인터넷 전화 관리서버(300)와 연결되는 것이다. 한편, 스위칭 유니트(200)는 클라이언트 컴퓨터(100)에 연결된다. 스위칭 유니트(200)는 후술하는 바와 같이, USB(Universal Serial Bus) 인터페이스를 이용한 장치로서 스위칭 유니트(200)는 클라이언트 컴퓨터(100)의 USB 포트에 접속되는 것이 바람직하다. 스위칭 유니트(200)는 공중전화망(PSTN 망)(330)에도 연결된다. 스위칭 유니트(200)에는 통상의 전화기(340)가 연결된다. 공중전화망(330)에는 일반 전화기(340)들도 연결되어 있다.
도2를 참조하면, 클라이언트 컴퓨터(100)의 구성이 도시되어 있다. 클라이언트 컴퓨터(100)의 CPU(102)는 모뎀(103)을 거쳐 ISP 서버(310)로 연결되어 있다. CPU(102)에는 RAM(104)과 ROM(106)이 연결되어 있다. 클라이언트 컴퓨터(100)에는 오퍼레이팅시스템(OS)(107)과 전화연결 제어 프로그램(스위칭 유니트 제어 프로그램)(108)이 구비된다. 이 프로그램은 클라이언트 컴퓨터가 켜져 있을 때에는 램에상주하는 것이 바람직하다.
상기 제어 프로그램(108)은 후술하는 USB 전화 스위칭 유니트의 하드웨어를 제어하기 위한 소프트웨어로써 USB(universal serial bus) 포트를 통한 스위칭 제어, 스피커 제어, 오디오신호의 디지털 또는 아날로그 신호변환의 제어 등의 기능을 수행한다. 구체적으로 설명하면, 이 제어프로그램은 인터넷 전화에 필요한 프로토콜(예를 들면, H.323)을 제공한다. 아울러, 사용자 등록정보(이름, 전화번호 등)를 입력받아 서버로 IP와 함께 전송한다. 한편, 사전 설정된 시간(예를 들면, 매분) 간격으로 IP주소가 on 상태인 것을 서버에 알려 줌으로써 PC가 작동중임을 알려준다. 전화가 오면 연결하며 연결 후 안내 메시지를 보내준다.
전화 걸때에는 수화기를 들었다는 것을 통보 받고 대기하며, 입력된 다이얼 신호를 IP와 함께 서버에 전달한다. ON 상태에서는 IP 주소로 연결하여 인터넷 전화통화가 가능하도록 하며, OFF 상태에서는 다이얼(버튼 입력) 신호를 국선(공중전화망)으로 전송하여 일반전화로 연결해준다. 전화 받을 때에는, 연결을 원하는 IP주소 접수하고 전화 벨 소리 발생시킨다. 제어프로그램의 작동에 대해서는 후술하는 시스템 전체의 동작 내용을 통하여 다시 상세히 설명할 것이다.
CPU(102)와 연결된 데이터 저장장치(110)에는 전화연결에 필요한 데이터가 저장된다. 먼저, 각종 정보를 관리해주는 관리서버 데이터(112)(즉, 관리서버의 URL)가 저장된다. 후술하는 바와 같이 사용자가 전화를 걸면, 전화연결 제어 프로그램(108)은 상기 관리서버에 가서 상대방 전화의 연결 상태를 점검해야 한다. 한편, 자주 이용하며, 항상 인터넷을 통하여 연결되어 있고 고정 IP 어드레스를 갖는컴퓨터의 스위칭 유니트에 연결된 전화의 전화번호 데이터를 부가적으로 저장장치(110)에 저장해 놓을 수도 있다. 그러면, 일부 전화번호의 경우 관리서버를 통할 필요도 없이 인터넷으로 전화할 수도 있다.
도 3을 참조하면, 스위칭 유니트(200)는 일반전화기와 PC간을 연결하여 전화기로 인터넷 전화 또는 일반 전화를 사용할 수 있도록 연결해주는 하드웨어 장치이다. 스위칭 유니트(200)는 전화기를 연결할 수 있는 모듈러 잭(Modular Jack) 커넥터(J1), 공중전화망과 연결할 수 있는 모듈러 잭(Modular Jack) 커넥터(J2), PC의 USB 포트에 연결할 수 있는 USB 커넥터(C1)가 구비된다. 또한, 조건에 따른 일반전화나 인터넷전화를 연결해주는 스위칭부, 인터넷 전화가 왔을 때 전화소리를 내주는 앰프(203)와 스피커(SPEAKER)(204)와, USB 포트를 통하여 신호가 들어올 때 이에 따라 스위칭부와 스피커를 제어할 수 있는 USB 제어 장치(USB 제어 chip, 제어부)(206)를 더 구비한다. 이 칩에는 이들의 제어 및 USB 통신에 필요한 프로그램이 저장되어 있다. 본 발명에서 사용하는 USB 칩(206)으로는 텍사스인스투르먼트(TI)사의 TUSB3200을 사용할 수 있으며, 어베인(AVANE) 또는 필립스(PHILIPS)사의 칩을 사용할 수도 있다. 이 USB 칩 장치(206)는 MCU(Micro Control Unit)(206a)와 ROM(206b), RAM, I/O 및 오디오 인터페이스(Audio Interface)(206c), USB 인터페이스(206d), USB 컨트롤러를 구비한다.
I/O 및 오디오 인터페이스(206C)에는 코덱(CODEC)(208)이 연결된다. 이 오디오 코덱(208)은 AKM사의 AC97 CODEC인 AK4540을 사용할 수 있으며, 기타 Sigmatel, Crystal, Analog Device등에서 호환 칩을 사용할 수도 있다. 스피커(204)에 연결된앰프(203)가 코덱(208)에 연결된다. 코덱(208)에서 음성신호가 디지털 또는 아날로그로 변환된다.
스위칭 장치(200)는 도3에 도시한 바와 같이 스위칭부를 구성하는 두 개의 릴레이(R1,R2)를 구비한다. 이들은 USB 제어장치(206)의 지시에 따라, 전화기를 공중전화망의 국선에 연결하거나 전화기를 PC로 연결해주도록 작동한다. 코덱(208)에서 음성신호가 디지털 또는 아날로그 신호로 변환된다. 따라서, 전화기를 PC로 연결했을 때에는 음성신호는 이 코덱(208)을 거치도록 구성되어 있다.
전화기의 송수화기를 들면(들었을 때 후크스위치 ON 상태로, 반대로 송수화기를 내려 놓은 상태를 OFF 상태로 표시하기도 한다), 후크스위치 감지라인(210)을 통해 이것이 USB 제어장치(206)에 전달되고 후술하는 바와 같이, 릴레이가 작동하여 전화기를 PC에 연결하도록 구성된다. 외부 국선에서 전달되는 호신호는 링감지라인(212)을 거쳐 USB 제어장치(206)에 전달되면, 국선이 전화기와 연결되도록 릴레이가 작동된다. 스위칭 유니트(200)의 라인에는 도시한 바와 같이, 이상 신호 방지를 위한 아이솔레이터(isolator)(214,214a)가 설치된다.
도4를 참조하면, 관리서버(300)의 구성이 도시되어 있다. 관리서버(300)의 CPU(302)는 인터넷(네트웍)에 연결되어 있다. CPU(302)에는 RAM(304)과, ROM(306)이 연결되어 있다. 관리서버(300)에는 오퍼레이팅시스템(OS)(307)과 IP 주소 연결 관리 프로그램(308)이 구비된다. 데이터 저장장치(310)에는 각종 데이터 베이스와 필요한 웹페이지가 저장되어 있다. 저장된 데이터베이스로는 사용자 데이터베이스(314)를 들 수 있다. 사용자는 상기 스위칭 유니트(200)를 가지고 있는 사람으로서, 인터넷 전화를 이용하려는 사람이다. 먼저 사용자 데이터베이스(314)는 각 사용자별로 파일이 만들어지는데, 그 파일에는 사용자 이름, 사용자 아이디(ID), 암호(PASSWORD), 전자메일주소 또는 주소 등의 연락정보, 전화번호의 필드가 마련되어 정보가 입력된다. 그리고 수시로 변화하는 인터넷 연결여부를 나타내는 필드와, 연결된 인터넷의 IP 주소가 기록된 필드도 마련된다.
웹페이지는 관리서버(300)에 들어갔을 때 나오는 회원관리 등의 작업을 위한 웹페이지들과, 광고용 웹페이지 등이 있다. 아울러, 저장장치(310)에는 USB 스위칭 유니트를 제어하는 클라이언트 컴퓨터용 제어 프로그램이 저장되어 있어 사용자가 다운로드받을 수 있다.
도 5 및 도 6 을 참조하여 등록과 전화걸기, 전화받기의 동작에 대해 설명한다.
1. 등록
사용자는 자신의 클라이언트 컴퓨터(100)를 켜고(500), 인터넷(320)에 연결(501)한다. 이 때, 모뎀(103)을 통하여 연결되는 ISP 서버(310)는 클라이언트 컴퓨터(100)에 하나의 IP 주소를 할당한다. (만일 클라이언트 컴퓨터가 항상 접속을 유지할 수 있는 상태에서는 고정 IP 주소를 받을 수도 있다.) 웹브라우저를 가동시켜 관리서버(300)에 접속한다. 그 상태에서 사용자는 스위칭 유니트(200)를 클라이언트 컴퓨터(100)의 USB 포트에 연결(502)한다. 사용자는 전화기(340)와 공중전화망(330)의 연결선을 스위칭 유니트(200)에 연결(504)한다. USB 스위칭 유니트(200)를 제어하는 프로그램(108)을 관리서버(300)로부터 다운로드 받고 이를 클라이언트 컴퓨터(100)에 설치(506)한다.
이 때, 상기 제어 프로그램(108)은 사용자의 등록을 요구한다. 사용자는 자신의 전화번호를 국가코드, 지역코드, 국번 순으로 입력한다. 아울러 이름 및 등록에 필요한 여러 가지 사항(예를 들면, 사용자 데이터베이스에 입력된 아이디, 패스워드 등)을 입력한다. 그러면, 상기 제어 프로그램(108)은 이러한 사용자의 정보를 관리서버(300)로 전달한다. 관리서버(300)는 사용자 데이터베이스에 이 자료들을 입력(507)한다.
2. 전화걸기
클라이언트 컴퓨터(100)가 켜지고 인터넷에 연결되면, 클라이언트 컴퓨터(100)의 제어 프로그램(108)은 USB 포트를 초기화(508)한다. 스위칭 유니트(200)의 스위칭부는 클라이언트 컴퓨터(100)의 켜짐, 꺼짐 여부와 관계없이 전화기(340)와 공중 전화망(330) 사이를 연결하도록 설정된다. 관리서버(300)의 연결 관리 프로그램(308)은 항상 IP 어드레스의 상태 및 그 IP 어드레스가 입력되기를 기다리고 있는 상태이다. 스위칭 유니트(200)가 초기화되면, 전화번호와 IP 주소를 전송하여 인터넷에 연결되어 있다는 온라인 상태를 관리서버에 통보(510)한다. 관리서버는 입력된 전화번호, IP 주소, 온라인 상태를 기록(512)해둔다. 제어 프로그램(108)은 대기(514) 상태에 들어간다. 한편, 이 대기 상태에서는 도3에 도시한 바와 같이, 항상 스위칭부가 전화기(340)와 공중전화망(330)의 국선라인을 연결해주는 것으로 유지된다(그러나 본 발명은 이에 제한되는 것은 아니다). 대기 상태에서는 항상 사전 설정된 시간 간격마다 클라이언트 컴퓨터의 작동 상태를 관리서버에 알린다.
사용자가 대기 상태에서 전화기(340)의 수화기(핸드셋)를 들면(516), 후크스위치의 작동이 감지되고 이에 따라, 스위칭 유니트(200)의 릴레이 연결 상태를 전환하고(518), 제어 프로그램(108)이 이를 감지(520)하고 번호가 입력되기를 기다린다. 즉, 전술한 바와 같이, 후크스위치 작동은 감지(전압을 감지함)되어 후크스위치 감지라인(210)을 통해 USB 제어장치(206)로 전달되고, 제1 릴레이(R1)의 작동에 의해 전화기와 PC가 연결된다. (다만, 클라이언트 컴퓨터(100)가 꺼져 있거나 인터넷에 연결되어 있지 않은 상태(즉, 대기 상태가 아닌 상태)에서는 이러한 연결 상태 전환이 없다.)
사용자가 전화기의 키패드(버튼)를 눌러 번호 입력(522)하면, 이 톤(TONE (DTMF))신호는 디지털 신호로 변환되어 클라이언트 컴퓨터(100)에 전달된다. 클라이언트 컴퓨터(100)는 이 전화번호를 관리서버로 전달(524)한다. 사용자가 지역번호 없이 전화번호를 눌렀을 때에는 전화를 건 사람의 국가번호와 지역번호와 동일한 국가번호, 지역번호가 포함된 전화번호가 서버로 전달되도록 하는 것이 바람직하다. 또한, 지역번호와 전화번호를 눌렀을 때에는 전화를 건 사람의 국가번호와 동일한 국가번호가 포함된 전화번호가 서버로 전달되도록 하는 것이 바람직하다.
관리서버는 전화번호에 해당하는 IP 주소 및 온라인 상태를 확인 통보(526)한다. 제어 프로그램은 상대 IP 주소에 접속하여 확인(528)한다. 이 때, IP 주소가 ON 상태이면, 인터넷 전화통화(530)를 수행한다.
통화를 끝내기 위해 송수화기를 내려놓으면(532), 스위칭 유니트의 스위칭부는 전화기를 공중전화망에 연결하도록 전환(534)한다. 통화 완료 후에는 제어프로그램(108)은 대기 상태에 들어간다(538).
상대 IP 주소가 OFF 상태이면, 스위칭부 전환명령을 내린다(539). 스위칭 유니트(200)는 제1릴레이(R1)와 전화기와 공중 전화망을 연결(540)하고 제2릴레이(R2)를 작동시켜 클라이언트컴퓨터가 톤신호(상대방전화번호)를 송신할 수 있게 한다. 그 후 공중전화망을 통하여 전화통화를 한다(542). 통화를 끝내기 위해 송수화기를 내려놓으면(544), 통화완료 후 대기 상태(538)로 들어간다. IP 주소가 OFF 상태에서 전화통화를 하면 사용자는 어디에 전화 연결되었는지 알 수 없을 수도 있다. 따라서, IP 주소가 OFF 상태에서는 공중전화망으로 연결하기에 앞서 클라이언트 컴퓨터의 제어프로그램이 컴퓨터 모니터를 통하여 고지하거나, 음성으로 전화기에 이를 알리도록 하는 것이 바람직하다.
3. 전화받기
앞서 전화걸기의 대기 상태에서 인터넷으로 전화가 온 것을 클라이언트 컴퓨터(100)가 감지(600)한다. 그러면, 스위칭 유니트(200)에 있는 스피커(204)를 구동하여 벨소리가 나도록 한다(602). 즉, PC에서 벨소리를 만들어 코덱(208)을 거쳐 스피커로 전달하면 벨소리가 나게 된다. 사용자가 송수화기를 들면(604), 스위칭 유니트의 스위칭부가 전화기와 PC(클라이언트 컴퓨터를 가리킴)를 연결(606)한다. 그러면, 제어 프로그램은 상대방 IP 주소로 연결(608)해준다. 연결된 상태에서, 사용자는 인터넷 전화 통화(610)를 한다. 통화를 완료하기 위해 수화기를 내려놓으면(612), 스위칭 유니트(200)의 스위칭부를 작동시켜 전화기와 공중 전화망을 연결(614)해주고, 통화 완료 후 대기 상태로 돌아간다(616).
공중전화망(국선)으로부터 전화가 온 경우에는 이를 감지하여 링감지라인(212)을 통하여 전달하면, 전화기의 송수화기를 들어도 제1릴레이(R1)가 그대로 국선을 전화기와 연결하고 있도록 제어된다. 따라서, 전화통화를 할 수 있다.
이상 본 발명을 상기 실시예를 들어 설명하였으나, 본 발명은 이에 제한되는 것은 아니다. 당업자라면, 본 발명의 취지 및 범위를 벗어나지 않고 수정, 변경 등이 가능하며 이러한 수정과 변경 또한 본 발명에 속하는 것임을 알 수 있을 것이다.