Oglas
Želel sem se preizkusiti SiriProxy Za nekatere Arduinoavtomatizacija doma projektov, vendar nočem kupiti novega telefona, ko moj iPhone 4 še vedno deluje v redu (da, nehala sem uporabljati svoje HTC One X Zakaj moj naslednji telefon ni iPhone, od Apple Fanboy [mnenje]Že večkrat so me klicali Appleov oboževalec, zato bom morda sprejel tudi monar in nadaljeval. Da, obožujem izdelke znamke Apple in se tresem ob misli, da bi se dotaknila sistema Windows ... Preberi več ; 6 mesecev z Androidom je zame več kot dovolj). Toda potem sem spoznal; jaz imajo Siri že, na mojem iPadu 3. Zagotovo bi to lahko uporabil? Dejansko lahko. Torej, v tej vadnici vas bom predstavil, da boste SiriProxy delali s svojim iPadom 3 in Mac OS X - večina tega bo pomembna samo za Mountain Lion.
Vnaprej vas tudi opozarjam, da so to precej težke stvari in skoraj vse narejeno v ukazni vrstici, in medtem ko sem poskušal razčlenite ga korak za korakom na natančen način, ki je deloval zame, morda boste morali Googlu nekaj napak, kot kdaj in kdaj nastanejo.
Zahteve
- iPad ali iPhone s Siri zmogljivostmi. Ne bom pokazal, kako s ponarejenimi strežniki vstaviti Siri na starejše naprave, zato ne sprašujte.
- Mac OS X. SiriProxy lahko namestite tudi na Linux, vendar tega danes ne bom poskušal.
- iOS6.1
Priprava
Prenesite namestitveni program pkg za različico OS X od MacPorts.org. MacPorts nam omogoča namestitev različnih pripomočkov UNIX, ki so bili preneseni na Mac. Prav tako morate imeti nameščen XCode, kar je lahko prenesete brezplačno iz trgovine Mac App Store, vendar je velik zagon, zato začnite zdaj.

MacPorts doda nekaj novih vnosov poti v vaš sistem, vendar se ne posodobi pravilno. Izogniti se ukaza vrat ni bilo mogoče najti kasneje teči
vir .profile
Na tej točki boste morali namestiti tudi XCode iz trgovine z aplikacijami. Ko je nameščen, zaženite ta ukaz in svojemu sistemu sporočite, kje je prevajalnik:
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
Nato namestite DNSMasq; preprost DNS-posrednik, ki nam omogoča prestrezanje zahtev za določen IP.
sudo vrata namestite dnsmasq
Namestite Ruby in RVM
Prenesite in namestite upravitelja paketov RVM s tem ukazom:
bash <Nato zaženite to, da ga pravilno dodate v svoj sistem:
[[-s "$ HOME / .rvm / skripte / rvm"]] &&. "$ HOME / .rvm / skripte / rvm"Namestite Ruby z naslednjim ukazom; to bo v času pisanja uporabljeno najnovejšo različico 1.9.3, in predlagam vam, da naredite isto ali pa tudi ostali priročniki verjetno ne bodo delovali.
rvm namestite 1.9.3Če dobite kup naključnega rdečega besedila z napako, zaženite to:
rvm namestite 1.9.3 –with-gcc = clangpotem naredite
rvm privzeto uporabi 1.9.3nastavite privzeto različico okolja rubin. Čestitamo, zdaj imate Ruby v svojem sistemu!
Prenesite SiriProxy
Začnite z uporabo Gita za kloniranje projekta SiriProxy na vaš računalnik.
git klon git: //github.com/plamoni/SiriProxy.gitcd / SiriProxyKo prvič to storite, boste morda prejeli varnostno opozorilo glede skriptnih datotek. Pojdi naprej in to zaupaj, če nalagaš iz vira github.
Nato bomo kopirali preko konfiguracijske datoteke.
mkdir ~ / .siriproksicp ./config.example.yml ~ / .siriproxy / config.ymlOdprite to konfiguracijsko datoteko s svojim najljubšim urejevalnikom besedila in spremenite IP na vrhu datoteke iz 0,0.0.0 v lokalni IP svojega Mac. Iti naprej:
rvmsudo gem namestite rake bundlernamestiti rvmsudo rakeTo bi moral namestiti SiriProxy, vendar bomo to morali pozneje ponoviti, da bomo obravnavali napake. Za zdaj nadaljujmo in naredimo nekaj potrdil.
Najprej bomo morali namestiti OpenSSL.
sudo vrata namestite opensslKo sem prvič vodil to, ni uspelo s številnimi napakami zlib; da sem to popravil, sem moral teči
sudo port -f aktivirate zlibNato bomo ustvarili potrdila:
siriproksi gencertiČe gre vse v redu, bi morali videti sporočilo, podobno temu.
Uporabi Finder-> Pojdi v mapo možnost menija za vnos poti, navedene v izhodu; bi morali najti ca.pem datoteka tam. To pošljite sebi in nato odprite v napravi, ki omogoča Siri. To bo skočilo na nastavitve in vam dalo možnost, da ga namestite kot novo potrdilo. Ne, vaš bo rekel, da je nezaupljiv (rdeče) prvič naokoli - posnel sem ta posnetek zaslona po namestitvi, tako da piše zaupati.
Nazaj na Mac, zaženite naslednji ukaz in posodobite nekaj naključnih datotek, ki so potrebne.
namestitev svežnjaNastavite posredovanje DNS
Končni korak je, da Mac pretvorite v DNS strežnik, ki lahko prestreže klice na Applove strežnike in jih namesto njih usmeri prek SiriProxy. Ponovno z uporabo Finder-> Go To Folder odprite / opt / local / itd in uredite dnsmsq.conf. Dodajte naslednjo vrstico in nadomestite 192.168.0.6 z lokalnim naslovom IP vašega Maca.
naslov = / guzzoni.apple.com / 192.168.0.6Če želite aktivirati storitev DNSMasq, zaženite naslednje. To boste morali storiti ob vsakem ponovnem zagonu (skupaj z zagonom SiriProxy, kot smo opisali v nadaljevanju).
sudo / opt / local / sbin / dnsmasqV iPadu ali iPhoneu odprite omrežne nastavitve in spremenite DNS strežnik WiFi v svoj Mac IP naslov. Da, SiriProxy bo deloval samo nad vašim domačim WiFi, vendar teoretično lahko VPN v vaš domači usmerjevalnik uporabite, če ga želite uporabljati med zunaj. Danes tega ne bomo pokrivali.
Prav tako sem moral določiti novo pravilo za posredovanje vrat na usmerjevalniku; vrata 53 je treba posredovati v vaš Mac IP. (To je vrata, ki jih uporablja DNS)
Zaženite SiriProxy
Zadnji korak je zagon strežnika SiriProxy in testiranje. To storite z:
izvoz rvmsudo_secure_path = 1Če se na tem mestu prikaže zaslon, poln napak, kot je "neveljaven simbol", takoj ko pritisnete tipko za začetek, nadaljujte s tem koščkom. Prihaja do napak zaradi starejše različice CFPropertyList, ki je vključena v paket SiriProxy. Upajmo, da bo to kmalu odpravljeno, zato tega morda ne boste potrebovali, a za vsak slučaj ...
Prenesite najnovejšo različico CFPropertyList, kot je ta:
sudo gem namestite CFPropertyList -v 2.1.2Zdaj pa uporabite Finder pojdite v mapo ~ / .rvm / gems /. Pomikajte se znotraj najnovejše Ruby - v mojem primeru rubin-1.9.3-p385 / in kopirajte gems / CFPropertyList-2.1.2 / lib v mapo ruby-1.9.3-p385@SiriProxy/gems/CFPropertyList 2.2.0 . Da, overite in prepisujte starejša različica lib z lib iz novejše različice; grozen kramp, toda edini način, kako bi to lahko deloval. Končni popravek je treba ročno urediti gemspec mapa. To storite tako, da se pomaknete v imenik SiriProxy in odprete siriproxy.gemspec. To naredite iz ukazne vrstice s VI ali Nano z uporabo:
sudo vi siriproxy.gemspecAli pa preprosto uporabite urejevalnik besedil. Zamenjajte vrstico, ki vsebuje približno 4 vrstice od spodaj »CFPropertyList« z naslednjim:
s.add_runtime_dependency ('CFPropertyList', '2.1.2')Zdaj teči
rvmsudo siriproxy posodobitevIn s svetom bi moralo biti vse dobro. Ponovno zaženite strežnik in preizkusite.
rvmsudo siriproxy strežnikPreizkusite ga tako, da Siri zaprosite za »preizkus prori siri« in dobili boste odgovor, da deluje in deluje. Poglej več preskusni ukazi tukaj.
Naslednjič si bomo ogledali nekaj vtičnikov SiriProxy, ki jih lahko zaženete, in dejansko začeli uporabljati to stvar.
Iskreno povedano, celoten postopek je bil neizmerno bolj zapleten, kot sem upal, vendar upam, da se bo ta priročnik za nekatere od vas izkazal za koristnega, saj mi je dobesedno potreboval ves dan, da sem prišel prav. Imate kakšna priporočila za vtičnike SiriProxy, ki bi jih moral preveriti? Je ta postopek deloval za vas? Sporočite nam v komentarjih in poskušal vam bom pomagati, toda stran GitHub projekta je poln veliko bolj poznavalcev.
James ima doktorat iz področja umetne inteligence in ima certifikat CompTIA A + in Network +. Je vodilni razvijalec MakeUseOf in svoj prosti čas preživlja z igranjem VR paintball in družabnih iger. Z računalniki gradi že od malih nog.