paint-brush
Gezegenlerarası Fotoğraf Kabini Nasıl İnşa Edilirile@jenksguo
940 okumalar
940 okumalar

Gezegenlerarası Fotoğraf Kabini Nasıl İnşa Edilir

ile Jenks Guo7m2023/04/30
Read on Terminal Reader
Read this story w/o Javascript

Çok uzun; Okumak

Bir fotoğraf kabinini IPFS'ye nasıl entegre edeceğinizi ve web3.storage ile selfie'nizi gezegenler arası hale getirmeyi öğrenin. Fotoğraf kabinlerinin ana parçaları şunlardır: dijital kamera, bazı ışıklar, dokunmatik ekranlı bir bilgisayar, fotoğraf çekmek için kamerayı kontrol eden bazı yazılımlar. Sparkbooth adında bir fotoğraf kabini yazılımı oluşturmak için hafif bir node.js uygulamasını nasıl kullanacağınızı öğrenin.
featured image - Gezegenlerarası Fotoğraf Kabini Nasıl İnşa Edilir
Jenks Guo HackerNoon profile picture
0-item
1-item
2-item

Bir fotoğraf kabinini IPFS'ye nasıl entegre edeceğinizi ve web3.storage ile selfie'nizi gezegenler arası hale getirmeyi öğrenin.


Web Zirvesi 2022 sırasında, Filecoin etkinlikleri ve yaratıcı ekibi, Web3, InterPlanetary Dosya Sistemi (IPFS) ve Filecoin ağının dağıtılmış depolama çözümleri hakkında daha fazla bilgi edinmek isteyen 3500'den fazla ziyaretçinin ilgisini çeken kongrede muhteşem bir sergi standı kurdu.

Lizbon, Portekiz'deki Web Zirvesi 2022'deki Filecoin standının fotoğrafı


Filecoin, dosyaları IPFS Protokolü aracılığıyla Web3'te depolamak ve kalıcı kılmak için geniş bir çözüm yelpazesi sunar. En popüler ve kullanımı kolay olanlardan biri, geliştiriciler için “ IPFS ve Filecoin'e tek API çağrısı” çözümü olan web3.Storage'dır.


IPFS, eşler arası bir ağda dosya paylaşımına ve dağıtılmış bir bilgisayar ağında veri paylaşımına izin veren bir web protokolüdür. Filecoin, bir depolama pazarının IPFS'deki dosyaları uzun süre ve çok az maliyetle sürdürmesini sağlayan açık kaynaklı bir protokol oluşturdu. Bu çözüm, Web3'teki depolama sorununu çözüyor ve bildiğimiz şekliyle interneti, gezegenler arası iletişim gibi zorlukların üstesinden gelebilecek şekilde geliştiriyor.


Gezegenler arası iletişim selfieleri de içermelidir ! Web3.storage'a bağlanmak ve selfie'nizi IPFS'ye yüklemek için Sparkbooth adında bir fotoğraf kabini yazılımı oluşturmak için hafif bir node.js uygulamasını nasıl kullanacağınızı öğrenin.

O nasıl çalışır?

Fotoğraf kabinlerinin ana parçaları şunlardır: bir dijital kamera, bazı ışıklar, dokunmatik ekranlı bir bilgisayar, fotoğraf çekmek için kamerayı kontrol eden bazı yazılımlar ve bunları IPFS ve Filecoin ağına yükleme yeteneği.

Fotoğraf kabini operasyonunu açıklayan bir diyagram

Olayların akışı şuna benzer:


  1. Dokunmatik ekran, fotoğraf çekmek için kullanıcıdan komutlar alıyor


  2. Photo Booth yazılımı (Sparkbooth olarak adlandırılır) harekete geçmek için kamerayla konuşacak


  3. Sparkbooth fotoğrafı yerel olarak bilgisayarda saklar


  4. Sparkbooth kullanıcıya bir sunucuya göndermek isteyip istemediklerini sorar (web3.storage aracılığıyla)


  5. Sparkbooth, fotoğrafı, kullanıcı adını, şifreyi ve başarı mesajını bir API çağrısında * adresine gönderir. fil-fotoğraf-kabin-yükleyici *özel nodejs uygulaması


  6. fil-photobooth-uploader uygulaması şunları yapacaktır:

    1. kullanıcı adını ve şifreyi doğrula

    2. fotoğrafın formatını neye göre değiştirin web3.depolama kabul eder

    3. API jetonunu/anahtarını sistemden alır ve gönderir __web3. __Depolamak

    4. w__ eb3.storage __ fotoğrafı IPFS ağına gönderir ve Filecoin'e yedekler

    5. w__ eb3.storage __ IPFS İçerik Kimliğini (CID) sunucuya geri döndürecektir. fil-fotoğraf-kabin-yükleyici

    6. fil-fotoğraf-kabin-yükleyici CID URL'sinin http sürümünü aracılığıyla oluşturacak web3.depolama IPFS ağ geçidi

    7. fil-photo-booth-uploader, Sparkbooth 7'ye bir başarı mesajı döndürüyor


  7. Sparkbooth bir başarı mesajı alır: "Fotoğrafınız IPFS'ye şu adresten gönderilir: web3.depolama . :-)” ve fotoğrafın URL'si


  8. Sparkbooth, ekranda oluşturulan QR kodunu görüntüler


Görünüm? Tıpkı normal bir fotoğraf kabini gibi:

IPFS CID URL'sinin bir örneği:

https://bafybeiei7zadrztflc6krunhvqr3umzre7xjxfzvmyjs2ob2w7yykq63ea.ipfs.w3s.link/20221104172648.jpg

Bir örnek:

Bir selfienin CID'sini içeren QR kodu


Akışın tamamı şöyle görünür:

Selfie IPFS'ye yükleniyor

IPFS ve CID'ler hakkında daha fazla bilgi edinmek için lütfen şu adresi ziyaret edin: proto.okul .

Adım adım rehber

Önkoşullar

Bu öğreticiyi tamamlamak için ihtiyaç duyabileceğiniz birkaç şey vardır:

  • 📸 Kamera - herhangi bir modern Canon
  • 💻 Bilgisayar - dokunmatik ekranlı hepsi bir arada masaüstü veya dokunmatik ekranlı dizüstü bilgisayar
  • 👨🏻‍💻 Fotoğraf Kabini Yazılımı - Sparkbooth 7
  • 🤖 Bir uygulama sunucusu - Kolaylık sağlamak için Heroku'yu kullanıyorum
  • 📦 IPFS Etkinleştirilmiş Ürün - bir web3.storage hesabı
  • 🌎 İnternet bağlantısı - WWW ile kablolu veya kablosuz (wifi) konuşmanın bir yolu\

Adım 1, Web3.Storage Kurulumu

  1. Oluşturmak web3.depolama hesabınız aracılığıyla Github hesap veya e-posta

  1. Hesap > API Jetonu'na gidin

  1. Yeni bir API Token oluşturun, ona istediğiniz adı verin (örn. Filecoin Web Summit 2022)

  1. Kopyala düğmesini kullanarak API anahtarını kopyalayın

  1. Bunu daha sonra kullanmak üzere kaydedin Bunu fil-photo-booth-uploader uygulamasına bir ortam değişkeni olarak yerleştirmeniz gerekecektir.

2. Adım: nodejs uygulama dağıtımı

Sparkbooth 7 ve web3.storage'ın güzel bir şekilde konuşabilmesi için dillerini çevirme konusunda biraz yardıma ihtiyacımız olacak. Nodejs uygulaması bunu başarmamıza yardımcı olacak. Bir sunucuda barındırılması gerekecek ve bunun için Heroku kullanıyoruz (Barındırmanın Web3 yerel bir yolunu biliyorsanız, lütfen bana DM gönderin. Denemeyi çok isterim).


  1. İlk önce şuraya git: github.com (Hesabınız yoksa yeni bir hesap açın)

  1. Ziyaret edin Filecoin Fotoğraf Kabini Yükleyici ve ardından Çatal'a tıklayın. Bu, kaynak kodunu kendi hesabınıza veya deponuza kopyalamanıza ve onu Heroku'ya bağlamanıza olanak tanır.

  1. Şununla kaydolun: Heroku hesabı . Heroku, uygulamaları veya sunucuları neredeyse ücretsiz olarak çalıştırmaya yardımcı olan merkezi bir geliştirici platformu olan AWS'ye benzer.

  1. Yeni bir uygulama oluşturun ve etkinliğin adını buna girin.

  1. Muhtemelen her etkinlik için yeni bir uygulamaya ihtiyacımız olacak.

  1. "Dağıtım yöntemi" altında GitHub'u seçin ve ardından GitHub hesabınızda oturum açın. Uygulamayı oluşturmak ve sunucuyu çalıştırmak için Heroku'ya kodu kendi içine çekmesi için yetki verin.

  1. "GitHub'a Bağlan" altında, az önce çatalladığınız depo adını (ör. fil-photo) arayın ve ardından kod deposunu bağlayın.

  1. Tüm ayarları bırakın ve ilk yapıyı başlatmak için “Dube Dağıt”a tıklayın. Heroku, uygulama türünü tanıyabilecek kadar akıllıdır. Sonraki: inşa edin ve dağıtın.

  1. Ancak sunucu çalışmaya başlamadan önce kullanıcı adını, şifreyi ve web3.depolama Sunucu ortamındaki API Token. Heroku, onları internete maruz bırakmadan güvenli bir şekilde erişebilir. “Ayar”a ve ardından “Yapılandırma Değişkenleri”ne gidin.

  1. Aşağıdaki yapılandırmaları girin, SPARKBOOTH_PASSWORD, SPARKBOOTH_USER, W3S_API_TOKEN'i şifre, kullanıcı adı ve şifreyle değiştirin. web3.depolama sırasıyla API jetonu. İsim tam olarak yukarıdaki gibi olmalıdır.

  1. Uygulama şu anda çalışıyor olmalı! Daha sonra sparkbooth 7'ye eklenecek URL'yi bulmak için "Ayarlar" altında "Etki Alanları"na gidebilirsiniz.

Adım 3: Sparkbooth 7 Kurulumu

Son adım, kurulum akışını tamamlamak için özel nodejs uygulamamızla konuşmak üzere fotoğraf kabini dizüstü bilgisayarındaki yazılımı hazırlamaktır. \

  1. Git Sparkbooth.com . İndirmek Kıvılcım kabini 7 DSLR'ler , ödemek lisans ücreti veya denemeyi kullanın.

  1. Sparkbooth'u açın ve satın alma işleminizi onaylayın.

  1. Uygulamayı açtığınızda ekranı kaplayacaktır ancak çıkmak için “ESC” tuşuna basabilirsiniz. Sol üstteki ayarlara gidin:

  1. “Hesaba Gönder” seçeneğini yapılandırın ve ardından kullanmak istediğiniz kullanıcı adını ve şifreyi girin. "Hizmet URL'si"nin Heroku uygulama adresi + "/upload-w3s" olması gerekir. (Örneğin http://fil-photo-booth-uploader.herokuapp.com:443/upload-w3s)

  1. Bağlantıyı test butonunu kullanarak test edebilirsiniz. Bu, bir başarısızlık mesajıyla sonuçlanacaktır ancak API çağrısı yine de Heroku uygulamasına gidecek ve cihazınıza bir test fotoğrafı yerleştirecektir. web3.depolama hesap. Web3.storage hesabınızdaki test görüntüsünü kontrol edebilirsiniz. “Fotoğraf kabini testi” fotoğrafını görebiliyorsanız kurulum başarılı demektir! Tıklamak Burada kontrol etmek.

w3up beta yakında geliyor

Bu uygulama 2022'de oluşturuldu ve mevcut web3.storage API'lerini kullanıyor. Bu yazının yazıldığı sırada web3.storage'da yeni beta w3up API'leri mevcuttu. birden çok çerçeve için ön uç web bileşenlerini içerir . Bu, IPFS kullanan uygulamalar yazmaya başlamayı daha da kolaylaştıracaktır.

Bazı iyileştirme önerileri

Uygulama mükemmel değil! Geliştirilebilecek birkaç alan var:


  1. Güvenlik

Bu sadece zemini göstermek için bir hile olsa da, nodejs uygulamasının güvenliği ideal değildir. Uygulama mantığında şifrelerin ve kullanıcı adının doğrulanması tercih edilmez. Çağrıyı uygulamamıza iletmeden önce uygulamayı, başlıktaki yetkilendirmeyi doğrulayan bir güvenlik duvarı veya API ağ geçidinin arkasına koymamız gerektiğine inanıyorum.


  1. Deneyim

Sparkbooth 7 harika, ancak kullanıcı arayüzü oldukça sınırlayıcı görünüyor. Bunu biraz daha özelleştirebilsek iyi olur. Belki açık kaynaklı bir fotoğraf kabini yazılımı bunu başarmamıza yardımcı olabilir?


  1. Son Fotoğraf Galerisi

Potansiyel olarak ziyaretçilere en son fotoğrafları göstermek için ayrı bir bilgisayar kullanabiliriz. Kendilerine e-postayla göndermek istedikleri fotoğrafı seçebilir, QR kodunu tekrar görüntüleyebilir veya sosyal medyada paylaşabilirler. Bu, bir ön uç geliştirici için çok harika bir proje olabilecek fil-photo-booth-uploader için bir ön uç oluşturmayı içerecektir.


  1. Merkezi olmayan bir uygulama arka ucu kullanın. Belki Fluence veya IPVM gibi biri yardımcı olabilir.

Çözüm

Üç günlük Web Zirvesi sırasında, Filecoin fotoğraf standında kongredeki internet bağlantısı sorunları nedeniyle %99 çalışma süresi ve %1 kesinti yaşandı. Toplamda fotoğraf kabini Filecoin Ağında 934 fotoğraf yayınladı. Bu, web3.storage'ın çok kullanışlı hizmeti sayesinde gezegenler arası yolculuğa hazır neredeyse bin selfie anlamına geliyor!

Fotoğraf kabini de ünlüdür. Üçüncü gün CNN'den bir muhabir de stantla röportaj yaptı (evet, stant meşhur oluyor... ben değil).


CNN muhabiri, Lizbon, Portekiz'deki Web Zirvesi'nde Filecoin Fotoğraf Kabininde röportaj yapıyor


Etkinlikleriniz, toplantılarınız, buluşmalarınız, partileriniz için veya sadece eğlence için kendi gezegenler arası fotoğraf standınızı oluşturmak için lütfen bu kılavuzu kullanmaktan çekinmeyin.


Filecoin ağı artık 16EiB depolama kapasitesine sahip ve üzerinde 300PiB'den fazla veri depolanıyor. Bu projeye katkıda bulunmanın veya bu projeyi kullanmanın birçok yolu vardır. Dahil olma hakkında daha fazla bilgi edinin Burada .