Ibhulogi

Indlela Baby Monitor Timmy Esebenza Ngayo Ngokobuchwepheshe

I-WebRTC, i-Firebase, nokuvikelwa kusukela ekugcineni kuya ekugcineni, kuchazwe ngaphandle kwamagama obuchwepheshe adidayo.

Izingxenye Ezintathu Zokwakha, Umgomo Owodwa

Ngaphakathi, i-Timmy yakhelwe ngendlela elula nesebenzayo: Flutter yohlelo lokusebenza, WebRTC yomsindo nevidiyo ngesikhathi sangempela, kanye ne- Firebase yokuxhumanisa. Bengingafuni ukwakha inkundla enkulu edlulisa yonke into ngefu. Ingxenye ngayinye kufanele yazi okuncane ngangokunokwenzeka, kodwa isebenze ngokwethembeka nezinye.

I-WebRTC: Ukuxhumana Okuqondile, Kubethelwe Ngokuzenzakalela

I-WebRTC (Web Real-Time Communication) idlulisa umsindo nevidiyo phakathi kwedivayisi yengane neyomzali. Esimeni esihle kakhulu, idatha ihamba ngqo phakathi kwamadivayisi amabili, i-peer-to-peer, ngaphandle kweseva yemidiya phakathi.

Konke ukuxhumana kwe-WebRTC kusebenzisa i-DTLS-SRTP ngokuzenzakalela. Uma othile ebamba amaphakethe enethiwekhi, ngeke akwazi ukuzwa umsindo noma ukubona ividiyo. Lokhu kubethela kuyingxenye yephrothokholi futhi akunakumane kucishwe ku-WebRTC.

Lokho kwakuyiphuzu elibalulekile kimi: imidiya yasegumbini lengane akufanele igcinwe kuseva yami. Ihlala phakathi kwamadivayisi enu.

Ukushintshaniswa Kolwazi Lokusetha Uxhumano nge-Firebase Firestore

Ngaphambi kokuba i-WebRTC iqale, amadivayisi kudingeka atholane futhi avumelane ngendlela angaxhuma ngayo. Leyo ngxenye ibizwa ngokuthi ukushintshaniswa kolwazi lokusetha uxhumano. I-Timmy isebenzisa i-Firebase Firestore, isizindalwazi samafu se-Google, kulokho.

Kushintshaniswa idatha yobuchwepheshe bokuxhumana kuphela:

Umsindo nevidiyo akufiki ku-Firebase. I-Firestore idlulisa kuphela idatha yobuchwepheshe bokuxhumana. I-Timmy iphinde ibethele lolu lwazi lokusetha uxhumano, ukuze i-Firestore ingabi yindawo eyodwa okuhlangana kuyo idatha ye-SDP ne-ICE ingabethelwe.

Amaseva e-TURN: Lapho Indlela Eqondile Ingasebenzi

Amanye amanethiwekhi avimba ukuxhumana okuqondile, isibonelo ama-firewall aqinile noma abanye abahlinzeki benethiwekhi yeselula. Khona-ke i-WebRTC idinga i- relay ye-TURN (Traversal Using Relays around NAT).

I-Timmy iqala ngokuzama iseva ye-TURN yendawo, bese isebenzisa i-Cloudflare njengenye indlela lapho iseva yendawo edlulisayo ingatholakali noma ithwele kakhulu. Iseva edlulisayo idlulisa amaphakethe abethelwe. Ayitholi okhiye bomsindo noma bevidiyo; ukubethela kwe-WebRTC kuqhubeka kusebenza.

Imininingwane yokungena ye-TURN ivela ku-Firebase Cloud Function futhi isebenza amahora angu-24 kuphela. Ngokubona kwami, imininingwane yokungena ehlala njalo ohlelweni lokuqapha ingane ingaba yingozi kakhulu.

I-Nearby Connections: Amadivayisi Ayatholana Ngokuzenzakalela

Ukuze kugwenywe izinyathelo zokusetha eziyinkimbinkimbi phakathi kwedivayisi yengane neyomzali, i-Timmy isebenzisa i- Nearby Connections. I-Google inikeza lolu hlelo lokuthola amadivayisi nge-Bluetooth ne-WiFi.

Ukubhangqa okuzenzakalelayo ku-Timmy kusebenza ngaphandle kokufaka ikhodi ngesandla: amadivayisi ayatholana futhi athola indawo efanayo yokushintshisana ngokhiye. Uma lokho kwehluleka, kukhona ikhodi yezinhlamvu ezi-4 ongayifaka. Ikhodi yokubhangqa ayilokothi iphume kudivayisi; i-Firestore ibona kuphela i-hash ye-cryptographic (SHA-256) njengesihlonzi sedokhumenti.

Ukuqinisekiswa Kobunikazi Ngokungaziwa

I-Timmy isebenzisa i-Firebase Anonymous Authentication. Lapho ivulwa okokuqala, idivayisi ngayinye ithola i-ID yesikhashana engavezi ubunikazi bomuntu. Ayikho i-akhawunti, ikheli le-imeyili noma iphasiwedi. I-ID ikhona kuphela ukuze kuphoqelelwe imithetho ye-Firestore: amadivayisi aqinisekisiwe kuphela angafunda noma abhale idatha yeseshini.

Ukwakhiwa Kohlelo: Ubani Othumelayo, Ubani Otholayo

I-Timmy inezindlela ezimbili:

Izilawuli ezifana ne-push-to-talk nokuvula noma ukuvala ikhamera zisebenzisa i- DataChannel, esinye isiteshi se-WebRTC esithumela imiyalezo emincane ebethelwe ngqo phakathi kwamadivayisi.

Kungani i-Flutter?

I-Flutter iwuhlaka lwe-Google lokwakha izinhlelo zokusebenza ezinkundleni eziningi. Ku-Timmy, lokho kusho ukuthi ngingabhala ingxenye enkulu yekhodi yokusebenza kanye bese ngiyisebenzisa ku-Android naku-iOS. I-Timmy iyatholakala ku-Android, kanti inguqulo ye-iOS isiseduze nokukhishwa. Ukuphindaphindwa kwekhodi okuncane kusho izindawo ezimbalwa lapho amaphutha angangena khona.

Isifinyezo

Umthetho wobuchwepheshe ulula: i-Timmy kufanele iphathe kuphela idatha eyidinga ngempela. I-WebRTC ivikela imidiya, i-Firebase ixhumanisa ukusethwa kokuxhumana, i-TURN ibona kuphela amaphakethe abethelwe, kanti i-Nearby Connections yenza ukubhangqa kube lula.

Ubuchwepheshe obuhle bugcina buyingxenye engabonakali yokuphila kwansuku zonke. Buyasebenza ngaphandle kokwenza igumbi lengane libe iphrojekthi yamafu.


Ezinye Izihloko