WhatsApp iz Debian terminala za sistemce

Sistemci su u pravilu "technogeekovi" pa prihvaćaju sve tehničke novotarije s oduševljenjem. Time dobiju dodatni posao i brigu, ali to je cijena znatiželje. Za većinu njih je era pametnih telefona donijela garanciju da posao uvijek nose sa sobom u džepu. Na pametnom telefonu se osim razonode i društvenih komunikacija, nalaze i alati za administraciju, nadzor servera, opreme, video nadzor itd.

Međutim nekima smeta "sveprisutnost" i osjećaj da su stalno na poslu. Žele se u slobodnom vremenu više posvetiti kućnim poslovima, hobijima, obitelji te druženju s prijateljima. U tom slučaju preostaje korištenje klasičnog mobilnog telefona za pozive i slanje SMS poruka. Isključivanje iz "pametnog svijeta" donosi neku vrstu izolacije iz koje ponekad želiš pobjeći, kad ti je potrebna brza razmjena informacija, pregledanje mapa, slanje fotografije koja je radi nečega bitna. Neke prednosti pametnih uređaja su jednostavno neodoljive. Dolazimo do zaključka da bi kompromisno rješenje bio tablet bez SIM kartice, koji omogućava komforan rad i možemo ga po potrebi spojiti u dostupnu Wi-Fi mrežu. Međutim, korištenje Android tableta bez SIM kartice donosi ograničenja u pristupu nekim omiljenim aplikacijama.

Posebno je interesantna aplikacija WhatsApp koja šalje tekstualne poruke, foto, video zapise, govorne pozive unutar WhatsApp zajednice putem Interneta. Dobro dođe ako se nalazite u dosegu neke  slobodne Wi-Fi mreže, pa možete "besplatno" zvati vaše kontakte. Kad pokušate instalirati WhatsApp na tablet bez SIM kartice, Google store vas odbije s obrazloženjem da vaš uređaj nije podržan. To djeluje zbunjujuće dok ne saznate da je aplikacija službeno podržana samo na Andriod uređajajima  sa SIM karticom za koju veže korisnički profil.

Međutim, instalaciju možete napraviti skidanjem aplikacije sa ove adrese i unošenjem broja svog mobitela, te verifikacijom pomoću govornog poziva,  Verifikacijski kod neće proći na obični mobitel, govorni poziv hoće. Poslušajte govornu poruku i zapišite brojeve s kojima dovršite prijavu svog Android tableta. Ovim ste završili instalaciju WhatsAppa vezanu za SIM karticu i broj "glupog" telefona. Kontakte možete dobaviti ili ručnim unošenjem ciljanih brojeva u imenik tableta kao "Phone" kontakata ili da skinete sa SIM kartice kontakte u .vcf formatu i uvezete u imenik tableta. Otuda ih WhatsApp povuče automatski ukoliko su brojevi registrirani kod njih.

Ovim smo jednostavno pridružili broj svoje SIM kartice tablet uređaju. Prijavljivanje istog broja na drugom uređaju (pametnom telefonu, tabletu, računalu) nije moguće bez ponovne registracije kojom gubite registraciju s prethodnog uređaja. Postoji zgodna opcija za dijeljenje svog WhatsApp klijenta sa Androida na desktop računalo putem weba  ali sve se odvija na Android klijentu. Idemo malo pogledati "ispod haube" i saznati kako funkcionira ovaj popularni servis i možemo li ga iskoristiti  za neke naše poslove. 

WhatsApp koristi prilagođenu verziju  XMPP (Extensible Messaging and Presence Protocol) kao komunikacijskog protokola. Ovaj protokol orginalno zvan Jabber razvila je open source zajednica 1999 godine. Instalacija kreira korisničko ime koristeći broj mobitela i predbroj zemlje iz koje dolazite ([+385xxxxxxxxxx]@s.whatsapp.net). Lozinka se kreira nepoznatim algoritmom na strani servera te se šalje klijentu. Lozinka je derivat IMEI broja ili WiFi MAC adrese. Na Androidu WhatsApp pohranjuje lozinku i korisničko ime u 2 posebne datoteke koje su kriptirane u private storage području. Bez "rootanja" uređaja i dekripcije datoteka nije ih moguće otkriti u "čitljivom" obliku. Zanima nas da li postoji neka verzija ove aplikacije za Linux koju bi "vezali" za neku SIM karticu čiji broj nije registriran na WhatsApp servis ? Pronalazimo za tu namjenu Yowsup python biblioteku koja uključuje izradu aplikacije koju koristi  WhatsApp servis na otvorenoj platformi. Linux klijent ima instaliran Debian 8.0 "jessie". Preduvjet je instalacija slijedećih paketa:
 

#apt-get install python python-dateutil python-argparse python-setuptools python-dev libevent-dev ncurses-dev

Preuzmimo na svog budućeg WhatsApp klijenta razvojni Yowsup direktorij sa popularnog GitHuba.

#git clone git://github.com/tgalal/yowsup.git

Locirajmo se unutar yowsup direktorija te dajmo izvršne ovlasti skripti.

#cd yowsup
yowsup# ls
build  LICENSE      setup.py  yowsup2.egg-info  yowsup-cli.config
dist   README.md  yowsup    yowsup-cli
yowsup# chmod +x yowsup-cli


Pomoću broja 2 SIM kartice koju imamo u svom "glupom" DualSIM telefonu ( SIM karticu 1 smo prijavili na Android tabletu)  zatražimo registracijski kod za Debian klijenta naredbom.

#python yowsup-cli registration --requestcode sms --phone 385971234567 --cc 385 --mcc 405 --mnc 035
yowsup# python yowsup-cli registration --requestcode sms --phone 385971234567 --cc 385 --mcc 405 --mnc 035
INFO:yowsup.common.http.warequest:{"status":"sent","length":6,"method":"sms","retry_after":117,"sms_wait":117,"voice_wait":65}

status: sent
retry_after: 117
length: 6
method: sms


Prepišemo kod u slijedeću naredbu kojom registriramo WhatsApp uslugu za Linux klijenta.

#python yowsup-cli registration --register 755-158 --phone 385971234567  --cc 385

 python yowsup-cli registration --register 755-158 --phone 385971234567  --cc 385
INFO:yowsup.common.http.warequest:{"status":"ok","login":"385971234567","type":"new","pw":"67IpjvS8BivKxFJUtO/seXV/YKI=","expiration":4444444444.0,"kind":"free","price":"US$0.99","cost":"0.99","currency":"USD","price_expiration":1457325232}

status: ok
kind: free
pw: 67IpjvS8BivKxFJUtO/seXV/YKI=
price: US$0.99
price_expiration: 1457325232
currency: USD
cost: 0.99
expiration: 4444444444.0
login: 385971234567
type: new

 Lozinku koju smo dobili u terminalu te zajedno sa ostalim podatcima kopirajmo  u datoteku imena npr bonbon.config unutar yowsup direktorija. Podatci potrebni za spajanje:

cc=385
phone=971234567
id=
password=67IpjvS8BivKxFJUtO/seXV/YKI=

Naredba za pokretanje Yowsup klijenta.



#yowsup-cli demos --yowsup --login 971234567:67IpjvS8BivKxFJUtO/seXV/YKI=
Yowsup Cli client
==================
Type /help for available commands

[offline]:


Spojili smo se na Yowsup konzolu

Listu naredbi za konzolu dobivene naredbom help pogledajte ovdje.



help.txt

 Nedostaje još jedan korak da se povežemo u WhatsApp mrežu.

[offline]:/login 385971234567 67IpjvS8BivKxFJUtO/seXV/YKI=
INFO:yowsup.layers.axolotl.layer:Axolotl layer is generating keys
Auth: Logged in!
general: Disconnected: Requested
[connected]:

Auth: Logged in!

[connected]:


Probajmo poslati test poruku prema nekom poznatom WhatsApp klijentu naredbom.


Ovako to izgleda na strani Android klijenta.


Otvorena platforma nam omogućava slanje poruke kroz naredbenu liniju, što nam otvara mogućnost da pomoću skripte šaljemo sistemske obavijesti na smart uređaj koji uvijek osluškuje WhatsApp messenger, preko mobilne mreže ili Wi-Fi veze. Primjenjivo je na neke ranije članke u kojima WhatsApp može poslužiti kao alternativa za SMS, Google Hangout ili mail.

Ukoliko nemate slobodne SIM kartice, na tržištu ih ima već za 20 kn. Treba vam jednokratno biti u mobitelu  za registraciju usluge, poslije ne mora biti aktivna.

Kuharice: 
Kategorije: 
Vote: 
5
Vaša ocjena: Nema Average: 5 (1 vote)