YouTube Vanced AutoPlay after being disconnected (not paused) from car bluetooth - Tasker Tips & Tricks

Hello,
I came across XDA in my various searches for Tasker and media related inquiries. I posted this originally on Reddit and got some replies and made some things happen but it seems I've hit a dead end. What I would like to do is have my YouTube Vanced auto restart playback when I am reconnected to my car. Depending on the sequence of things, at times, the application can be paused (with the play button visible in the mini-player) and other times it has a pause button displayed in the mini player and won't initiate playback after turning back on the car.
I've been able to follow this description left by a user on Reddit - which has allowed me to playback any "APM Policy Manager start and stop output". It works with the toast notification but alas if my car is turned off and I see the pause button and not the play button, it won't continue playback on connection. My car seems to send a disconnect message and therefore I see the pause button - my headphones seem to send a pause and therefore I see a play button on the mini-player if they are ever disconnected.
Initially we are acting on logcat messages - perhaps I thought about deciphering the difference between my car disconnect message and the headphone disconnect message but I am not sure. Here is the code to make this happen - anyone try the same thing?
XML:
Profile: LP-MEDIA-DETECT
Settings: Enforce: no Notification: no
Event: Logcat Entry [ Output Variables:* Component:APM_AudioPolicyManager Filter:startOutput() Grep Filter (Check Help):Off ]
Enter Task: media-DETECT
Settings: Run Both Together
A1: [X] Multiple Variables Set [
Names: %lp_media_apps
Variable Names Splitter: #
Values: youtube|maxmpz|newpipe|bbc.sound|kodi|mx|
Values Splitter: #
Max Rounding Digits: 3 ]
A2: Run Shell [
Command: dumpsys media_session
Timeout (Seconds): 0
Store Output In: %data
Use Global Namespace: On ]
A3: Variable Search Replace [
Variable: %data
Search: (?<=packages=).*?(?=\s)
Store Matches In Array: %app ]
A4: Stop [ ]
If [ %app1 !~R %lp_media_apps ]
A5: Variable Set [
Name: %LP_STATE
To: 1
Max Rounding Digits: 3 ]
A6: Variable Search Replace [
Variable: %app1
Search: .unlock
Replace Matches: On
Continue Task After Error:On ]
If [ %app1 ~R maxmpz ]
A7: Variable Set [
Name: %lp_media_app
To: %app1
Max Rounding Digits: 3 ]
If [ %app1 !~ (?i)%lp_media_app & %app1 ~R (?i)%lp_media_apps ]
A8: Flash [
Text: %app1
Tasker Layout: On
Background Colour: #FF000000 ]
EXIT
[MEDIA STOP] PROFILE it's the same profile name and other filter
Profile: LP-MEDIA-DETECT
Settings: Notification: no
Event: Logcat Entry [ Output Variables:* Component:APM_AudioPolicyManager Filter:stopOutput() Grep Filter (Check Help):Off ]
Enter Task: media-EXIT
Settings: Run Both Together
A1: Run Shell [
Command: dumpsys media_session
Timeout (Seconds): 0
Store Output In: %data
Use Global Namespace: On ]
A2: Variable Search Replace [
Variable: %data
Search: (?<=packages=).*?(?=\s)
Store Matches In Array: %app ]
A3: Stop [ ]
If [ %app1 !~R %lp_media_apps ]
A4: Variable Clear [
Name: %LP_STATE ]
A5: Stop [ ]
A6: [X] Flash [
Text: %app1
Continue Task Immediately: On
Dismiss On Click: On ]
Here is the Reddit link as well: YouTube Vanced - AutoPlay
I have had some success with making a task with Play (simulated) on %app1 etc... but %app1 can change to the display or .... LED cover if the screen is just opened on my phone... etc. I've even tried Open App, %app1, or YouTube Vanced... simulate play or toggle paused... no avail.
Can you intercept the bluetooth disconnect message in a logcat and block it? Or change it to something? Is Tasker the right tool for all automation ideas? I have tried MacroDroid, Automate... they seem more userfriendly but then I found myself left underwhelmed - perhaps my lack of experience and knowledge is the only factor.
Cheers,
Erik

Related

On/off sixaxis controller app

This profile starts and stop sixaxis controller app
When sixaxis is off it will start it
When is on it disable it in just one click
Required su and busybox
Can be combined with autonotification app
Sixaxis (2)
A1: Run Shell [ Command:su
ps | grep com.dancingpixelstudios.sixaxiscontroller | awk '{print $9}' Timeout (Seconds):20 Use Rootff Store Output In:%sixaxischeck Store Errors In: Store Result In: Continue Task After Errorn ]
A2: If [ %sixaxischeck Set | %sixaxischeck ~ com.dancingpixelstudios.sixaxiscontroller ]
A3: Run Shell [ Command:su
am stopservice com.dancingpixelstudios.sixaxiscontroller/.SixaxisService Timeout (Seconds):0 Use Rootff Store Output In: Store Errors In: Store Result In: ]
A4: AutoNotification Tiles [ Configuration:Tile: 2
Command: sixaxis
Label: DualShock3
Icon: android.resource://net.dinglisch.android.taskerm/hl_hardware_gamepad
State: 1 Timeout (Seconds):20 Continue Task After Errorn ]
A5: Wait [ MS:0 Seconds:3 Minutes:0 Hours:0 Days:0 ]
A6: Run Shell [ Command:su
am force-stop com.dancingpixelstudios.sixaxiscontroller Timeout (Seconds):0 Use Rootff Store Output In: Store Errors In: Store Result In: ]
A7: Variable Clear [ Name:%sixaxischeck Pattern Matchingff ]
A8: Else
A9: [X] Run Shell [ Command:su
am startservice com.dancingpixelstudios.sixaxiscontroller/.SixaxisService
fi Timeout (Seconds):0 Use Rootff Store Output In: Store Errors In: Store Result In: ]
A10: Send Intent [ Action: Cat:None Mime Type: Data: Extra: Extra: Extra: Package:com.dancingpixelstudios.sixaxiscontroller Class:com.dancingpixelstudios.sixaxiscontroller.SixaxisService Target:Service ]
A11: Variable Clear [ Name:%sixaxischeck Pattern Matchingff ]
A12: AutoNotification Tiles [ Configuration:Tile: 2
Command: sixaxis
Label: DualShock3
Icon: android.resource://net.dinglisch.android.taskerm/hd_hardware_gamepad
State: 2 Timeout (Seconds):20 Continue Task After Errorn ]
A13: End If
A14: Stop [ With Errorff Task:Sixaxis ]

Created a Tasker profile for continuous notification upon receiving SMS, how to Exit?

I have created below tasker profile to generate continuous notification with Flash on & off upon receiving a text message with word "Emergency" in it. It works perfectly however I cannot find a way to stop the sound, vibration and Flash light loop.
I tried to create a scene with TAP action = cancel alarm (disable any) but it just opens system's alarm app.
Please suggest a way to stop this loop. I created this profile so I do not miss any Important SMS page from work while sleeping.
P. S. = I used alarm as notification type because it will play even while my phone is set to silent profile (Device - oneplus 3T). If alert slider is set to silent only alarms are working.
Code:
Profile: SMS_Notif_911 (15)
Event: Received Text [ Type:SMS Sender:* Content:*Emergency* ]
Enter: PerotSound (12)
A1: Vibrate Mode [ Mode:eek:ff ]
A2: Ringer Volume [ Level:7 Display:eek:ff Sound:eek:ff ]
A3: Alarm Volume [ Level:7 Display:eek:ff Sound:eek:ff ]
A4: Notification Volume [ Level:7 Display:eek:ff Sound:eek:ff ]
A5: Media Volume [ Level:30 Display:eek:ff Sound:eek:ff ]
A6: Show Scene [ Name:PerotNotifStop Display As:Dialog, Dim Behind Horizontal Position:100 Vertical Position:100 Animation:System Show Exit Button:eek:n Show Over Keyguard:eek:n Continue Task Immediately:eek:n ]
A7: Play Ringtone [ Type:Alarm Sound:Rhythm Stream:4 ]
A8: Vibrate [ Time:200 ]
A9: Torch [ Set:eek:n ]
A10: Wait [ MS:753 Seconds:0 Minutes:0 Hours:0 Days:0 ]
A11: Torch [ Set:eek:ff ]
A12: Wait [ MS:500 Seconds:0 Minutes:0 Hours:0 Days:0 ]
A13: Goto [ Type:Action Number Number:7 Label: ]
The ringtone action can't be stopped, it runs autonomously (unless the "silence ringer" action works on your device).
So, I would use a Music Play action with the output stream set to alarm. Then in the scene, you can have a Music Stop action attached to a button in the scene. If you don't have a stop button in the scene, you need to add one.
There is also a variable "%PerotStop" that I added. It is set to "true" when the stop button is tapped and the GoTo action executes only if it's not true.
Notice that the GoTo doesn't go back to the Music Play action, but only back to cycle the vibrate and torch. It's not necessary to do more, just check the box to loop the music in the Music Play action.
Finally, after the GoTo stops executing, we clear the "%PerotStop" variable and it's ready for the next time.
Note: the [X] at action 7 shows that it's paused and won't run.
Code:
Profile: SMS_Notif_911 (179)
Event: Received Text [ Type:SMS Sender:* Content:*Emergency* ]
Enter: PerotSound (180)
A1: Vibrate Mode [ Mode: Off ]
A2: Ringer Volume [ Level:6 Display: Off Sound: Off ]
A3: Alarm Volume [ Level:7 Display: Off Sound: Off ]
A4: Notification Volume [ Level:7 Display: Off Sound: Off ]
A5: Media Volume [ Level:30 Display: Off Sound: Off ]
A6: Show Scene [ Name:PerotNotifStop Display As:Dialog, Dim Behind Horizontal Position:100 Vertical Position:100 Animation:System Show Exit Button: On Show Over Keyguard: On Continue Task Immediately: On ]
A7: [X] Play Ringtone [ Type:Alarm Sound:Cuckoo clock Stream:4 ]
A8: Music Play [ File:Ringtones/fur_elise_dubstep.mp3 Start:0 Loop: On Stream:4 Continue Task Immediately: On ]
A9: Vibrate [ Time:200 ]
A10: Torch [ Set: On ]
A11: Wait [ MS:753 Seconds:0 Minutes:0 Hours:0 Days:0 ]
A12: Torch [ Set: Off ]
A13: Wait [ MS:500 Seconds:0 Minutes:0 Hours:0 Days:0 ]
A14: Goto [ Type:Action Number Number:9 Label: ] If [ %PerotStop !~ true ]
A15: Variable Clear [ Name:%PerotStop Pattern Matching: Off Local Variables Only: Off ]
These are the actions that the stop button that is displayed in the scene should have. They are added on the "tap" tab within the element edit. Notice the final action of the stop button is to clear the scene.
Code:
A1: Variable Set [ Name:%PerotStop To:true Recurse Variables: Off Do Maths: Off Append: Off ]
A2: Music Stop [ Clear Dir: Off ]
A3: Destroy Scene [ Name:PerotNotifStop ]
"Good judgment comes from experience, and a lot of that comes from bad judgment." - Will Rogers
Thank you so much. It worked.
ktmom said:
The ringtone action can't be stopped, it runs autonomously (unless the "silence ringer" action works on your device).
So, I would use a Music Play action with the output stream set to alarm. Then in the scene, you can have a Music Stop action attached to a button in the scene. If you don't have a stop button in the scene, you need to add one.
There is also a variable "%PerotStop" that I added. It is set to "true" when the stop button is tapped and the GoTo action executes only if it's not true.
Notice that the GoTo doesn't go back to the Music Play action, but only back to cycle the vibrate and torch. It's not necessary to do more, just check the box to loop the music in the Music Play action.
Finally, after the GoTo stops executing, we clear the "%PerotStop" variable and it's ready for the next time.
Note: the [X] at action 7 shows that it's paused and won't run.
Code:
Profile: SMS_Notif_911 (179)
Event: Received Text [ Type:SMS Sender:* Content:*Emergency* ]
Enter: PerotSound (180)
A1: Vibrate Mode [ Mode: Off ]
A2: Ringer Volume [ Level:6 Display: Off Sound: Off ]
A3: Alarm Volume [ Level:7 Display: Off Sound: Off ]
A4: Notification Volume [ Level:7 Display: Off Sound: Off ]
A5: Media Volume [ Level:30 Display: Off Sound: Off ]
A6: Show Scene [ Name:PerotNotifStop Display As:Dialog, Dim Behind Horizontal Position:100 Vertical Position:100 Animation:System Show Exit Button: On Show Over Keyguard: On Continue Task Immediately: On ]
A7: [X] Play Ringtone [ Type:Alarm Sound:Cuckoo clock Stream:4 ]
A8: Music Play [ File:Ringtones/fur_elise_dubstep.mp3 Start:0 Loop: On Stream:4 Continue Task Immediately: On ]
A9: Vibrate [ Time:200 ]
A10: Torch [ Set: On ]
A11: Wait [ MS:753 Seconds:0 Minutes:0 Hours:0 Days:0 ]
A12: Torch [ Set: Off ]
A13: Wait [ MS:500 Seconds:0 Minutes:0 Hours:0 Days:0 ]
A14: Goto [ Type:Action Number Number:9 Label: ] If [ %PerotStop !~ true ]
A15: Variable Clear [ Name:%PerotStop Pattern Matching: Off Local Variables Only: Off ]
These are the actions that the stop button that is displayed in the scene should have. They are added on the "tap" tab within the element edit. Notice the final action of the stop button is to clear the scene.
Code:
A1: Variable Set [ Name:%PerotStop To:true Recurse Variables: Off Do Maths: Off Append: Off ]
A2: Music Stop [ Clear Dir: Off ]
A3: Destroy Scene [ Name:PerotNotifStop ]
"Good judgment comes from experience, and a lot of that comes from bad judgment." - Will Rogers
Click to expand...
Click to collapse

Auto reply to a particular person when received a specific phrases via WhatsApp

If that particular person whatsapp me eg. are you busy? Can WhatsApp auto reply to that person automatically?
Profile: Reply1 (8)
Cooldown: 5
Event: AutoNotification Intercept [ Configuration:Event Behaviour: true
Has Reply Action: true
Notification Apps: WhatsApp ]
Enter: Anon (9)
A1: Flash [ Text:Replying to %antitle Longff ]
A2: AutoNotification Query [ Configuration:Title: %antitle()
Text: are you busy? *
Has Reply Action: true Timeout (Seconds):20 ]
A3: Flash [ Text:Busy. Longff ] If [ %antitle() ~ person's name]

Media Control action is not executed during locked screen

Hey,
I've an issue with the "Media Control" action and I'm running out of ideas how to find or solve it.
I would like Deezer to start playing music when my headset or car unit is connected via bluetooth and the play command was sent.
Everything works fine when the screen is unlocked. But when the screen is locked, Deezer comes up but don't start playing music.
I added some "beeps" into the task to be sure that it's executed, and to determine were it maybe stops.
Code:
A1: Beep [ Frequency:8000 Duration:200 Amplitude:50 Stream:3 ]
A2: Browse URL [ URL:deezer://www.deezer.com/profile/[ID]?autoplay=true ]
A3: Beep [ Frequency:8000 Duration:200 Amplitude:50 Stream:3 ]
A4: Wait [ MS:0 Seconds:8 Minutes:0 Hours:0 Days:0 ]
A5: Turn On [ Block Time (Check Help):500 ]
A6: Beep [ Frequency:8000 Duration:200 Amplitude:50 Stream:3 ]
A7: Media Control [ Cmd:Play [Simulated Only] Simulate Media Button:eek:n Package/App Name:Deezer Use Notification If Available:eek:ff ]
A8: Beep [ Frequency:8000 Duration:200 Amplitude:50 Stream:3 ]
I can hear all four beeps. The Tasker log shows no error.
Same issue with an third-party action of "Hue Essentials". I would like to enable some devices when I'm coming home. Everything works fine when the screen is unlocked. But as soon as the screen is locked, Hue Essential is telling me that it can't reach the Hue bridge. This is not an Tasker issue for sure. But I guess the reason could be the same as why Tasker can't execute the "Play" command when the screen is locked.
Any ideas, folks?
Jas
Seems that I've found the solution by myself
The main issue was that Deezer was not able to register the MediaButtonReceiver for itself when the screen is locked. so if I connected my mobile phone to the car, and I used another media app like YouTube before, Tasker started Deezer, but Deezer was not able to register the MediaButtonReceiver. The BT command "Play", which is send by the car unit, was received by the last registered media app (e.g. YouTube) then.
I tried to set the secure setting value with Tasker by executing "settings set secure media_button_receiver [VALUE]". But this did not solved the issue.
In the end it was Androids battery optimization for Deezer which I had to disable to get my task running. Now Deezer comes up and starts to play music when my mobile phone is connected to my car via BT.
I added a check for the MediaButtonReceiver value to prevent the start of Deezer again and again, when I just had a few short stops.
Code:
A1: Run Shell [ Command:settings get secure media_button_receiver Timeout (Seconds):5 Use Root:eek:n Store Output In:%media_button_receiver Store Errors In: Store Result In: ]
A2: If [ %media_button_receiver !~ *deezer.android.app* ]
A3: Browse URL [ URL:deezer://www.deezer.com/profile/[ID] ]
A4: Wait [ MS:0 Seconds:5 Minutes:0 Hours:0 Days:0 ]
A5: Media Control [ Cmd:Play [Simulated Only] Simulate Media Button:eek:n Package/App Name:Deezer Use Notification If Available:eek:ff ]
A6: End If

My variable profile isn't active but it is when I add it to a task?

I've been using Tasker for awhile but I'm not too tech savvy so I thought I had this right but it isn't working. I basically want the sound on my phone to mute when I turn off my earbuds in certain situations. 1 of the situations I want it to turn off is when I am at home, during the week, after 6pm. I made a variable with those 3 in it called Weekdays. So I set the exit variable task If the weekday variable is set to mute my phone. When I look at the actual variable profile right now it is red, which it should be because it is not past 6pm. But when I put the variable in the task it is showing green as if it is active. Am I doing something wrong?
Here is the Weekday variable I set up 1st.
Profile: Weekdays (102)
Restore: no
Day: Mon, Tue, Wed, Thu or Fri
Time: From 6:00PM Till 6:30AM
State: Variable Value [ %ParadiseTrail Set ]
Enter: Weekdays After 6 (101)
A1: Variable Set [ Name:%Weekdays To:1 Recurse Variablesff Do Mathsff Appendff Max Rounding Digits:3 ]
Exit: Anon (106)
A1: Variable Clear [ Name:%Weekdays Pattern Matchingff Local Variables Onlyff Clear All Variablesff ]
This is the earbud profile.
Profile: Sound On With (47)
State: BT Connected [ Name:MDR-XB950BT/TOZO-NC9 Address:10:4F:A8:63:47:41/54:B7:E5:62:07:65 ]
Enter: Sound On (67)
A1: If [ %VOLN = 0 ]
A2: Sound Mode [ Mode:Sound ]
A3: Notification Volume [ Level:7 Displayff Soundff ]
A4: Ringer Volume [ Level:7 Displayff Soundff ]
Exit: Sound Off After 6pm (99)
A1: If [ %Weekdays Set ]
A2: Sound Mode [ Mode:Mute ]
A3: Else If [ %ParadiseTrail Set & %DAYW eq Saturday | %DAYW eq Sunday ]
A4: Sound Mode [ Mode:Mute ]

Categories

Resources