Photo booth tetikleyicileri: düğmeler, ışıklar ve webhook’lar

Bir kabin nadiren tek başına çalışır: bir arcade düğmesi oturumu başlatır, geri sayımda stüdyo ışıkları çakar, gruplar arasında bir Hue köprüsü salon ışığını geri getirir. Froozbooth fiziksel düğmeleri kutudan çıktığı gibi destekler ve oturumun her adımını kendi donanımınıza gönderir. İşte neler gönderdiği ve nasıl.

Fiziksel düğmeler: arcade, pedal, sunum kumandası

Bir düğmeyi USB ile takın, kurulacak hiçbir şey olmadan çalışır. Karşılama ekranında basış oturumu başlatır; canlı görüntüde fotoğrafı çeker veya videoyu durdurur. Başka yerlerde hiçbir şey yapmaz, çünkü o ekranlar tek bir düğmenin veremeyeceği bir seçim ister.

  • Klavye kodlayıcıları, USB pedallar ve sunum kumandaları: Space, Enter, Page Up/Down, ok tuşları, F13 ile F15 veya oynat/duraklat.
  • Windows’un oyun kumandası olarak gördüğü “sıfır gecikmeli” arcade kodlayıcılar: herhangi bir düğme.
  • Arası 400 ms’den kısa basışlar bir kez sayılır; böylece sekmeli bir kontak iki fotoğraf çekmez.

Tetikleyiciler: her olayda bir webhook ya da program

Geri kalan her şey için tetikleyiciler var. Her biri kabin yönetiminde kurulur, seçtiğiniz olayları dinler ve bir URL çağırır ya da kabin PC’sinde bir program başlatır.

  • WebhookGizli anahtarınızla HMAC-SHA256 ile imzalanmış, JSON gövdeli bir HTTP POST. Başlıklar: X-Froozbooth-Event, X-Froozbooth-Timestamp, X-Froozbooth-Signature.
  • ProgramKabin PC’sinde mutlak yol olarak verilen ve donanım servisi izin listesinde yer alan bir yürütülebilir dosya. Adlandırılmış argümanlar: --event, --session, --booth-event, --ts, --device, ardından olay verisi.

Dinleyebileceğiniz 17 olay

  • Oturum: session.start, countdown.start, shot.taken, shots.done, compose.done, session.end, session.canceled.
  • Çıktı: print.sent, print.done, share.email.sent, share.qr.shown.
  • Hatalar: error.capture, error.compose, error.print, error.camera, error.disk, error.license.

Her mesaj bir biçim sürümü (v), olay adı, ISO 8601 zaman damgası, oturum kimliği, etkinlik kimliği, makine kimliği ve olaya özgü bir veri nesnesi taşır.

Canlı bir gece için tasarlandı

  • Bir tetikleyici oturumu asla geciktirmez: yanıtsız 2 saniye sonra kabin devam eder.
  • 0,5, 2 ve 5 saniye sonra üç yeniden deneme. Daha geç olursa flaş pozdan sonra gelir.
  • 60 saniyeden eski bir olay kaydedilir, yeniden oynatılmaz: yeniden başlatmadan sonra yemeğin ortasında flaş çakmaz.
  • Test düğmesi, kapılar açılmadan bir saat önce örnek bir olay gönderir ve yanıtı gösterir.
  • Son 200 gönderim durum, kod ve gecikmeyle kaydedilir ve CSV olarak dışa aktarılır.

Hazır tarifler

  • Geri sayımın başında, bir DMX veya Art-Net ağ geçidi üzerinden stüdyo flaşı.
  • Her çekimde bir darbe ya da bir ses.
  • Oturum sonunda, bir Philips Hue köprüsü üzerinden ortam ışığına dönüş.

Kameralar, yazıcılar ve PC’ler: Froozbooth’un doğrudan yönettiği donanım donanım sayfasında. Canon ve Nikon için DSLR photo booth yazılımı: çalışan kameralar ve yazıcılar

Sık sorulan sorular

Bir arcade düğmesi Froozbooth ile çalışır mı?

Evet. USB ile takılan bir klavye kodlayıcı ya da “sıfır gecikmeli” kodlayıcı kurulum olmadan çalışır: karşılama ekranında basış oturumu başlatır, canlı görüntüde fotoğrafı çeker.

Froozbooth DMX ışıklarını veya bir sis makinesini kontrol edebilir mi?

Bir tetikleyici aracılığıyla. Froozbooth olayı bir webhook’a ya da programa gönderir; cihazı DMX veya Art-Net ağ geçidiniz, Hue köprünüz ya da betiğiniz sürer.

Bir webhook’un gerçekten kabinden geldiğini nasıl doğrularım?

Ham istek gövdesinin HMAC-SHA256 değerini gizli anahtarınızla hesaplayın ve X-Froozbooth-Signature başlığıyla karşılaştırın. İmzalı gövdenin içindeki ts alanı eski istekleri reddetmenizi sağlar.

Yavaş bir tetikleyici misafirleri bekletebilir mi?

Hayır. Bir tetikleyiciye 2 saniye tanınır; bunun ötesinde kabin devam eder ve arka planda yeniden dener.

Fotoğraf çekmek için ayak pedalı veya sunum kumandası kullanabilir miyim?

Evet. Froozbooth, Space, Enter, Page Up/Down, bir ok tuşu, F13 ile F15 veya oynat/duraklat gönderdikleri sürece USB pedalları ve sunum kumandalarını kurulum olmadan tanır. Karşılama ekranında basış oturumu başlatır, canlı görüntüde fotoğrafı çeker veya videoyu durdurur. Diğer ekranlarda hiçbir şey yapmaz, çünkü onlar tek bir düğmenin veremeyeceği bir seçim ister.

Bir misafir photo booth düğmesine iki kez basarsa ne olur?

Froozbooth, arası 400 ms’den kısa basışları bir sayar; böylece sekmeli bir kontak ya da hızlı bir çift basış iki fotoğraf çekmez. Mod seçmek gibi bir seçim isteyen bir ekranda basış hiçbir şey yapmaz.

Hangi photo booth olayları bir webhook’u tetikleyebilir?

Froozbooth 17 olay sunar: oturum adımları (session.start, countdown.start, shot.taken, shots.done, compose.done, session.end, session.canceled), çıktılar (print.sent, print.done, share.email.sent, share.qr.shown) ve hatalar (error.capture, error.compose, error.print, error.camera, error.disk, error.license). Her tetikleyici yalnızca seçtiğiniz olayları dinler. Her mesaj bir biçim sürümü, olay adı, ISO 8601 zaman damgası, oturum, etkinlik ve makine kimlikleri ve olaya özgü veri taşır.

Bir fotoğraf çekildiğinde kabin PC’sinde bir betik çalıştırabilir miyim?

Evet, bir program tetikleyicisiyle. Froozbooth, shot.taken gibi seçtiğiniz olaylarda kabin PC’sinde bir yürütülebilir dosya başlatır; mutlak yol olarak verilmeli ve donanım servisi izin listesinde yer almalıdır. Adlandırılmış argümanları (--event, --session, --booth-event, --ts, --device) ve ardından olay verisini alır.

Misafirler gelmeden önce bir photo booth tetikleyicisini nasıl test ederim?

Kabin yönetimindeki Test düğmesini kullanın: Froozbooth örnek bir olay gönderir ve yanıtı gösterir. Son 200 gönderim durum, kod ve gecikmeyle kaydedilir ve CSV olarak dışa aktarılır. 60 saniyeden eski bir olay yeniden oynatılmak yerine kaydedilir; böylece yeniden başlatma yemeğin ortasında bir flaş çaktırmaz.

Yazıcı veya kamera arızalandığında photo booth beni uyarabilir mi?

Evet, hata olaylarında bir tetikleyiciyle: error.print, error.camera, error.capture, error.compose, error.disk ve error.license. Uyarıyı istediğiniz yere almak için onu kendi servisinizdeki bir webhook’a yönlendirin. Panelin Makineler sayfası da her kabinin durumunu canlı gösterir ve telefonunuzun ana ekranına ekleyebilirsiniz.

Sıradaki etkinliğe hazır mısınız?