跳至主要內容

電話呼入呼出回調訊息

聲明

thread.register_event("xxtouch.call_callback", function(val)
if (val == "in") then
-- 有電話呼入
elseif (val == "out") then
-- 有電話呼出
elseif (val == "disconnected") then
-- 電話被掛斷
end
end)

狀態

  • in
    • 來電呼入時,以 xxtouch.call_callback 標識的行程隊列詞典會推入該值
  • out
    • 呼出電話時,以 xxtouch.call_callback 標識的行程隊列詞典會推入該值
  • disconnected
    • 來電或去電掛斷時,以 xxtouch.call_callback 標識的行程隊列詞典會推入該值

說明

收到系統電話呼入或呼出訊息時,該訊息標識的行程隊列詞典會推入一個狀態

範例

-- 清空消息隊列
proc_queue_clear("xxtouch.call_callback")
--
sys.toast("脚本从现在开始监听来电事件,二十秒后取消监听")
--
-- 開始建立監聽回調
local eid = thread.register_event("xxtouch.call_callback", function(val)
if (val == "in") then
sys.toast("来电话了")
elseif (val == "out") then
sys.toast("正在打电话出去")
elseif (val == "disconnected") then
sys.toast("电话挂断了")
end
end)
--
sys.msleep(20000) -- 等待 20 秒
--
-- 反註冊回調函數,如果不反註冊監聽,那麼腳本不會在此結束
thread.unregister_event("xxtouch.call_callback", eid)

:上述代碼中使用了非本章函式 sys.toastsys.msleepproc_queue_clearthread.register_eventthread.unregister_event