Skip to content

Phone widget issue when triggering automation / script with delay timer step #5572

@OtmShank751

Description

@OtmShank751

Home Assistant Android app version(s):

Android version(s): 7.0

**Device model(s):**Samsung S23

**Home Assistant version:**2025.7.1

**Last working Home Assistant release (if known):**N/A

**Description of problem, include YAML if issue is related to notifications:**Hello,
I have a few widgets set up on an android phone, to trigger automations / scripts.
One automation I have turns some lights on, has a delay of 30 minutes, and then turns the lights off again.
When I trigger the automation from the android widget, it runs the automation fine, but the widget reports that it fails.
I think it is waiting for some sort of response from the HA server that the automation is complete, but it doesn’t get one (within the timeout period) due to the delay step in the automation.
Just seeing if anyone else had noticed this and/or if it can be looked at?

The behavior is the same if triggering a Script with a delay

Thanks

Sam

Companion App Logs:

07-20 14:00:53.344 23632 23632 V BaseGlanceEntityWidgetReceiver: Received intent action = android.intent.action.SCREEN_ON for widget = 0 (io.homeassistant.companion.android.widgets.todo.TodoGlanceAppWidget) io.homeassistant.companion.android.widgets.todo.TodoWidget@fa502e0
07-20 14:00:53.344 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:53.344 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:00:53.344 23632 23632 D WM-WorkerWrapper: Starting work for io.homeassistant.companion.android.websocket.WebsocketManager
07-20 14:00:53.349 23632 23632 D ButtonWidget: Broadcast received: 
07-20 14:00:53.349 23632 23632 D ButtonWidget: Broadcast action: android.intent.action.SCREEN_ON
07-20 14:00:53.349 23632 23632 D ButtonWidget: AppWidgetId: -1
07-20 14:00:53.349 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:53.352 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:53.352 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:00:53.352 23632 23786 D ServerConnectionInfo: Using external URL
07-20 14:00:53.353 23632 23632 D MediaPlayerControlsWidget: Broadcast received: 
07-20 14:00:53.353 23632 23632 D MediaPlayerControlsWidget: Broadcast action: android.intent.action.SCREEN_ON
07-20 14:00:53.353 23632 23632 D MediaPlayerControlsWidget: AppWidgetId: -1
07-20 14:00:53.353 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:53.353 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:00:53.354 23632 23632 D ButtonWidget$updateAllWidgets: Updating all widgets
07-20 14:00:53.366 23632 23632 I AppWidgetManager: updateAppWidget() appWidgetIds = [9]
07-20 14:00:53.376 23632 23632 I AppWidgetManager: updateAppWidget() appWidgetIds = [12]
07-20 14:00:53.387 23632 23632 I AppWidgetManager: updateAppWidget() appWidgetIds = [14]
07-20 14:00:53.390 23632 23662 I WM-WorkerWrapper: Worker result SUCCESS for Work [ id=112ebdaf-3c90-439b-8bc4-cf3e4ac104b5, tags={ io.homeassistant.companion.android.websocket.WebsocketManager } ]
07-20 14:00:53.408 23632 23632 I VRI[WebViewActivity]@ecd424f: onDisplayChanged oldDisplayState=2 newDisplayState=2
07-20 14:00:53.416 23632 23632 I VRI[WebViewActivity]@ecd424f: onDisplayChanged oldDisplayState=2 newDisplayState=2
07-20 14:00:53.416 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:53.416 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:00:53.417 23632 23632 D WM-Processor: Processor 112ebdaf-3c90-439b-8bc4-cf3e4ac104b5 executed; reschedule = false
07-20 14:00:53.429 23632 23662 D WM-GreedyScheduler: Cancelling work ID 112ebdaf-3c90-439b-8bc4-cf3e4ac104b5
07-20 14:00:53.429 23632 23632 D SensorReceiverBase: Received intent: android.intent.action.TIME_TICK
07-20 14:00:53.431 23632 23662 D WM-SystemJobScheduler: Scheduling work ID 112ebdaf-3c90-439b-8bc4-cf3e4ac104b5Job ID 194496
07-20 14:00:53.439 23632 23796 I SensorReceiverBase$onReceive: Skipping faster update because not charging/different preference
07-20 14:00:53.910 23632 23786 I SensorReceiverBase: Sensor updates and sync completed
07-20 14:00:58.912 23632 23786 D ServerConnectionInfo: Using external URL
07-20 14:00:59.096 23632 23632 D SensorReceiverBase: Received intent: android.intent.action.SCREEN_OFF
07-20 14:00:59.097 23632 23632 D SensorReceiverBase: Sensor(s) [is_interactive] corresponding to received event android.intent.action.SCREEN_OFF are disabled, skipping sensors update
07-20 14:00:59.098 23632 23663 D WM-Processor: Processor cancelling 112ebdaf-3c90-439b-8bc4-cf3e4ac104b5
07-20 14:00:59.098 23632 23663 D WM-Processor: WorkerWrapper could not be found for 112ebdaf-3c90-439b-8bc4-cf3e4ac104b5
07-20 14:00:59.103 23632 23663 D WM-GreedyScheduler: Cancelling work ID 112ebdaf-3c90-439b-8bc4-cf3e4ac104b5
07-20 14:00:59.103 23632 23632 I VRI[WebViewActivity]@ecd424f: onDisplayChanged oldDisplayState=2 newDisplayState=1
07-20 14:00:59.106 23632 23663 D WM-SystemJobScheduler: Scheduling work ID 02ce2819-2ffa-4d68-bda6-c72d4730f17aJob ID 194497
07-20 14:00:59.110 23632 23632 V BaseGlanceEntityWidgetReceiver: Received intent action = android.intent.action.SCREEN_OFF for widget = 0 (io.homeassistant.companion.android.widgets.todo.TodoGlanceAppWidget) io.homeassistant.companion.android.widgets.todo.TodoWidget@fa502e0
07-20 14:00:59.110 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_OFF
07-20 14:00:59.113 23632 23663 D WM-GreedyScheduler: Starting work for 02ce2819-2ffa-4d68-bda6-c72d4730f17a
07-20 14:00:59.115 23632 23663 D WM-Processor: Processor: processing WorkGenerationalId(workSpecId=02ce2819-2ffa-4d68-bda6-c72d4730f17a, generation=0)
07-20 14:00:59.116 23632 23632 D ButtonWidget: Broadcast received: 
07-20 14:00:59.116 23632 23632 D ButtonWidget: Broadcast action: android.intent.action.SCREEN_OFF
07-20 14:00:59.116 23632 23632 D ButtonWidget: AppWidgetId: -1
07-20 14:00:59.116 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_OFF
07-20 14:00:59.118 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_OFF
07-20 14:00:59.119 23632 23632 D WM-WorkerWrapper: Starting work for io.homeassistant.companion.android.websocket.WebsocketManager
07-20 14:00:59.121 23632 23663 I WM-WorkerWrapper: Worker result SUCCESS for Work [ id=02ce2819-2ffa-4d68-bda6-c72d4730f17a, tags={ io.homeassistant.companion.android.websocket.WebsocketManager } ]
07-20 14:00:59.123 23632 23632 D MediaPlayerControlsWidget: Broadcast received: 
07-20 14:00:59.123 23632 23632 D MediaPlayerControlsWidget: Broadcast action: android.intent.action.SCREEN_OFF
07-20 14:00:59.123 23632 23632 D MediaPlayerControlsWidget: AppWidgetId: -1
07-20 14:00:59.123 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_OFF
07-20 14:00:59.125 23632 23632 D WM-Processor: Processor 02ce2819-2ffa-4d68-bda6-c72d4730f17a executed; reschedule = false
07-20 14:00:59.131 23632 23663 D WM-GreedyScheduler: Cancelling work ID 02ce2819-2ffa-4d68-bda6-c72d4730f17a
07-20 14:00:59.132 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_OFF
07-20 14:00:59.133 23632 23663 D WM-SystemJobScheduler: Scheduling work ID 02ce2819-2ffa-4d68-bda6-c72d4730f17aJob ID 194498
07-20 14:00:59.440 23632 23786 I SensorReceiverBase: Sensor updates and sync completed
07-20 14:00:59.783 23632 23632 I VRI[WebViewActivity]@ecd424f: onDisplayChanged oldDisplayState=1 newDisplayState=2
07-20 14:00:59.784 23632 23664 D WM-Processor: Processor cancelling 02ce2819-2ffa-4d68-bda6-c72d4730f17a
07-20 14:00:59.784 23632 23664 D WM-Processor: WorkerWrapper could not be found for 02ce2819-2ffa-4d68-bda6-c72d4730f17a
07-20 14:00:59.787 23632 23664 D WM-GreedyScheduler: Cancelling work ID 02ce2819-2ffa-4d68-bda6-c72d4730f17a
07-20 14:00:59.793 23632 23664 D WM-SystemJobScheduler: Scheduling work ID 251c7a4f-17d5-4b9c-956a-f1aa4199ee17Job ID 194499
07-20 14:00:59.794 23632 23664 D WM-GreedyScheduler: Starting work for 251c7a4f-17d5-4b9c-956a-f1aa4199ee17
07-20 14:00:59.794 23632 23664 D WM-Processor: Processor: processing WorkGenerationalId(workSpecId=251c7a4f-17d5-4b9c-956a-f1aa4199ee17, generation=0)
07-20 14:00:59.813 23632 23632 D SensorReceiverBase: Received intent: android.intent.action.SCREEN_ON
07-20 14:00:59.814 23632 23632 D SensorReceiverBase: Sensor(s) [is_interactive] corresponding to received event android.intent.action.SCREEN_ON are disabled, skipping sensors update
07-20 14:00:59.814 23632 23632 D WM-WorkerWrapper: Starting work for io.homeassistant.companion.android.websocket.WebsocketManager
07-20 14:00:59.816 23632 23659 I WM-WorkerWrapper: Worker result SUCCESS for Work [ id=251c7a4f-17d5-4b9c-956a-f1aa4199ee17, tags={ io.homeassistant.companion.android.websocket.WebsocketManager } ]
07-20 14:00:59.816 23632 23632 V BaseGlanceEntityWidgetReceiver: Received intent action = android.intent.action.SCREEN_ON for widget = 0 (io.homeassistant.companion.android.widgets.todo.TodoGlanceAppWidget) io.homeassistant.companion.android.widgets.todo.TodoWidget@fa502e0
07-20 14:00:59.816 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:59.817 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:00:59.817 23632 23632 D WM-Processor: Processor 251c7a4f-17d5-4b9c-956a-f1aa4199ee17 executed; reschedule = false
07-20 14:00:59.818 23632 23659 D WM-GreedyScheduler: Cancelling work ID 251c7a4f-17d5-4b9c-956a-f1aa4199ee17
07-20 14:00:59.819 23632 23632 D ButtonWidget: Broadcast received: 
07-20 14:00:59.819 23632 23632 D ButtonWidget: Broadcast action: android.intent.action.SCREEN_ON
07-20 14:00:59.819 23632 23632 D ButtonWidget: AppWidgetId: -1
07-20 14:00:59.819 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:59.819 23632 23659 D WM-SystemJobScheduler: Scheduling work ID 251c7a4f-17d5-4b9c-956a-f1aa4199ee17Job ID 194500
07-20 14:00:59.820 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:59.821 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:00:59.822 23632 23632 D ButtonWidget$updateAllWidgets: Updating all widgets
07-20 14:00:59.825 23632 23632 I AppWidgetManager: updateAppWidget() appWidgetIds = [9]
07-20 14:00:59.828 23632 23632 I AppWidgetManager: updateAppWidget() appWidgetIds = [12]
07-20 14:00:59.830 23632 23632 I AppWidgetManager: updateAppWidget() appWidgetIds = [14]
07-20 14:00:59.831 23632 23632 D MediaPlayerControlsWidget: Broadcast received: 
07-20 14:00:59.831 23632 23632 D MediaPlayerControlsWidget: Broadcast action: android.intent.action.SCREEN_ON
07-20 14:00:59.831 23632 23632 D MediaPlayerControlsWidget: AppWidgetId: -1
07-20 14:00:59.831 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:59.831 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:00:59.832 23632 23632 D AppWidgetProvider: onReceive:android.intent.action.SCREEN_ON
07-20 14:00:59.832 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:00:59.833 23632 23632 D SensorReceiverBase: Received intent: android.intent.action.TIME_TICK
07-20 14:00:59.835 23632 23783 I SensorReceiverBase$onReceive: Skipping faster update because not charging/different preference
07-20 14:01:00.501 23632 23632 D SensorReceiverBase: Received intent: android.intent.action.TIME_TICK
07-20 14:01:00.506 23632 23783 I SensorReceiverBase$onReceive: Skipping faster update because not charging/different preference
07-20 14:01:05.494 23632 23632 D ButtonWidget: Broadcast received: 
07-20 14:01:05.494 23632 23632 D ButtonWidget: Broadcast action: io.homeassistant.companion.android.widgets.button.ButtonWidget.CALL_SERVICE
07-20 14:01:05.494 23632 23632 D ButtonWidget: AppWidgetId: 14
07-20 14:01:05.494 23632 23632 D AppWidgetProvider: onReceive:io.homeassistant.companion.android.widgets.button.ButtonWidget.CALL_SERVICE
07-20 14:01:05.495 23632 23632 D ButtonWidget: Calling widget action
07-20 14:01:05.495 23632 23632 I AppWidgetManager: partiallyUpdateAppWidget() appWidgetIds = [14]
07-20 14:01:05.498 23632 23632 I VRI[WebViewActivity]@ecd424f: onDisplayChanged oldDisplayState=2 newDisplayState=2
07-20 14:01:05.498 23632 23632 D ButtonWidget$callConfiguredAction: Action Call Data loaded:
07-20 14:01:05.498 23632 23632 D ButtonWidget$callConfiguredAction: domain: script
07-20 14:01:05.498 23632 23632 D ButtonWidget$callConfiguredAction: action: phone_widget_going_to_work
07-20 14:01:05.498 23632 23632 D ButtonWidget$callConfiguredAction: action_data: {}
07-20 14:01:05.501 23632 23632 D ButtonWidget$callConfiguredAction: Sending action call to Home Assistant
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: Could not send action call.
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: io.homeassistant.companion.android.common.data.integration.IntegrationException: java.io.InterruptedIOException: timeout
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at io.homeassistant.companion.android.common.data.integration.impl.IntegrationRepositoryImpl.callAction(IntegrationRepositoryImpl.kt:308)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at io.homeassistant.companion.android.common.data.integration.impl.IntegrationRepositoryImpl$callAction$1.invokeSuspend(Unknown Source:15)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:98)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at android.os.Handler.handleCallback(Handler.java:959)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at android.os.Handler.dispatchMessage(Handler.java:100)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at android.os.Looper.loopOnce(Looper.java:257)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at android.os.Looper.loop(Looper.java:342)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at android.app.ActivityThread.main(ActivityThread.java:9634)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at java.lang.reflect.Method.invoke(Native Method)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:619)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:929)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: Caused by: java.io.InterruptedIOException: timeout
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at okhttp3.internal.connection.RealCall.timeoutExit(RealCall.kt:430)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at okhttp3.internal.connection.RealCall.callDone(RealCall.kt:392)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at okhttp3.internal.connection.RealCall.noMoreExchanges$okhttp_release(RealCall.kt:351)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp_release(RealCall.kt:216)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:530)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1156)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:651)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at java.lang.Thread.run(Thread.java:1119)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: Caused by: java.io.IOException: Canceled
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:70)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:126)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp_release(RealCall.kt:208)
07-20 14:01:35.512 23632 23632 E ButtonWidget$callConfiguredAction: 	... 4 more
07-20 14:01:35.523 23632 23632 I Toast   : show: caller = io.homeassistant.companion.android.widgets.button.ButtonWidget$callConfiguredAction$1.invokeSuspend:327 
07-20 14:01:35.527 23632 23632 I Toast   : show: isDexDualMode = false
07-20 14:01:35.527 23632 23632 I Toast   : show: contextDispId = 0 mCustomDisplayId = -1 focusedDisplayId = 0 isActivityContext = false
07-20 14:01:35.534 23632 23632 I AppWidgetManager: partiallyUpdateAppWidget() appWidgetIds = [14]
07-20 14:01:36.555 23632 23632 I AppWidgetManager: updateAppWidget() appWidgetIds = [14]
07-20 14:01:38.367 23632 23632 I VRI[WebViewActivity]@ecd424f: handleAppVisibility mAppVisible = false visible = true
07-20 14:01:38.369 23632 23632 I VRI[WebViewActivity]@ecd424f: stopped(false) old = true
07-20 14:01:38.369 23632 23632 D VRI[WebViewActivity]@ecd424f: WindowStopped on io.homeassistant.companion.android/io.homeassistant.companion.android.webview.WebViewActivity set to false
07-20 14:01:38.374 23632 23632 D WebViewActivity$onCreate: Matter/Thread step changed to NOT_STARTED
07-20 14:01:38.376 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:01:38.376 23632 23632 D ServerConnectionInfo: Using external URL
07-20 14:01:38.377 23632 23632 D IntegrationRepositoryImpl: isAppLocked(): false. (LockEnabled: false, appActive: false, expireMillis: 0, currentMillis: 1752984098377)
07-20 14:01:38.380 23632 23663 D WM-Processor: Processor cancelling 2d8cf90f-b03e-4078-bd14-b91361bb3df7
07-20 14:01:38.380 23632 23663 D WM-Processor: WorkerWrapper could not be found for 2d8cf90f-b03e-4078-bd14-b91361bb3df7
07-20 14:01:38.385 23632 23663 D WM-GreedyScheduler: Cancelling work ID 2d8cf90f-b03e-4078-bd14-b91361bb3df7
07-20 14:01:38.387 23632 23663 D WM-SystemJobScheduler: Scheduling work ID 5275161e-2187-4459-bff3-ea7aa494bf18Job ID 194501
07-20 14:01:38.393 23632 23663 D WM-GreedyScheduler: Starting tracking for 5275161e-2187-4459-bff3-ea7aa494bf18
07-20 14:01:38.396 23632 23663 D WM-ConstraintTracker: NetworkStateTracker24: initial state = NetworkState(isConnected=true, isValidated=true, isMetered=true, isNotRoaming=true)
07-20 14:01:38.396 23632 23663 D WM-NetworkStateTracker: Registering network callbac

Screenshot or video of problem:

Additional information:

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingwidget

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions