import gradio as gr get_window_url_params = """ function() { console.log(text_input, url_params); const params = new URLSearchParams(window.location.search); url_params = Object.fromEntries(params); return url_params; } """ with gr.Blocks() as demo: url_params = gr.JSON({}, visible=True, label="URL Params") chatbot = gr.Chatbot() msg = gr.Textbox() clear = gr.Button("Clear") def user(user_message, history): return "", history + [[user_message, None]] def bot(history): bot_message = random.choice(["Yes", "No"]) history[-1][1] = bot_message time.sleep(1) return history msg.submit(user, [msg, chatbot], [msg, chatbot], queue=False).then( bot, chatbot, chatbot ) clear.click(lambda: None, None, chatbot, queue=False) demo.load( None, inputs=None, outputs=url_params, _js=get_window_url_params ) demo.launch()