Zoom, Teams 및 기타 기본 앱의 https URI를 열 때 브라우저 페이지 건너뛰기

Zoom, Teams 및 기타 기본 앱의 https URI를 열 때 브라우저 페이지 건너뛰기

Android에는 편리한 기능이 있습니다. 연결된 기본 앱과 함께 설치된 특정 https 링크는 브라우저 페이지를 건너뛰고 해당 앱에서 직접 열 수 있습니다. Linux에서 이를 어떻게 달성합니까?

내 컴퓨터에 Zoom이 설치되어 있습니다. 누군가 https://zoom.us/j/NNNN나와 링크를 공유하고 Thunderbird에서 해당 링크를 클릭하면 해당 링크가 xdg-open으로 전달됩니다. Xdg-open은 URI 체계 "https"를 보고 기본 브라우저를 시작합니다. 브라우저는 이 URI로 이동하여 이 URI를 다른 URI로 변환하는 기능만 수행하는 페이지를 표시합니다 zoommtg://zoom.us/join?confno=NNNN. 이 새로운 URI는 Zoom을 시작하는 xdg-open으로 전달됩니다.

지금까지 준비된 해결책을 찾을 수 없습니다. URI 스키마를 넘어서는 스크립트를 상상했습니다. 예를 들어 로 시작하는 매개변수를 받으면 핸들러가 구성되었는지 https://zoom.us/j/확인하고 zoommtg, 이 경우 URI 자체를 다시 작성하여 핸들러에 전달합니다. 인기 있는 시나리오의 수가 제한되어 있으므로 이러한 스크립트는 유지 관리가 비교적 쉬워야 합니다.

이 스크립트는 xdg-open의 래퍼 또는 https 링크의 처리기로 사용할 수 있습니다.

기껏해야 이 작업을 수행할 수 있는 기존 소프트웨어에 대한 링크가 있기를 바랍니다. 나는 개인적인 용도로만 스크립트를 작성하고 싶지 않습니다. 그러한 소프트웨어가 아직까지 존재하지 않는다면, 출시를 목표로 이식 가능한 방식으로 구현하자는 제안을 환영합니다.

답변1

마지막으로 나는 내 자신의 것을 출시했습니다.기본 애플리케이션에서 URI 열기. 짧은 bash 스크립트와 데스크탑 파일.

다음은 https 링크 핸들러로 설정할 스크립트의 일부입니다.

#!/usr/bin/env bash
URI=$1
if [[ $URI =~ ^https://zoom.us/j/ ]]; then
  ZOOM=$(xdg-mime query default x-scheme-handler/zoommtg)
  if [[ -n $ZOOM ]]; then
    NEW=$(echo $URI | sed -E 's@https://zoom.us/j/@zoommtg://zoom.us/join?confno=@; s@\?pwd=@\&pwd=@')
    gtk-launch $ZOOM $NEW
    exit 0;
  fi
fi
BROWSER=$(xdg-mime query default x-scheme-handler/http)
gtk-launch $BROWSER $URI

관련 정보