1 Call的基本知識

2021-06-04 20:22:33 字數 3621 閱讀 8611

call的基本知識

call就是平時我們常用的通話功能,最基本的就是來電incomingcall,撥打**outgoingcall,一般來說撥打一方成為主叫方,接聽方為被叫方。call模組常用的一些名詞有:

dialingcall

撥打一路**,對方尚未接聽,主叫方等待被交接聽的時候的狀態即為dialing狀態

activecall

啟用通話:雙方正在進行的正常的通話

holdcall

保持通話:即將當前通話掛起,雙方不管主叫還是被叫方都聽不到對方的聲音

mutecall

靜音:靜音後對方聽不到靜音發起方的聲音,但是靜音發起方能聽到對方的聲音

waitingcall

正在通話過程中,第三方**撥打進來,第三方對於當前正在通話的使用者來講就是waitingcall等待接進來的**

endall

結束通話

autoredial

自動重撥:此項功能一般在callsetting當中會讓使用者選擇開啟或是關閉,如果開啟,則裝置首次呼叫失敗後,一般會自動再次撥打該號碼,一般可自動重撥7次,也有可能更多,且前兩次自動重撥的間隔時間較短,後面幾次則較長

quickdial

快速撥號:即在callsetting中設定乙個按鍵(一般為數字鍵)的對應乙個常用的號碼,在idle介面長按該按鍵就可顯示出該號碼,並且可以正常撥打出去

answermode:

應答模式:是使用者對來電的接聽方式,預設情況下一般按接聽鍵可以接聽。在callsetting中一般會有此選項,使用者可以自由選擇。

自動應答:一般響鈴5秒鐘左右,**自動接通

按任意鍵應答:除結束通話鍵和power鍵之外的任意鍵可接聽來電

call的一些常見業務型別:

callwaiting

呼叫等待:此項功能需要運營商支援並開通,一般卡都支援此項功能並且運營商預設開通,一般手機在callsetting裡面會有一項開啟或關閉此項功能的選項,使用者可以自由選擇。如使用者設定了呼叫等待,則可實現在通話時,若有第三方呼入,會有提示音和提示畫面,此時可以選擇接聽,拒絕或是忽略該呼叫。如果選擇接聽第三方來電,則原通話將會被保持而不會被結束通話,當然也可以選擇接聽並結束通話原通話。如果拒絕,則會結束通話第三方通話,原通話不受影響。

callforwarding

來電轉駁:來電轉駁是將來電轉接到其他**上的一種功能,需要運營商支援和開通,並非所有sim/usim卡都有此項功能,轉移的號碼可以是手機號碼也可以是固定**號碼,具體包括:

無條件轉移:即任意來電都將被轉移到設定好的好馬上去

無應答轉移:若來電無應答,一段時間(由網路段決定這個時間段的長短,一般是25秒左右)後,**將被轉移到設定好的**號碼上去

無法接通轉移:無**無法接通(比如關機,無訊號等)時,**將被轉移到設定好的**號碼上去

佔線中轉移:若**正在通話中,再呼入一路**,這路**將被轉移到設定好的**號碼上去

callbarring

呼叫限制:呼叫限制是對撥出或來電認為做出一些限制,以限制**的撥出或者呼入。此功能並非所有的sim/usim卡都支援,據我了解,目前只有開通了國際通話功能的中國移動旗下的全球通卡支援此項功能。具體包括:

所有呼出:手機將無法呼出任何**,一般會有呼叫被限制的提示

所有來電:手機將不能接入任何來電

所有國際呼出:不能撥打任何境外**

所有國際來電:任何國際來電將不能被接入

僅限本地呼入呼出:所有本地呼入撥出將被禁止

multi-party

多方通話(並非所有的卡都支援此功能):多方通話的前提條件是此卡必須支援呼叫等待並且呼叫等待功能必須開啟。

當在通話過程中,再來一路通話,此時將第三方**接起後形成多方通話,此時原來的那路通話被掛起(即在保持hold狀態),此時這路被保持的通話將聽不到這邊的任何聲音,新來的**被接進來即為啟用狀態,保持和啟用狀態可以互相切換。所以一般多方通話會有乙個選單選項裡面包含:靜音,保持/啟用,加入會議通話,結束通話當前,結束通話保持等跟call相關的選項。

多方通話當中還包含會議通話:當存在多方通話時可選擇加入**會議,加入**會議的各方均能互相聽到彼此間的聲音,可進行多方會談。**會議的選單選項一般包括:加入/退出**會議(選擇任意乙個成員),靜音,**會議成員列表,結束通話全部,結束通話某一路程遠等,若結束通話全部,則會逐一出現每個**的結束通話介面,**會議的時間以最早建立的時間為準。多方通話包括會議通話最大支援七路通話,**會議也有人數限制,運營商不同最大人數也不同,當達到最大限制時將無法加入**會議。

call的處理狀態

乙個phone有且僅有三個call,分別是ringcall,forgroundcall以及backgroundcall,可以簡單的理解為每個call對應四種狀態(此處暫不去關心三種call之間的狀態區別)ring,active, hold,idle,同一時刻三個call只能有乙個ring狀態(ringcall),乙個active狀態(forgroundcall),乙個hold狀態(backgroundcall),可以同時有三個idle狀態。所以涉及到call不同狀態間如何切換的問題。

android中對單卡情況的處理:

1.當有ringcall時,不允許hold和active切換;

2.既有ringcall,又有holdcall時,結束通話ringcall會連帶holdcall一起結束通話。

3.同時有activecall和holdcall,結束通話時先掛activecall再掛hold call

其實在我們的**中,確切的來說不是call而是connection的概念。ringcall只能建立一路connection,而forgroundcall和backgroundcall則可以同時建立多路connection,尤其是又多方通話或者是會議通話的時候,三種狀態最多可同時建立七路connection。

面試總結(1)call和apply的區別。

介紹 1.相同點 改變this的指向。2.區別 傳值的方式不一樣。call obj,arg1,arg2,arg3 通過呼叫call 方法,在傳第乙個引數的時候,函式裡的this指向第乙個引數。從第二引數起依次傳入給函式的引數值。call實現方法 過程思考 1.首先是所有的函式都可以呼叫call,說明...

Linux基本知識(1)

1.有關控制台切換命令 linux 提供了六個虛擬控制台,用 alt f1 f6 切換 在 x window 下用 crtl alt f1 f6 切換 2.chown命令 chown 改變檔案所有權 命令 chown change owner 格式 chown username filename c...

tensorflow基本知識1

1 使用圖 graphs 表示計算任務。在被稱之為會話 session 的上下文 context 中執行圖 使用tensor表示資料 通過變數 variable 維護狀態 使用feed和fetch可以為任意的操作賦值或者從其中獲取資料 2 tensorflow是乙個程式設計系統,使用圖 graphs...