Caller ID 來話號碼顯示的功能,是透過交換機做信號傳遞,傳送資料訊息送到使用者的終端設備上(話機),也就是把撥打電話這端的電話號碼,送到接聽電話的那一端。接聽電話端,可以根據電話號碼,選擇要不要接聽電話。
最早提供 Caller ID 服務是由美國及加拿大,Bellcore (Bellcore Client Company) 定義了Type I, Type I, Type III 三種不同類別。
Type |
Services Supported |
Type 1 |
Calling Number Delivery |
|
Calling Name Delivery |
|
Visual Message Waiting Indicator |
Type 2 |
Type 1 Services + |
|
Calling Identity Delivery on Call Waiting |
Type 3 |
Type 2 Services + |
|
ADSI: both server Display control and Feature Download |
|
ADSI: base visual features such as: |
|
- Visual Screening List Editing |
|
- Calling Waiting Deluxe |
|
- Visual access to information services such as directory, home banking, etc... |
ON/OFF Hook
on hook 是電話掛機狀態,off hook 是通話中的狀態。
在 on hook 狀態中,A Party 打電話給 B Party,B Party 能夠顯示來電時間、電話號碼、人名,就是 Caller ID Type I 服務。
在 off hook 狀態中,當 A, B 在通話中,如果 C 打電話給 B,B 能夠在通話中得知 C 的來電時間、電話號碼、人名,B可利用 Call Waiting 決定要不要允許插撥,接聽 C 的來電,這是 Type 2 的服務。
DTMF/FSK
來電號碼顯示目前有兩種信號,一種是簡易的雙音複頻 DTMF: Dual Tone Multi-Frequency,另一種是速度較快,傳輸較複雜的 FSK: Frequency Shift Keying。
DTMF 是由矩陣式 Hi/Lo 頻率編碼組成數字及英文字,只能表示 1, 2, 3, 4, 5, 6, 7, 8, 9, *, 0, #, A, B, C, D 這些字元。所以目前只能提供用來顯示來電號碼而已。
頻率 Hz |
H1 1209 |
H2 1336 |
H3 1477 |
H4 1633 |
L1 697 |
1 |
2 |
3 |
A |
L2 770 |
4 |
5 |
6 |
B |
L3 852 |
7 |
8 |
9 |
C |
L4 941 |
* |
0 |
# |
D |
FSK 是用兩個頻率 FH, FL 來代表 0 與 1,接收到訊號後,要解碼比對 ASCII Code 成為數位訊號,故可以處理來電號碼、姓名、時間、語音留言訊息。
DTMF 目前只有瑞典、荷蘭、大陸使用,但已經慢慢改為 FSK。台灣先開通使用 DTMF,因交換機逐漸汰換,逐步開通 FSK,故兩種都有可能。
除了 DTMF, FSK 的差異外,各國傳輸協定是不同的,有的是第一聲鈴響後,傳遞訊號,有的是在極性反轉下傳遞資料,有的是先送自己的號碼,再送對方的號碼,因此 Caller ID 必須考慮不同國家地區使用,才能符合當地的規範。
FSK Bell 202A 與 V.23 規格
Bell 202A 是美國使用,V.23 是英國使用,差異在於頻率跟位準大小
Bell 202A |
|
Link type |
Simplex |
Modulation |
Phase coherent frequency shift keying |
Logical 1 |
1200 +- 12 Hz |
Logical 0 |
2200 +- 12 Hz |
Transmission rate |
1200 bite per second |
Data |
Serial, Binary, Asynchronous |
Transmission level |
-13.5 +- 1 dBm into 900 ohm |
V.23 |
|
Link type |
Simplex |
Modulation |
FSK |
Logical 1 |
1300 +- 1.5 % |
Logical 0 |
2100 +- 1.5 % |
Transmission rate |
1200 baud +- 1% |
Received signal level |
for mark: -8 dBV to -40 dBV |
Received signal level for space |
differ by up to 6 dB for mark and space |
Unwant signals |
Total power of extraneous signals in the voice band 300~3400 Hz are at least 20 dB below the signal level |
Data Format |
Serial binary asynchronous ( 1 start bit first, then 8 data bits with least significant bits first, followed by 1 stop bit minimum, up to 10 stop bits maximum) Start bit = 0, Stop bit = 1 |
美規 Caller ID
有 Type I, II 兩種。
Type I 是 Off Hook 的來電號碼資料,使用 FSK 訊號,資料跟著第一次鈴聲後面進來。
第一次鈴聲長度約為 0.2~3 seconds
鈴響後會有一段大約 0.5~1.5 seconds 的靜止狀態
然後是資料傳輸,會傳入 Caller ID,大約 2.9~3.7 seconds
資料傳送後,有 >=200ms 的靜止狀態
然後是第二次鈴聲 1.8 ~ 3 seconds
然後是第三、第四次 ... 鈴聲
還有一種 Type I 訊號,沒有跟著鈴聲進來,用在 Message Waiting 狀態,也就是有人留言在 Voice Mail 時,交換機會發送訊號過來,通知有人留言。
這一種不跟隨鈴聲的方式,會有一個 OSI (Open Switching Interval) 訊號來讓終端偵測,但根據 Bellcore 規範,這個 OSI 訊號可有可無。 OSI 訊號是一種一段時間,電話線中斷的訊號,由於 OSI 訊號不一定會發生,因此不能當作可偵測的訊號。
- OSI 150~350 ms
- Silent Interval 300 ms
- Data transmission
Type II 除了 Type I 以外,還增加了 OFF Hook,也就是 Call Waiting 狀態,當使用者收到訊息後,可以利用 Flash Key 切換通話對象。
因為沒有鈴聲,所以傳送方式為
CPE Alerting Signal - CPE Sends ACK - FSK Data Transmission - CPE unmutes - OSI - W - SAS X - X1 - CAS Y - t1 - Q - FSK data Z - OSI - S
- 一開始會有 0 ~ 300 ms OSI 訊號
- 交換機會暫時靜止遠端的聲音,送入 0 ~ 60 ms (W),並送出一個插撥聲音 SAS (X) 250ms ~ 1 sec
- 經過 0 ~ 50ms 間斷 X1
- 交換機送出 CAS 2130 + 2750 Hz 約 80 ~ 85ms 的複頻 Tone Y
- 一般的終端必須要偵測 CAS Tone,用來準備接收 Caller ID 訊號
- 終端要先作並機測試,查看是否有並聯的分機佔線,如果沒有,就發出 "D" Tone (941 + 1633 Hz) 給交換機,也就是 ACK 訊號
- 交換機會等待 ACK,約等待 160 +- 5ms 的時間 t1
- 交換機收到 ACK 後,會等待 50 ~ 500ms 的間隔 Q,然後送出資料 Z
- 接著是 OSI 與 間隔 S 0~320ms
- 最後回到通話狀態
OSI 不一定會發生
美規 Caller ID 資料格式
分為單筆資料 Single Data 與多筆資料 Multiple Data 兩類,目前大部分是 Multiple Data
SDMF - Single Data Message Format 只能傳送日期時間、電話號碼與 message waiting
MDMF - Multiple Data Message Format 還可以傳送人名,特殊的訊息。在 Call Waiting 的訊號只有 Multiple DAta 的格式。
Single Data 會先出線一連串 250 ms 的 1, 0 交替的捕捉訊號 (Channel Seizure),然後會有 150ms 連續的 1,後面開始才是真正的資料,這些資料包含,訊息種類、長度、訊息字元,然後是校正位元。
訊息種類分為電話號碼及 message waiting 兩種,訊息字元會送出月份、日期、小時、分鐘,及電話號碼,資料送完後,會送出校正字元。
Channel Seizure Signal - Mark Signal - Message Type Word - Mark bits(0~20) - Messge Length Word - Mark bits(0~20) - Message Words - Mark bits(0~20) - Checksum Word
Multiple Data 會在資料種類後面出現多個 Parameter 參數位元組,裡面包含參數種類、參數長度、參數字元。Off Hook Call Waiting 的 Multiple Data 資料開頭沒有 1010... 的捕捉訊號。
台灣 DTMF Caller ID
台灣的 Caller ID 根據 ETSI 修改而來,分為 DTMF, FSK 兩種,目前大部分是用 DTMF。DTMF 用來傳送發話者的電話號碼。
DTMF 台灣規格,在電話機鈴響前,傳送資料,開始碼 Start Bit 是 D,結束 Stop Bit 是 C,在資料傳送狀態下 (NIT: Number Information Transfer State),介於電話線路兩端之間的直流阻抗必須大於 9 M ohm,在資料訊息傳送完成後,終端設備要脫離資料接收狀態,隨電話鈴聲回到靜止狀態,電話號碼顯示的 DTMF 有一定的時序與時間。
Ta 為 DTMF 送訊息結束到第一聲鈴響之間的中段時間,長度約為 150 ~ 700ms。Tb 為傳送結束時,會到靜止狀態的時間,長度要小於等於 150ms。DTMF 資料傳送時間長度要 <= 3 秒。DTMF 每一碼的長度與間隔都會 >= 50ms,在 D 之前會有一個間隔時間 50 ~ 400 ms。
|
|
CID 傳送時機 |
電話號碼 |
時間日期 |
發話者名字 |
DTMF |
|
振鈴前 |
有 |
無 |
無 |
FSK |
V.23 |
極性反轉後振鈴前 |
有 |
有 |
SDMF 無, MDMF 有 |
FSK |
Bell 202 |
振鈴中第一個長停歇 |
有 |
有 |
SDMF 無, MDMF 有 |
FSK 用 V.23,但使用 Dual Tone Alerting Signal (DTAS) 取代極性反轉。
DTAS (2130 + 2750 Hz 100±10 ms) → 45 ~ 500 ms → FSK 訊息 → 200 ~ 500 ms → 振鈴
FSK 是採用美規 On Hook 資料傳送格式,但採用 Before Ringer 的傳送方法。
首先會發送 TAS (Tone Alerting Signal),時間長度 100 +- 10ms,頻率為 2130 Hz + 2750 Hz,誤差 +- 5%。信號位準是每一個音頻 -4 ~ -40 dBm,頻率位準差距最大為 6bB
TAS 後面是靜止 T1,約 45~500ms
T1 結束後,傳送 FSK Data。資料包含日期、時間、電話號碼,因為中文編碼定義問題,目前無法處理姓名
FSK Data 如下
後面是一個中斷時間 T2,長度 200 ~ 500ms,然後是振鈴訊號
從準備接收 FSK Data 到接收結束,起始動作時間長度 T3 <=45ms,結束動作時間長度 T4 <= 150ms。
ADSI
Analog Display Service Interface
ADSI 是 1992 年 12 月 Bellcore Client Company 定義,可用在電話終端與交換機之間的語音與資料傳送,也就是利用 PSTN 進行文字及語音的傳送,進而提供多項加值服務。
這就是 Type III ADSI
ADSI 話機是由 Voice, 警示音 CAS Tone, DTMF, FSK 四種訊號架構的通訊方式
References
FSK CID Format
Caller ID
Caller ID wiki
Caller ID晶片分析 2001年
Caller ID未來市場百家爭鳴 2001年
Frequency-shift keying (FSK) wiki
數位資料與類比訊號 FSK, ASK, PSK
電力線通訊系統
frequency shifting
來電顯示器
Caller ID/SMS