tts / app.py
3v324v23's picture
Add application file
a01d89e
raw
history blame
1.07 kB
import requests
import gradio as gr
import time
from IPython.display import Javascript, display
def get_public_ip():
response = requests.get('https://api.ipify.org?format=json')
return response.json()["ip"]
def keep_alive():
# Inject JavaScript to simulate minor interaction within the notebook
js_code = """
var element = document.querySelector('.output_scroll');
if (element) {
element.scrollBy(0, 10);
}
"""
return jsonify(js=js_code)
# Gradio interface with public IP and keepalive endpoint
iface = gr.Interface(
fn=[get_public_ip, keep_alive],
inputs=[],
outputs=["text", "json"],
title="Public IP Retriever (And Experimental Keep-Alive)",
description="Displays the approximate public IP address associated with this Colab notebook. The '/keepalive' endpoint might help prevent idle timeouts (use with caution)."
)
iface.launch(share=True)
# Initial interaction
display(Javascript("""
var element = document.querySelector('.output_scroll');
if (element) {
element.scrollBy(0, 10);
}
"""))