#!/usr/bin/env python3
"""
Launch a patient-specific avatar session.
Opens a browser with the avatar page preloaded with patient context.
"""

import sys
import webbrowser
import urllib.parse

def launch_patient_session(phone_number: str, port: int = 3000):
    """
    Launch avatar session for a specific patient.

    Args:
        phone_number: Patient's phone number (e.g., "(213) 930-3541")
        port: Port where the HTML page is served (default: 3000)
    """
    # URL encode the phone number
    encoded_phone = urllib.parse.quote(phone_number)

    # Construct the URL
    url = f"http://localhost:{port}/test-avatar.html?phone={encoded_phone}"

    print(f"Launching avatar session for patient: {phone_number}")
    print(f"Opening: {url}")

    # Open in default browser
    webbrowser.open(url)

    print("\nSession launched!")
    print("The avatar will load with patient context from FHIR.")
    print("After the call ends, the transcript will be saved and EMR will be updated.")

if __name__ == "__main__":
    if len(sys.argv) < 2:
        print("Usage: python launch_patient_session.py <phone_number> [port]")
        print("\nExamples:")
        print("  python launch_patient_session.py '(213) 930-3541'")
        print("  python launch_patient_session.py '555-1234' 8080")
        sys.exit(1)

    phone = sys.argv[1]
    port = int(sys.argv[2]) if len(sys.argv) > 2 else 3000

    launch_patient_session(phone, port)
