Linux-Mint

如何將 yate 設置為我的預設 tel: 協議處理程序?

  • January 29, 2018

這個網站上,我點擊了支持連結,然後彈出了一個電話號碼。它是通過協議格式化的tel:,因此像網路連結一樣帶有下劃線和突出顯示。在我的手機上,點擊這樣的連結會打開我的預設撥號器並撥打電話。

當連結未通過此協議格式化時,我的瀏覽器的 Google 語音外掛通常會自動檢測電話號碼並讓我有機會通過 Google 語音撥打電話。如果我也可以為tel:格式化的數字執行此操作,那就太好了,或者更好,因為我並不總是打開語音會話,設置tel:格式化的數字由yate.

如何修復瀏覽器對tel:協議連結的處理,使其在yate或Google語音中打開?

  • 在 Chromium 中,我收到一條警告說 xdg-open 將用於處理連結,但是當我點擊“啟動應用程序”時沒有任何反應。
  • 在 Firefox 中,點擊該連結會將我帶到一個空白頁面,其 url 為 tel:18003744432
  • 在 Konqueror 中點擊連結會產生此錯誤:
Access by untrusted page to tel:18003744432 denied.

我正在使用 Linux Mint 16 KDE x64。

感謝Ignacio Vazquez-Abrams用 mimetype 處理程序為我指明了正確的方向。

我最終創建了一個簡單的桌麵條目來打開環聊中的連結。我認為這個位置會因發行版而異,但對我來說這是有效的(我在 Ubuntu GNOME 16.04 上)。這只是將tel:號碼轉換為告訴環聊撥打電話的 URL,並讓我們xdg-open處理它,以便它在您的預設瀏覽器中打開。

~/.local/share/applications/mimeapps.list

[Added Associations]
x-scheme-handler/tel=hangouts.desktop

~/.local/share/applications/hangouts.desktop

#!/usr/bin/env xdg-open
[Desktop Entry]
Exec=bash -c 'xdg-open "https://hangouts.google.com/?action=chat&pn=${0//tel:/}"' %u
Terminal=false
Type=Application

為了解釋程式碼,它將%u(將是tel:連結)作為參數傳遞到內聯 bash 腳本中$0。然後從它的前面${0//tel:/}剝離tel:,留下數字。然後,該號碼將傳遞到環聊 URL。

引用自:https://unix.stackexchange.com/questions/118793