Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

One-Tap FaceTime → Linux Laptop

Tap a single Shortcut tile on your iPhone →
the FaceTime link is e‑mailed to you → ftwatch.py service on your Linux laptop
notices, opens the call in Chrome, types your display name, and waits for you.

📲 Install the “FaceTime Share” iOS Shortcut

  1. On your iPhone (or iPad), tap the link below:
    ➕ Add the Shortcut

  2. If you haven’t enabled third-party shortcuts before, iOS shows
    Settings ▸ Shortcuts ▸ Allow Untrusted Shortcuts.
    Toggle it on, then return to Safari and tap Add Shortcut again.

  3. The shortcut now appears in the Shortcuts app, ready on your Home Screen’s Share Sheet.

One tap shares the current FaceTime link to your Gmail inbox (subject ft),
where ftwatch.py service on your Linux laptop will pick it up automatically. Carrying the shortcut to the top of the Share Sheet always helps. Can tweak it to concatanate a passcode to the url to have extra security against CSRF or DDOS especially if the script is used as background service.


0 · My iPhone Shortcut (share sheet → Gmail)

  1. Create Shortcut → Receive Any Input → Share Sheet Types: URLs
  2. Get Details of URL → unused (keeps URL object)
  3. Send Email
    • Recipient: your own Gmail address
    • Subject: ft (exact, lower‑case, no spaces)
    • Body: Shortcut Input (the FaceTime link)
  4. Add to Home Screen (optional)—one tap sends the mail.

1 · Requirements on Linux

Package Why Fedora Ubuntu / Debian
Python ≥ 3.9 run the watcher pre‑installed sudo apt install python3
google‑chrome‑stable
(or chromium)
FaceTime Web + WebRTC sudo dnf install google-chrome-stable download .deb or sudo apt install chromium-browser
xdotool send Tab *name* Tab Enter keys sudo dnf install xdotool sudo apt install xdotool
systemd‑user keep script alive across reboots already included already included

Wayland note – the script launches Chrome with
--ozone-platform=x11, so the window is X‑Wayland and xdotool can drive it.


2 · Set your credentials

Open ftwatch.py and edit:

EMAIL_ADDR   = "you@example.com"
APP_PASSWORD = "xxxx xxxx xxxx xxxx"   # 16‑char Gmail app password

(Generate an App Password at https://myaccount.google.com/apppasswords if you use 2‑factor auth.)


3 · Adjust the service installer

addService.sh (or install-ftwatch.sh) contains two absolute paths:

PYTHON_BIN="/usr/bin/python3"
FTWATCH_PY="/home/YOU/Documents/main/Projects/FaceTime/ftwatch.py"

Make sure FTWATCH_PY matches the real location of the file.


4 · Install & start the service

bash addService.sh
systemctl --user status ftwatch.service

The watcher now starts automatically at every login and keeps running through suspend/hibernate cycles.


5 · (Alternative) Manual alias

alias ft='nohup python3 "/home/path/to/dir/FaceTime/ftwatch.py" >/dev/null 2>&1 &'

ft then starts one detached instance in the current session.


Known issues & tips

  • Remote Desktop portal prompt – Wayland security requires you click “Allow Remote Interaction → Share” each time; cannot be auto‑approved.
  • Keystrokes – xdotool only works because Chrome runs under X‑Wayland.
  • Battery – current loop (0.1 s) ≈ 0.1 % per hour or (0.5 s) ≈ 0.02 % per hour; switch to IMAP IDLE for near‑zero.
  • State reset – delete fturl_state.json to re‑process old mails.
  • Multiple instances – use the systemd service; aliases can spawn duplicates.

Enjoy one‑tap FaceTime migration!

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages