İçindekiler:
- Adım 1: Adım 1: Becerinizin Genel Akışını Düşünün
- 2. Adım: 2. Adım: Giriş Sesi ile Güzel Bir Hoş Geldiniz Bloğu Oluşturun
- Adım 3: Adım 3: IFTTT'yi Ayarlayın
- 4. Adım: 4. Adım: Google Sayfanızı Kurun
- Adım 5: Adım 5: Storyline'da "Son Tweet" JSON Sorgunuzu Ayarlayın
- 6. Adım: İsteğe Bağlı Ekstra: Alexa'nın Okuması için Google E-Tablolardan Rastgele Bir Sonuç Oluşturma
Video: Alexa Becerisi: En Son Tweeti Okuyun (Bu Durumda, Tanrı'nın): 6 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
"Tanrı'nın En Son Tweetini" okumak için bir Alexa Becerisi yaptım -- yani içerik, eski bir Daily Show komedi yazarı tarafından oluşturulan 5 milyondan fazla abone hesabı olan @TweetOfGod'dan. IFTTT (Eğer Bu O Zaman Oysa), bir Google E-Tablosu ve inanılmaz derecede kullanımı kolay Alexa Skill Builder, Storyline'ı kullanır.
Nihai sonuç hakkında bir fikir edinmek için, yeteneği buradan Alexa Cihazınıza ekleyebilir veya Alexa hesabınız ABD'de değilse veya bir Alexa cihazınız yoksa, Beceriyi Storyline'da önizleyebilirsiniz.
Tweetleri okuyan bir Alexa becerisi geliştirmek istiyorsanız, bunu yapmanın nispeten kolay yolu budur. Yalnızca benim şablonlarımı kullanırsanız kodlama gerekmez, ancak yoldan çıkmak istiyorsanız genel olarak kod ve özellikle JSON çağrılarının nasıl yapılandırıldığı hakkında biraz bilgi sahibi olmanıza yardımcı olur. Ancak bu beceriyi farklı bir Twitter hesabı için kopyalıyorsanız, kes ve yapıştırın ötesinde teknik beceriler gerektirmeyecektir.
Neye ihtiyacınız olacak:
- Bir Alexa Cihazı (veya Echoism.io ile bir hesap - harika bir Alexa sanal simülatörü)
- Bir Alexa Geliştirici hesabı
- Bir e-tablo oluşturmak için bir google hesabı
- Storyline'lı bir hesap
- If This Then That (IFTTT) ile bir hesap
- Bir dropbox hesabı veya mp3 dosyalarını güvenli bir sunucuda barındırabileceğiniz bir yer
Bu hesapların tamamı ücretsizdir.
Bir Storyline becerisinin nasıl oluşturulacağının temelleri hakkında çok fazla ayrıntıya girmeyeceğim - sitede blok oluşturmayı, bunları bağlamayı ve koşullar arasında dallanmayı öğrenmek için mükemmel öğreticiler var. Bu eğitim, bu beceriyi geliştirirken öğrendiğim üç şeye odaklanacak: becerinize bir MP3 ses efekti eklemek, twitter içeriğini IFTTT ve Google E-Tablolar aracılığıyla bağlamak ve önceden oluşturulmuş bir dizi seçenekten rastgele bir tweet'i nasıl oluşturacağınız.
(Alexa'ya entegre twitter alma konusundaki mükemmel öğreticisi beni başlatan Alexa Skill Developer George Collier'e büyük bir haykırış.)
Adım 1: Adım 1: Becerinizin Genel Akışını Düşünün
Storyline, çok az veya hiç kodlama olmadan Alexa becerileri oluşturmanın harika bir yoludur. Blokları yerlerine sürükleyip bırakabilir ve anlaşılması kolay bir grafik arabirim aracılığıyla eylemler arasında bağlantılar ve yollar oluşturabilirsiniz. Yahoo Pipes kullandıysanız, arayüzü tanıyacaksınız.
Şimdi, Storyline ile ilgili harika şeylerden biri, Alexa'nın herhangi bir JSON sorgusunun sonuçlarını söylemesini oldukça kolaylaştırmasıdır. JSON sorgularıyla bir Google E-Tablodan veri almak kolaydır. If This Than That is ile bir google e-tablosuna tweet almak çok kolay. Kolay. Kolay. Kolay.
Başlamadan önce tüm becerinizi soyut olarak görselleştirmenin en iyisi olduğunu düşünüyorum.
Yeteneğimi düşündüğümde, birincil amacının sadece en son tweet'i göndermek olduğunu biliyordum. Ama bunu biraz sağlam tasarımla geliştirebilirim (Hikaye çizgisi, yeteneğinizin herhangi bir MP3'ü çalmanıza izin verir) ve bir tweet, insanlara hesabın tadına varmak için yeterli olmayabilir - bazı eski tweetleri stoklayabilir ve izin verebilirim. kullanıcı en geç bunlardan birini duyar. Yani beceri akışı çizimim şöyle görünebilir:
- Kullanıcıyı biraz sözlü metin ve uygun bir giriş sesiyle karşılayın
- En son tweeti oku
- İmza sesi çal
-
Kullanıcıya daha eski bir tweet duymak isteyip istemediklerini sorun
- Evet? Daha eski bir tweet okuyun.
- İmza sesini çal
- Numara? Beceriden çıkın.
"Son Tweet"in kaynağı, If This Then That komut dosyası tarafından beslenen bir google elektronik tablosudur. Bu süreç şuna benziyor:
- @TweetOfGod hesabından yeni bir tweet varsa, elektronik tabloya kopyalanır
- Tweet bir bağlantı veya resim içeriyorsa, elektronik tablo bunu filtreler.
- Tweet bir retweetse, elektronik tablo onu filtreler
- Bu iki filtreden geçen Tweetler daha sonra okunmak üzere işlenir: #, "Hashtag" kelimesi ile değiştirilir ve diğer birkaç karakter, okunabilir eşdeğerleriyle değiştirilir.
- Son tweet, Alex'in okuduğu "en son tweet" hücresine kopyalanır.
2. Adım: 2. Adım: Giriş Sesi ile Güzel Bir Hoş Geldiniz Bloğu Oluşturun
Alexa en son tweeti okumadan önce rastgele dört mizahi göksel sesten birini oluşturuyorum. Bunlar, hikayeye göre Alexa için işlenmiş MP3'lerdir. MP3'lerimi Freesound'da buldum (Ve oradaki her şey gerçekten bedava, ama düzgün bir insan ol ve bir bahşiş bırak).
- MP3'ünüzü indirin. 90 Saniyeden az olması gerekir. Alexa format konusunda özeldir. Bunun MPEG Sürüm 2 ve 48kps olduğunu biliyorsanız, bir sonraki adımı atlayabilirsiniz. Ama bilmiyorsanız veya farklı bir şey varsa, dönüştürmek kolaydır.
- Ses Dönüştürücülerinde işlenmek üzere Storyline'a yükleyin
- İndirdiğiniz sesi bir HTTPS sunucusunda barındırın
3. adım "ŞİMDİ YAPIN?" muhtemelen dosyalarınızı barındırabileceğiniz bir https sunucusuna erişiminiz yok. Endişelenme, bunu dropbox ile yapabilirsin. Bir hesaba ihtiyacınız olacak, ancak yine de ücretsiz bir hesap sorun değil. İşte adımlar:
- https://www.dropbox.com/h adresine gidin ve hesabınıza giriş yapın.
- Dosyaları yükle düğmesini tıklayın
- Dönüştürdüğünüz mp3 dosyasını seçin.
- Paylaş'ı tıklayın
- Bağlantı oluştur'u tıklayın ve Bağlantıyı kopyalayın
- Kopyaladığınız bağlantıda, "dropbox"ı tırnak işaretleri olmadan "dl.dropboxusercontent" ile değiştirin.
- Bu URL'yi kopyala
Şimdi hoş geldiniz bloğunuzun en altına gidecek ve Müzik notası simgesini tıklayacaksınız.
URL'nizi yapıştırın. Rastgele varyasyonlar eklemek istiyorsanız, birkaç MP3 için işlemi tekrarlayın ve URL yapıştırma kutusunun altındaki Hamburger menüsünü tıklayın.
Adım 3: Adım 3: IFTTT'yi Ayarlayın
- IFTTT hesabınıza gidin ve "Yeni bir uygulama oluştur" u seçin
- IF Hizmeti olarak TWITTER'ı seçin.
- Tetikleyici olarak "Belirli bir kullanıcı tarafından yeni tweet'i seçin. Takip etmek istediğiniz hesabın adını girin.
- THEN hizmeti olarak "Google E-Tablolar"ı seçin
- "E-tabloya Satır Ekle" yi seçin
- "Biçimlendirilmiş Satır" Alanında, {{METİN}} alanı dışındaki her şeyi kaldırın.
- Becerinizi yaratın.
Bu, yeni bir elektronik tablo oluşturur ve her yeni tweet çıktığında bir satır ekler. Elektronik tablonuzda tek bir hücre kullanmayı ve her seferinde içeriğinin üzerine yazmayı tercih edebilirsiniz. Bu durumda, 5. adımda tek bir hücreye yazma seçeneğini belirleyebilirsiniz. Güncel olmayan veya haberlere tepki vermeyenleri periyodik olarak bir "Eski Tweetler" elektronik tablosuna taşıdığım için tweet'lerin kaydını tutmayı seviyorum. Bu seçeneği seçerseniz, sayfanızda biraz bakım yapmanız gerekeceğini unutmayın: 2000 satırdan sonra yeni bir tane oluşturulacaktır.
4. Adım: 4. Adım: Google Sayfanızı Kurun
Bu Google E-Tablosu, bu özel becerinin kalbidir, çünkü Alexa ile gerçekten iyi çalışmayan tweetleri (örneğin resimlere atıfta bulunan tweetler veya bağlantı içeren tweetler) filtreler ve salt metin tweetlerini çok daha fazla Alexa yapar -birkaç basit değişiklikle dost.
IFTT'nin birkaç girişle e-tablonuzu oluşturmasına izin verin - bu nedenle, takip ettiğiniz hesaptan birkaç tweet'in oraya inmesini bekleyin, Google E-Tablolar'ı açın ve oluşturulan zamana göre sıralayın. Parlak yeni e-tablonuzu en üstte göreceksiniz. Şimdi, her yeni tweet yeni bir satırda olacak, bu yüzden bağlantı veya resim içeren tweetleri filtreleyecek ve sütundaki sonuncuyu bulmak için çalışacak bir formül oluşturmak istiyoruz.
E-tablomun bu kopyasını kopyalayabilir veya aşağıdaki adımlarla kendinizinkini oluşturabilirsiniz:
- İçinde tweet bulunan sekmeyi "IFTTT'den Canlı" olarak yeniden adlandırın
- E-tabloya "Tweet İşleniyor" adlı bir Sekme ekleyin
- Bu formülü Tweetleri İşleme sekmesinin A8 hücresine ekleyin:
=QUERY('IFTTT'den Canlı'!A3:A2000, "A'nın 'https' içermediği durumlarda A'yı seçin ")
Bu, bağlantısı olmayan tüm tweet'leri işleme sekmenizin A Sütununa çeker.
Şimdi o sütundaki son tweeti bulmamız gerekiyor. Aşağıdaki formülü işleme sekmesinin B7 hücresine yapıştırın:
=INDEX(FILTER(A:A, NOT(ISBLANK(A:A))), SATIR(FILTER(A:A, NOT(ISBLANK(A:A)))))
Şimdi tweet'i Alexa'nın okumasını kolaylaştırmak için birkaç değişiklik yapmak istiyoruz. Bunların hepsi aslında tek bir hücre formülünde olabilir, ancak netlik için onları ayırdım:
İşleme sekmesinin Hücre B6 yapıştırmasında:
=trim(regexreplace(B7, "#", "Hashtag "))
Bu, aşağıdaki hücrenin içeriğine bakar ve # işaretini "Hashtag" kelimesiyle değiştirir.
B5 hücresine bir sonraki yinelemeyi yapıştırın:
=trim(regexreplace(B6, "@", "at "))
Kaptın bu işi.
Hücre B4 yapıştırında:
=trim(regexreplace(B6, "&", "ve "))
B3 Hücresinde:
=kırp(regexreplace(B6, "%", "yüzde "))
B2 hücresine biraz daha karmaşık bir formül koyacağız:
=ArrayFormula(REGEXREPLACE(B3, "([^A-Za-z0-9., !?:;'])", " "))
Bu, Alexa'nın anladığı bir sayı, harf veya noktalama işaretlerinden biri olmayan HERHANGİ BİR ŞEY'den kurtulur.
B1 hücresinde son tweeti kopyalayacağız:
=dizin(B2)
Bu son metindir ve biraz JSON biliyorsanız, o hücreyi yakalamak için hikayeyi programlayabilirsiniz, ancak hikayenin sonunda işleri biraz daha basitleştirmek için, şunu koyarak içeriği "IFTTT'den Canlı" sekmesine kopyalamayı seviyorum. "IFTTT'den Canlı" sekmesindeki A2'deki formül:
='İşleme Merkezi'!B1
Harika. Artık e-tablonuz ayarlandı ve Storyline JSON sorgusu tarafından okunmaya hazır.
Adım 5: Adım 5: Storyline'da "Son Tweet" JSON Sorgunuzu Ayarlayın
- Hikaye yeteneğinizin karşılama bloğuna gidin ve bir "Alexa Ne Diyor" adımı ekleyin.
- "İşte TheTweetOfGod'dan en son tweet:" gibi bir giriş cümlesi ekleyin.
- Varyasyon eklemek için Hamburger Menüsünü kullanın
- Sağdaki küçük oka tıklayın ve "Yeni Blok Oluştur" u seçin
Yeni bloğumu "Tanrı Tweeti Al" olarak adlandırdım. Buradaki görev, birincil sekmenin A2 elektronik tablosu hücresinden en son, filtrelenmiş tweet'i almak. Bunu, Google E-Tablolar API'si aracılığıyla gönderilen bir JSON isteğiyle verileri getirerek yaparsınız: Bu gerçekten süslü bir URL'den başka bir şey değildir.
- Bir JSON isteği eklemek için yeni bloğunuzun en sağındaki küçük simgeye tıklayın.
- API isteğinize bir ad verin. Benimkine "GetGodTweet" adını verdim
-
Bunu yaparak e-tablonuzun URL'sini bulun:
- E-tablonuzda Dosya -> Web'de Yayınla'yı tıklayın.
- Varsayılan değerleri kullanın ve "Yayınla"yı tıklayın
- URL'yi kopyalayın ve bir not dosyasına yapıştırın.
Benim örneğim:
"https://docs.google.com/spreadsheets/d/e/2PACX-1vSUnz43PEORZbBES1lQ8ZlJjH_4voh4Guc6SWrfjeGk2bZlY5EBYzLD5-fT633ygo_35Jz97cuUwKuy/pubhtml" belgenizin ID'sini bu uzunlukta bir şekilde ayıklamanız gerekecek. /d/e ve sonraki / karakter arasındaki bittir. Yani bu durumda:
2PACX-1vSUNz43PEORZbBES1lQ8ZlJjH_4voh4Guc6SWrfjeGk2bZlY5EBYzLD5-fT633ygo_35Jz97cuUwKuy
Bu uzun sayıyı, "SPREASHEET_ID" yazan aşağıdaki url'deki bit ile değiştirirsiniz:
"https://spreadsheets.google.com/feeds/list/SPREADSHEET_ID/od6/public/basic?alt=json"
- Şimdi BU url'yi alın ve Storyline'daki JSON Sorgusunun URL kutusuna yapıştırın.
- "GET" seçeneğini seçin
- "Başlıklar" Kutusunu boş bırakın
- Sonraki kutuda, bu formülü yapıştırarak ilk sekmenizin Hücre A2 içeriğiyle bir değişken oluşturacaksınız:
tweet=api_response.feed.entry.0.title.$t
Değişken "tweet" olarak adlandırılır. İçeriği birincil sekme 0'dan kopyalıyor.
Şimdi, JSON sorgunuzun altına bir "Alexa Says" bloğu eklerseniz ve yalnızca {{tweet}} kelimesini süslü parantezler içine koyarsanız, Alexa hücrenin içeriğini söyleyecektir. Büyük/küçük harfin 4. adımda adlandırdığınız değişkenle eşleştiğinden emin olun!!!
Storyline'da OYNAT düğmesine basın ve becerinizi test edin! "Boş" kelimesini alırsanız, API isteğinizde bir şeyler ters gitti demektir.
Temel beceri için gerçekten bu kadar. Başka bir MP3 ile komik küçük bir ses imzası ekledim ve kullanıcının daha eski bir tweet duymak isteyip istemediğini sordum. Bir sonraki adım size rastgele eski bir tweet oluşturmak için güzel bir numara gösteriyor, ancak becerilerini biraz daha fazla kullanılabilirlik getirmek isteyenler için buzlanma.
6. Adım: İsteğe Bağlı Ekstra: Alexa'nın Okuması için Google E-Tablolardan Rastgele Bir Sonuç Oluşturma
Rastgele bir dizi eski tweet'ten birini oluşturmak istiyorsanız, işte size şık bir numara.
E-tablomda "Eski Tweetler" adında üçüncü bir sekme oluşturdum. Bunların hepsi e-tablomda A1-A36 hücrelerini işgal ediyor
- Storyline'da "Oldertweets" adında yeni bir blok oluşturun
- JSON Sorgu adımı ekleyin
- Bir isim ver
-
URL kutusunda, En Son Tweet adımında Elektronik Tablo Kimliğinizle oluşturduğunuz API URL'sinin aynısını bir varyasyonla kullanın:
/od6/basic/public yazan biti /3/basic/public olarak değiştirin - bu, Sekme 1 yerine TAB 3'ü çağırır
- "AL" ı seçin
- Başlıkları boş bırakın
- Bir sonraki kutuya şunu yapıştırın:
oldtweet=api_response.feed.entry.random.title.$t
"oldtweet" adında yeni bir değişken yarattınız ve bu küçük "rastgele" kelime, JSON sorgusu her çağrıldığında değişkenin değişeceği anlamına gelir.
Başka bir "Alexa Says" adımı ekleyin ve yeni değişkeninizi {{oldtweet}} bu küme parantezleriyle ekleyin. Boom! Rastgele iyilik!
Bu Eğitilebilir Yazıyı beğendiyseniz, lütfen yeteneğime birkaç yıldız verin veya bir inceleme yapın!
Önerilen:
Elektrik ve Gaz Sayacını Okuyun (Belçika/Hollandaca) ve Thingspeak'e Yükleyin: 5 Adım
Elektrik ve Gaz Sayacını Okuyun (Belçika/Hollandaca) ve Thingspeak'e Yükleyin: Enerji tüketiminiz konusunda endişeleriniz varsa veya biraz inek varsa, muhtemelen akıllı telefonunuzdaki yeni dijital sayacınızdaki verileri görmek istersiniz. projesinde mevcut verileri bir Belçikalı veya Hollandalı dijital elektrikten alacağız
Arduino Nano Her Durumda: 4 Adım
Arduino Nano Every Case: Arduino Nano Every'niz için ekstra bir korumaya hiç ihtiyaç duydunuz mu, yoksa hala işlevsel olan ve breadboard dostu olan şık bir kasa mı istediniz? Doğru yere geldiniz çünkü bugün size nasıl yapılacağını göstereceğim
Alexa Becerisi Nasıl Oluşturulur: 10 Adım
Alexa Becerisi Nasıl Oluşturulur: Alexa becerisi nedir? Alexa becerileri uygulamalar gibidir. Alexa uygulamasını veya bir web tarayıcısını kullanarak, akıllı telefonunuza veya tabletinize uygulamaları yüklediğiniz ve kaldırdığınız şekilde becerileri etkinleştirebilir ve devre dışı bırakabilirsiniz. Beceriler, sesle yönlendirilen Alexa yetenekleridir.
Yatağa Gittiğinizde Alexa'nın Telefonunuzun Sesini Kapatın: 6 Adım
Yatağa Gittiğinizde Alexa Telefonunuzun Sesini Kapatın: IFTTT ve yankı cihazını kullanarak yatağa gittiğinizde alexa'nın telefonunuzu sessize almasını sağlayın
Rastgele Bir Müzik ve Işık Üreticisi İnşa Edin ve Tanrı'nın Kanıtını Görün: 4 Adım
Rastgele Bir Müzik ve Işık Üreteci ve Glimpse TANRI'nın Kanıtını İnşa Edin: Gerçekten rastgele sayılar üretmek imkansız görünüyor. Bununla birlikte, sözde rasgele sayılar üretmek için bir mikro denetleyici kullanmak ve daha sonra bunları sesleri ve farklı renkli ışıkları görüntülemek için kullanmak oldukça kolaydır. Üretilen müzik n iken