HomePod: Apple Music za Nepodržane
(1 korsinik/a gleda/ju temu) (1) Gost

HomePod: Apple Music za Nepodržane


04.03.2020 | 19:18
Bilo bi nepošteno HomePod u Hrvatskoj nazvati "poluproizvodom" - jer je bez podrške za Apple Music (i buduće dobre volje korisnika da tu uslugu plaća) sveden samo na "simpatičan zvučnik". O vrijednosti za novac nećemo, ali kada ujutro na "Hey, Siri, play something" Siri uzvrati sa nekom od varijacija fraza na "Your music library is empty", ne želite da se dan po jutru poznaje.

Dobra vijest (po mene) je da me Apple Music i tako ne zanima. Ono što me zanima je da HomePod ujutro, kad mu se obratim, svira radio po mom izboru. U 2020. godini to ne zvuči kao sci-fi želja razmaženog korisnika. Ali se Apple potrudio da bude jednako nemoguće.

Kako "nemoguće" ne ulazi u top 10 mojih omiljenih riječi, zainatio sam se i odlučio pronaći način da to ipak (nekako) radi. Pa, prije nego mi izvjetri (a hoće), pišem ovdje proceduru za sve kojima bi mogla dobro doći.

Od sastojaka su potrebni barem 1 HomePod i 1 Mac koji se može spojiti na HomePod putem AirPlaya. Vegeta nije potrebna. U mojem slučaju radi se o Mac Miniju koji vrti Mojave. Prije nego me netko pita zašto izvodim cijelu zavrzlamu preko HomePoda umjesto da isključim Siri na HomePodu i uključim je na Macu: zato. OK, to smo riješili.

Ideja je jednostavna: na Macu pokrenem iTunes, u njega, u jednu playlistu, dodam streamove različitih radio postaja (koje želim slušati), spojim ga preko AirPlaya na HomePod i kažem HomePodu "Hey Siri, Play". Radi! Kažem Siri da pauzira, stopira ili ušuti. Radi. Kažem da ponovo playa. Radi. Odlično, problem riješen. Mogu na spavanje uz "Hey Siri, turn off after one hour" (kad već ne može sama zaključiti kad sam zaspao - kompromisi, kompromisi...).

Jutro. Ptičice. "Hey Siri, play". "Your music library is empty". Aaaargh!

Da ne opisujem kako smo Siri i ja dugim noćnim razgovorima došli do zaključka u čemu je problem, TL;DR: kad HomePod pauzira/zaustavi playanje u iTunesima ("Hey Siri, stop") AirPlay konekcija (Mac <> HomePod) ostaje aktivna sljedeće 3 minute (uz napomenu da Apple "možda" mijenja ovu vrijednost sa apdejtima HomePodovog OS-a), a u scenariju kada HomePod prekida play na timer (pa makar to bilo sa "Hey Siri, turn off after one second"), konekcija se prekida odmah - tako prekinuta konekcija je vidljiva u iTunesima: AirPlay ikona (koja je plava tijekom aktivne konekcije) ponarančasti. No, boja ikone nije pouzdan indikator jer u prvom scenariju (trenutni stop/pauza) 3 minute nakon što se prekine konekcija - ikona ostane plava. Pa se ti misli što se (zapravo) dogodilo.

Zavrzlamu je moguće riješiti s 3 različite skripte (po cijeni jedne i uz set besplatnih noževa!), odgovarajuće konfiguriranje iTunesa i poštivanje "protokola za laku noć" (u nastavku: PZLN).

Konfiguriranje iTunesa je jednostavno. Kreiramo DVIJE playliste. Ja kao prvu koristim defaultnu "Internet Songs" i u njoj držim odabrane radio postaje - nije bitno kako se zove (playlista), bitno je da su u njoj SAMO radio postaje koje želite slušati odnosno "prebacivati" koristeći voice control HomePoda. Druga playlista se u mom slučaju zove "Silence" i u njoj je SAMO custom generirani wav tišine u trajanju od 10 sekundi, prethodno kreiran u Audacityu i snimljen pod nazivom "silence_10s.wav". Zadnji korak je kliknuti na AirPlay ikonu, ISKLJUČITI "Computer" i UKLJUČITI samo HomePod (u mom slučaju zove se "Living Room" jer ga, pogađate, držim u kuhinji). Ne škodi usputno podesiti željenu "noćnu glasnoću" (za "Living Room").

Spomenuti PZLN podrazumijeva da prije spavanja učitam iTunes i kliknem na radio postaju koju želim slušati dok ne utonem u san. S obzirom da je AirPlay konekcija aktivna dok god iTunesi sviraju, na raspolaganju su mi voice komande tipa "Hey Siri, next song" ili "Hey Siri, shuffle". Apple Music za Nepodržane, here we come!

Sad se moramo pobrinuti da ne puca ljubav između HomePoda i iTunesa kad utihne mala noćna muzika. U tu svrhu utipkamo/kopipejstamo ovo u AppleScript Editor i snimimo kao WakeHomePod.scpt (u mom slučaju u ~/Applications/):

if application "iTunes" is running then
    tell application "iTunes"
        if player state is not playing then
            set newAirplayDevice to (get some AirPlay device whose name is "Living Room")
            set current AirPlay devices to {newAirplayDevice}
            play track "silence_10s" of playlist "Silence"
            delay 5
            play track "Laganini FM" of playlist "Internet Songs"
            pause
        end if
    end tell
end if

Gornja skripta prvo provjeri da li je iTunes učitan. Ako nije, znači da nismo ispoštovali PZLN i skripta nas može ignorirati. Ako jesmo, skripta provjeri da li iTunes svira - ako svira, ljubav HomePoda i iTunesa traje pa možemo pustiti golubiće na miru. No, ako je iTunes dignut, ali NE svira, vrijeme je za afrodizijak: prvo identificiramo koji AirPlay "device" nosi ime našeg HomePoda (u mom slučaju "Living Room") i preusmjerimo AirPlay na njega. Na žalost, HomePod ima čvrst san i ovo ga neće probuditi. Probudit će ga tišina (ranije spomenuti "silence_10s.wav") - jer bi sve drugo probudilo nas. Naime, kad budimo HomePod, ne dopušta nam prethodno podesiti glasnoću. Zato playamo 10 sekundi tišine (što je fantastična upotreba zvučnika!), ali prekidamo nakon 5. Čemu razlika? Zato jer HomePodu treba "nekoliko" sekundi da se probudi - nekad jedna, nekad tri, ali (u mojim testovima) nikad više od četiri - pa sam stavio pet jer volim okrugle brojke. Nakon pet sekundi prebacimo track na onaj s kojim se želimo probuditi (besplatna reklama za "Laganini FM"!) i ODMAH pauziramo - to se dovoljno brzo dogodi da HomePod ne uspije ni pisnuti. Sad možemo reći "Hey Siri, play" i - svirat će.

Zapravo neće još - odnosno neće ujutro. Jer je konekcija koju smo upravo uspostavili živa samo 3 minute (nakon što se izvršila pauza).

Zato moramo gornju skriptu pokretati svake tri minute. Ne želimo gornju skriptu pokretati SVAKE 3 minute. Ne želimo nijedan AppleScript pokretati svake 3 minute jer troši CPU kao da ne postoji sutra. Zato nećemo direktno pokretati gornju skriptu nego ćemo pokretati skriptu koja pokreće skriptu. Ovoga puta Bash skriptu koju možemo snimiti (pod imenom WakeHomePod.sh) u isti folder gdje smo prethodno snimili WakeHomePod.scpt:

#!/bin/sh
currenttime=$(date +%H:%M)
if [[ "$currenttime" > "06:00" ]] && [[ "$currenttime" < "11:00" ]]; then
    osascript ~/Applications/WakeHomePod.scpt
fi

Bash skripta, svaki put kad je pokrenemo, očita aktualno vrijeme u formatu "00:00" (bez navodnika) i provjeri da li je vrijeme između zadanog (u mom slučaju između 6 i 11 ujutro). Ako je, pozvat će prethodni AppleScript. Zašto tako? Zato jer ne želim da se AppleScript izvršava dok spavam ili nakon što sam već sigurno budan - u to vrijeme Mac izvršava pametnije skripte (čisti kuću, plijevi vrt...).

Sad imamo dvije skripte koje se brinu za ono što treba obaviti i kada to treba obaviti. Ali još se nitko ne brine pokrenuti ikoju od njih. Za to ćemo koristiti launchd, točnije Launch Agents (jer Apple ne voli kad koristimo cron) kojemu ćemo reći da pokreće Bash skriptu svake 3 minute (180 sekundi):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>Label</key>
        <string>local.WakeHomePod</string>
        <key>Program</key>
        <string>~/Applications/WakeHomePod.sh</string>
        <key>StartInterval</key>
        <integer>180</integer>
    </dict>
</plist>

Gornju skriptu snimimo pod imenom local.WakeHomePod.plist u ~/Library/LaunchAgents/. To je neće pokrenuti. Pokrenuo bi je restart računala, ali možemo i bez toga, pješke. Podignemo terminal i tipkamo:

launchctl load ~/Library/LaunchAgents/local.WakeHomePod.plist

Ako želimo provjeriti da li je pokrenuta, možemo utipkati:

launchctl list | grep local

Ako se pojavi u ispisu, pokrenuta je i svakih 180 sekundi pokretat će Bash skriptu (koja će pokretati AppleScript koji će pokretati playanje tišine).

Kad se prvi put izvrše skripte, sistemski Security će (odvojeno) prijaviti da WakeHomePod.sh i Terminal žele kontrolirati iTunes - dopustite im i više neće gnjaviti.

Nakon toga možemo pogasiti terminal i sve editore, pustiti samo iTunes, u njemu željenu radio postaju i otići na zasluženo spavanje. A kad ujutro odlučimo prekinuti cvrkut ptičica sa "Hey Siri, play" i prosvira naš omiljeni jutarnji radio, nećemo se ni sjetiti da u tom trenutku u nekoj drugoj Nepodržanoj državi neki nesretni vlasnik HomePoda koristi isti za kiseljenje kupusa - jer ne zna što bi drugo s njim. Mi znamo.
05.03.2020 | 00:46
(Odmahujem glavom u nevjerici!)
05.03.2020 | 02:05
  • Dijete
  • Posjetitelj
05.03.2020 | 03:51
Nikad necu dopustit da me komp zamjeni i oduzme mi moju zen vjezbu - pljevljenje vrta...

NIKAD!

Al sve ostalo, Djipi, naklon do poda

L.
06.03.2020 | 15:11
Ja u dnevnom boravku imam neki Philips zvučnik koji ima 32-pin dock za stare iUređaje. Kako mi iPhone 4 više ne može normalno vrtiti TuneIn za radio, a i Deezer na njemu šteka, maknuo sam ga i na zvučnik priključio AirportExpress koji je spojen na kućnu mrežu i na kojem je uključen AirPlay.

Ujutro me budi budilica na iPhone 8 koji mi je na noćnom ormariću. Isključujem budilicu i ustajem. Do dnevnog boravka na iPhone TuneIn pustim radio koji već do dolaska u dnevni boravak svira. Na telefonu prilagodim glasnoću, spuštam telefon na stol uz stvari koje nosim na posao i nastavljam do kupaonice.

Kada odem iz kuće isključi se i muzika. Po povratku kući čim sam ušao kliknem Play i to je to.

Tek nedavno sam otkrio da stream muzike ne prestaje ako mi zvoni telefon i javim se :-D

As simple as that
06.03.2020 | 16:55
FiFi kaže:
Ja u dnevnom boravku imam neki Philips zvučnik koji ima 32-pin dock za stare iUređaje. Kako mi iPhone 4 više ne može normalno vrtiti TuneIn za radio, a i Deezer na njemu šteka, maknuo sam ga i na zvučnik priključio AirportExpress koji je spojen na kućnu mrežu i na kojem je uključen AirPlay.

Ujutro me budi budilica na iPhone 8 koji mi je na noćnom ormariću. Isključujem budilicu i ustajem. Do dnevnog boravka na iPhone TuneIn pustim radio koji već do dolaska u dnevni boravak svira. Na telefonu prilagodim glasnoću, spuštam telefon na stol uz stvari koje nosim na posao i nastavljam do kupaonice.

Kada odem iz kuće isključi se i muzika. Po povratku kući čim sam ušao kliknem Play i to je to.

Tek nedavno sam otkrio da stream muzike ne prestaje ako mi zvoni telefon i javim se :-D

As simple as that


Stream ne prestaje jer ape podrzava airplay 2, na airplay 1 je stream prestajao kada bi netko zvao na tel
12.04.2020 | 10:34
Unbelivable...
Svaka čast, Djipi!
Moderatori: Bertone
  • Stranica:
  • 1

Vikalica™

Zadnja poruka: pred 1 sat, 13 minuta
  • smayoo: Funkcionalna zamjena je push notifikacija koja preko 5G ide po generičkom protokolu, samo aplikacija na mobitelu mora to podržavati
  • smayoo: Upozorili su me ljudi koji rade u toj branši, radi nekih telemetrijskih rješenja gdje nadzorni sustav SMSom šalje obavijesti korisniku
  • ZeljkoB: smayoo, odakle ti ova informacija za SMS?
  • smayoo: SMS poruke su phase-out. Znači, neki ih operateri više ne nude, niti omogućavaju njihovo slanje. Određen je neki krajnji rok, nakon kojeg više nijedan operater u EU nije dužan osigurati propagiranje SMS poruka. Probaj ručno promijeniti operatera (pretpostavljam da si u roamingu)
  • Matija klc: Ekipa, pomoc. Nalazim se u Rumunjskoj. Primam poruke normalno, no ne mogu poslati poruku. Pricam o obicnoj. Sve drugo radi najnormalnije. Sta napraviti?
  • MoschuS: Ma svugdje ali sve neka mala mjesta ili sela po Hr ili Slo
  • JOHN: Jesu to oni iz Imotski?
  • MoschuS: Ako netko kupuje rabljeno racunalo pripazite se prevaranata na Njuskalu i Bolhi. Otkrio sam ih par, slicni oglasi i kada ih kontaktirate salju iste/slicne racune i serijske brojeve kao potvrdu i onda odjednom obrisu oglas, naprave novi account i pokusavaju dalje uloviti nekoga.
  • Zdravac: :) Na kraju će ispasti da nas ima dosta koji vozimo motore!
  • rkrosl: prodao triumpha, kupio triumpha
  • JOHN: Honda CB650R
  • FiFi: Skoro sam ga jednom zamijenio za Bandita 1200 , ali sam ipak odustao.
  • Zdravac: ...ili Suzuki Bandit :)
  • Zdravac: E, taj motor je nekad bio moj san, da nije uletila yamaha, sigurno bih toga sad vozio :)
  • FiFi: Honda CB900F2 Hornet, 2002. Evo radim servis i nadam se registraciji prvi put nakon tri godine stajanje (djeca ti promijene raspored vožnje)
  • Riba: Problem je sto "sezona" u Irskoj trtaje tjedan dana. :-D Moram vidjeti ima li kakav nacin da ga registriram u Hr.
  • Zdravac: @ZeljkoB Odličan motor, takvi motori su baš po mom guštu! Lijep i ugodan za voziti.
  • Zdravac: @Riba Pa što čekaš, daj, zamjeni ulje, filtere i svječice, napuni bateriju, i lagano pranje. To će biti dovoljno, siguran sam! :)
  • Zdravac: Ajd, super, nisam jedini! Sad ide sezona, i gušt! Polako plan za moto trip na more...
  • ZeljkoB: Honda NC750X, ali sve manje vremena imam za voznje.....
  • Riba: Imam ja BMW 650CS, mozda ga reaktiviram nakon 10 godina stajanja u garazi. A imam i Vespu iz 1959, ta malo duze stoji. :)
  • Zdravac: Evo, ja ću prvi: YAMAHA XJ900 S Diversion, classic iz 1998., ide ko švicarski sat, čista mehanika, pouzdano do bola! :)
  • Zdravac: Jel imamo ovdje kolega ili kolegica, da voze motor? Ako da, koji?
  • zoranowsky: @air, u biti isti je pricnip, samo si sam sebi target :)
  • Air: Polako, polaku, kuda žurba, daj mi prvo link na to kako pročitati vlastite misli :)
  • smayoo: Za one koji ne znaju čitati misli - [link] :D
  • Borisone: Za one koji ne znaju čitati misli, koja je konfiguracija?
  • VanjusOS: pozdrav, treba li netko Mac mini M2, nekorišteno?
  • kupus: Ima takvih naravno. Iz mog skromnog iskustva takvi su u manjini.
  • smayoo: većina online trgovaca odbija slati na poste restante pa čak i na poštanski pretinac
  • kupus: zasto na osobnu adresu*
  • kupus: Zasto na adresu? Naruci na adresu postanskog ureda, tamo ce te cekat
  • drlovric: Imamo li koga iz Zupanje na forumu da bih mogao naruciti paket na njegovu adresu? :)
  • ecvis17: ok, tnx
  • smayoo: Piši u forum
  • ecvis17: pozdrav svima, imam stari MBP koji maksimalno moze voziti BigSur ... malo nisam vise u toku, gdje se danas mogu pronaci Combo installeri? Tnx
  • cariblanco: Čekao je da Hajduk osvoji prvenstvo i na kraju je odustao ;)
  • Yonkis: Od sada ćemo mjeriti vrijeme pre-JM and post-JM time
  • JOHN: Ako je vjerovao, neka mu dragi Bog pomogne i uzme sebi. Ako nije, opet nema veze……sve u svemu mislim da je živio dobar život!
  • smayoo: Ljudi... ode nam Joža Manolić... Nije šala.
  • accom: ne nadjem...
  • accom: jel postoji tema "must have apps"?
  • Riba: Vjerojtano koliko je Apple mapa detaljna.
  • Yonkis: Ili da otvorim temu u forumu?
  • Yonkis: Jedna osoba dok je bila u Beču, mogao sam vidjeti njenu lokaciju točno na kojem je katu i u kojem dijelu zgrade je bila (iPhone 14 u pitanju). Zna li netko koji su preduvjeti za takvo točno lociranje jer u Hrvatskoj to još nisam nigdje doživio? Vidim lokaciju ali ne u 3D.
  • m@xym: Uostalom, palčevi su na ovom forumu odavno prestali biti relevantni, a nama koji smo redovito ovdje niti ne trebaju da bi smo znali kakav je tko.
  • m@xym: Nerviraj se samo zbog onih koji su ti bitni, a nebitne ignoriraj, inače ćeš ostati bez živaca.
  • Vanjuška: Nema nervoze m@xym, ali da javno prozovem malog žapčića da bog sve vidi i sve zna :D
  • smayoo: Ja nemam.
  • zvone: Servisom naime...

Za vikanje moraš biti prijavljen.

Prijava

Prisutni jabučari

Novo na Jabučnjaku

Teme

Poruke

Anketa

Kupujete li profesionalni Mac?

Čekam novi modularni Mac Pro - 48.5%
Novac nije problem, kupujem iMac Pro - 0.7%
Kupujem Valjak, baš je lijep i tih! - 0%
Kupujem polovni Mac Pro tower - 11.8%
Nadogradit ću postojeći Mac Pro tower - 2.9%
Običan iMac 27" mi je dovoljan za posao - 5.9%
Skromnih sam potreba, Mac mini je zakon! - 7.4%
Radim na terenu, mora biti MacBook Pro - 3.7%
Ne diram ništa, stari Mac služi me odlično - 10.3%
Kupujem PC kantu i prelazim na Windowse! - 8.8%

Ukupno glasova: 136
Anketa je završena dana: 08 Svi 2018 - 12:17
Page Speed 1.16 Seconds

Provided by iJoomla SEO