Reklame
Jeg har ønsket at prøve det SiriProxy for nogle Arduinohjemmeautomation projekter, men jeg nægter at købe en ny telefon, når min iPhone 4 stadig fungerer fint (ja, jeg stoppede med at bruge min HTC One X Hvorfor min næste telefon ikke er en iPhone, fra en Apple Fanboy [Opinion]Jeg er blevet kaldt en Apple-fanboy ved flere lejligheder, så jeg kan lige så godt acceptere moniker og gå videre. Ja, jeg elsker Apple-produkter, og jeg gyser ved tanken om at røre ved Windows ... Læs mere ; 6 måneder med Android er mere end nok for mig). Men så indså jeg; jeg har Siri allerede, på min iPad 3. Jeg kunne bestemt bruge det? Det kan du faktisk også. Så i denne tutorial vil jeg lede dig gennem at få SiriProxy til at arbejde med din iPad 3 og Mac OS X - meget af dette vil dog kun være relevant for Mountain Lion.
Jeg advarer dig også på forhånd, dette er temmelig vanskelige ting og næsten alt gjort på kommandolinjen, og mens jeg har prøvet at nedbryd det trin for trin på den nøjagtige måde, der fungerede for mig, skal du muligvis Google nogle fejl selv, når og når de opstå.
Krav
- iPad eller iPhone med Siri-funktioner. Jeg vil ikke vise, hvordan jeg hacker Siri på ældre enheder ved hjælp af falske servere, så spørg ikke.
- Mac OS X. Du kan også installere SiriProxy på Linux, men det vil jeg ikke prøve i dag.
- iOS6.1
Forberedelse
Download pkg-installationsprogrammet til din OS X-version fra MacPorts.org. macports giver os mulighed for at installere en række UNIX-værktøjer, der er blevet portet til Mac. Du skal også have XCode installeret, hvilket kan være downloadet gratis fra Mac App Store, men det er en stor download, så kom i gang nu.
MacPorts tilføjer nogle nye sti-poster til dit system, men opdateres ikke korrekt. At undgå portkommando ikke fundet fejl senere, løb
kilde .profil
På dette tidspunkt skal du også installere XCode fra app store. Når det er installeret, kør denne kommando for at fortælle dit system, hvor kompilatoren er:
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
Installer derefter DNSMasq; en simpel DNS-speditør, der lader os aflytte anmodninger til en bestemt IP.
sudo port installere dnsmasq
Installer Ruby og RVM
Download og installer RVM-pakkehåndtering med denne kommando:
bash <Kør derefter dette for korrekt at tilføje det til dit system:
[[-s "$ HOME / .rvm / scripts / rvm"]] &&. "$ HOME / .rvm / scripts / RVM"Installer Ruby ved hjælp af følgende kommando; dette vil bruge den seneste version 1.9.3 i skrivende stund, og jeg foreslår, at du gør det samme, eller resten af denne vejledning vil sandsynligvis ikke fungere.
rvm installation 1.9.3Hvis du får en masse tilfældig rød tekst med en fejl, skal du køre denne i stedet:
rvm installere 1.9.3 –med-gcc = klangså gør
rvm brug 1.9.3 standardfor at indstille standardversionen af rubinmiljøet. Tillykke, du har nu Ruby på dit system!
Download SiriProxy
Begynd med at bruge Git til at klone SiriProxy-projektet til din maskine.
git klon git: //github.com/plamoni/SiriProxy.gitcd / SiriProxyNår du først gør dette, kan du muligvis få en sikkerhedsadvarsel om scriptfiler, der er registreret. Gå videre og stol på dette, hvis du har downloadet fra github-kilden.
Dernæst kopierer vi på tværs af konfigurationsfilen.
mkdir ~ / .siriproxycp ./config.example.yml ~ / .siriproxy / config.ymlÅbn den konfigurationsfil ved hjælp af din foretrukne teksteditor, og skift IP'en øverst i filen fra 0.0.0.0 til din Mac's lokale IP. Komme videre:
rvmsudo perle installere rake bundlerrvmsudo rake installationDette skulle installere SiriProxy for dig, men vi bliver nødt til at gentage dette senere for at håndtere fejl. Lad os fortsætte og lave nogle certifikater.
Vi har brug for OpenSSL installeret først.
sudo port installerer opensslFørste gang jeg kørte dette, mislykkedes det med adskillige zlib-fejl; for at ordne dette havde jeg brug for at køre
sudo port -f aktiver zlibDerefter genererer vi certifikater:
siriproxy gencertsHvis alt går godt, skal du se en meddelelse, der ligner denne.
Brug Finder-> Gå til mappe menuindstilling for at indtaste stien i output; du skulle finde en ca.pem fil der. E-mail det til dig selv, og åbn det derefter på din Siri-kompatible enhed. Dette springer over til indstillinger og giver dig muligheden for at installere det som et nyt certifikat. Ikke, din vil sige, det er untrusted (i rødt) første gang - jeg tog dette skærmbillede efter installationen, så det siger betroet.
Tilbage på din Mac, kør følgende kommando for at opdatere nogle tilfældige filer, der er nødvendige.
bundt installationOpsætning af DNS-videresendelse
Det sidste trin er at gøre din Mac til en DNS-server, der kan aflytte opkald til Apples servere og rute dem via SiriProxy i stedet. Brug igen Finder-> Gå til mappe, åbn / opt / local / etc, og rediger dnsmsq.conf. Tilføj følgende linje, og udskift 192.168.0.6 med den lokale IP-adresse på din Mac.
adresse = / guzzoni.apple.com / 192.168.0.6Kør følgende for at aktivere DNSMasq-tjenesten. Du skal gøre dette ved hver genstart (sammen med SiriProxy, som vi beskriver senere).
sudo / opt / local / sbin / dnsmasqÅbn dine netværksindstillinger på din iPad eller iPhone og skift WiFi-serveren til WiFi til din Mac IP-adresse. Ja, SiriProxy fungerer kun over dit WiFi-hjem, men du kan teoretisk VPN ind i din hjemme-router, hvis du ønsker at bruge det, mens du er ude og omkring. Vi dækker ikke det i dag.
Jeg havde også brug for at indstille en ny regel for portvideresendelse på min router; port 53 skal videresendes til din Mac IP. (Dette er den port, der bruges af DNS)
Start SiriProxy
Det sidste trin er at starte SiriProxy-serveren og teste. Gør dette ved hjælp af:
eksport rvmsudo_secure_path = 1Hvis du på dette tidspunkt får en skærm fuld af fejl som "ugyldigt symbol", så snart du trykker på startknappen, skal du fortsætte med denne bit. Du får fejl på grund af en ældre version af CFPropertyList inkluderet i SiriProxy-pakken. Forhåbentlig løses dette snart, så du har muligvis ikke brug for dette, men bare i tilfælde ...
Download den nyeste version af CFPropertyList sådan:
sudo gem install CFPropertyList -v 2.1.2Brug nu Finder for at gå til mappe ~ / .rvm / gems /. Naviger inden i den sidste Ruby - i mit tilfælde ruby-1.9.3-p385 / og kopier perler / CFPropertyList-2.1.2 / lib mappe over til ruby-1.9.3-p385@SiriProxy/gems/CFPropertyList 2.2.0 . Ja, autentificer og overskriv ældre version lib med lib fra den nyere version; et forfærdeligt hack, men den eneste måde jeg kunne få det til at fungere. Den endelige løsning, der er nødvendig, er at manuelt redigere gemspec fil. Gør dette ved at skifte til SiriProxy-biblioteket og åbne op siriproxy.gemspec. Gør dette fra kommandolinjen med VI eller Nano ved hjælp af:
sudo vi siriproxy.gemspecEller bare brug en teksteditor. Udskift linjen, der er omkring 4 linjer fra bunden indeholdende ”CFPropertyList” med følgende:
s.add_runtime_dependency ('CFPropertyList', '2.1.2')Kør nu
rvmsudo siriproxy-opdateringOg alt skal være godt med verden. Start serveren igen, og prøv igen.
rvmsudo siriproxy-serverTest det ved at bede Siri om at "teste siri-proxy", og du skal få et svar om, at det er i gang. Se mere testkommandoer her.
Næste gang ser vi på nogle SiriProxy-plugins, du kan køre og faktisk begynde at gøre brug af denne ting.
For at være ærlig var hele denne proces mere utroligt kompliceret, end jeg håbede, men jeg håber, at denne guide viser sig at være nyttig for nogle af jer, da det bogstaveligt talt tog mig hele dagen at komme i orden. Har du nogle anbefalinger til SiriProxy-plugins, som jeg bør tjekke ud? Virkede denne proces for dig? Fortæl os det i kommentarerne, så prøver jeg at hjælpe dig, men projekt GitHub-side er fuld af langt mere kyndige folk.
James har en BSc i kunstig intelligens og er CompTIA A + og Network + certificeret. Han er hovedudvikler af MakeUseOf og bruger sin fritid på at spille VR paintball og brætspil. Han har bygget pc'er siden han var barn.