Мазмұны:

Alexa Skill: Соңғы твиттерді оқыңыз (бұл жағдайда Құдайдың): 6 қадам
Alexa Skill: Соңғы твиттерді оқыңыз (бұл жағдайда Құдайдың): 6 қадам

Бейне: Alexa Skill: Соңғы твиттерді оқыңыз (бұл жағдайда Құдайдың): 6 қадам

Бейне: Alexa Skill: Соңғы твиттерді оқыңыз (бұл жағдайда Құдайдың): 6 қадам
Бейне: if you dislike tommy sotomayor you also dislike the black menosphere... and here's why 2024, Мамыр
Anonim
Alexa шеберлігі: соңғы твиттерді оқыңыз (бұл жағдайда Құдайға арналған)
Alexa шеберлігі: соңғы твиттерді оқыңыз (бұл жағдайда Құдайға арналған)

Мен Alexa дағдысын жасадым, «Құдайдың соңғы твитін» - мазмұнын, яғни @TweetOfGod, бұрынғы Daily Show комедия жазушысы жасаған 5 миллионнан астам абоненттік есептік жазбаны оқу үшін. Ол IFTTT (If This That That), Google Spreadsheet және қолдануда керемет қарапайым Alexa Skill Builder, Storyline пайдаланады.

Түпкі нәтиже туралы түсінік алу үшін сіз мұнда Alexa құрылғысына шеберлікті қоса аласыз немесе егер сіздің Alexa есептік жазбаңыз АҚШ -та болмаса немесе сізде Alexa құрылғысы болмаса, Storyline -да шеберлікті алдын ала қарай аласыз.

Егер сіз твиттерді оқитын Alexa дағдысын қалыптастырғыңыз келсе, мұны істеудің қарапайым әдісі. Егер сіз менің шаблондарымды қолдансаңыз, кодтаудың қажеті жоқ, бірақ егер сіз жолдан кеткіңіз келсе, бұл жалпы код туралы, атап айтқанда, JSON қоңырауларының құрылымы туралы аздап білуге көмектеседі. Бірақ егер сіз бұл шеберлікті басқа Twitter есептік жазбасына қайталайтын болсаңыз, онда сізге техникалық дағдылар қажет емес.

Сізге не қажет:

  • Alexa құрылғысы (немесе Echoism.io тіркелгісі - тамаша Alexa виртуалды тренажері)
  • Alexa Developer есептік жазбасы
  • Электрондық кестені құруға арналған Google есептік жазбасы
  • Storyline бар шот
  • Егер бұл солай болса (IFTTT) бар шот
  • Dropbox есептік жазбасы немесе mp3 файлдарын қауіпсіз серверде орналастыруға болатын орын

Бұл шоттардың барлығы ақысыз.

Мен сюжеттік желінің дағдыларын қалай құрудың негіздері туралы егжей -тегжейлі айтпаймын - сайтта блоктар жасауды, оларды қосуды және шарттар арасында тарауды үйренуге арналған тамаша оқулықтар бар. Бұл оқулықта мен осы дағдыларды қалыптастыруда үйренген үш нәрсеге назар аударамын: сіздің дағдыларыңызға MP3 дыбыстық әсерін алу, IFTTT және Google Sheets арқылы твиттер мазмұнын қосу және алдын ала жасалған опциялар жиынтығынан кездейсоқ твит құру әдісі.

(Және Alexa Skill әзірлеушісі Джордж Коллиерге қатты дауыстап айтылды, оның твиттерді Alexa -ға біріктіру бойынша тамаша оқулығы мені бастады.)

1 -қадам: 1 -қадам: Сіздің дағдыларыңыздың жалпы ағымы туралы ойланыңыз

1 -қадам: Сіздің дағдыларыңыздың жалпы ағымы туралы ойланыңыз
1 -қадам: Сіздің дағдыларыңыздың жалпы ағымы туралы ойланыңыз

Оқиға желісі - бұл кодтаусыз немесе мүлде жоқ Alexa дағдыларын қалыптастырудың керемет әдісі. Сіз блоктарды апарып тастауға және түсінікті графикалық интерфейс арқылы әрекеттер арасындағы байланыстар мен жолдарды орнатуға болады. Егер сіз бұрын Yahoo Pipes қолдансаңыз, сіз интерфейсті танитын боласыз.

Storyline -дегі керемет нәрселердің бірі - бұл Alexa -ға кез келген JSON сұрауының нәтижелерін айтуды жеңілдетеді. Google электрондық кестесінен деректерді алу JSON сұрауларымен оңай. Google -дың электрондық кестесіне твиттер алу - егер бұл оңай болса. Оңай. Оңай. Оңай.

Менің ойымша, сіз бастамас бұрын өзіңіздің барлық дағдыларыңызды абстрактілі түрде елестетуіңіз керек.

Мен өз шеберлігім туралы ойлана отырып, оның негізгі мақсаты - соңғы твиттерді жеткізу екенін білдім. Бірақ мен мұны сәл дыбыстық дизайнмен жақсарта алар едім (Storyline сіздің кез келген MP3 -ді ойнауға мүмкіндік береді), және бір твит адамдарға есептік жазбаның дәмін беру үшін жеткіліксіз болуы мүмкін - мен ескі твиттердің кейбірін жинап, жібере аламын. пайдаланушы соңғысынан кейін біреуін естиді. Менің шеберлік схемасы келесідей болуы мүмкін:

  1. Қолданушыны сәл айтылған мәтінмен және сәйкес кіріспе дыбыспен қарсы алыңыз
  2. Соңғы твиттерді оқыңыз
  3. Қолтаңба дыбысын ойнату
  4. Пайдаланушыдан ескі твит тыңдағысы келетінін сұраңыз

    1. Иә? Ескі твит оқыңыз.
    2. Қолтаңбаның дыбысын ойнату
    3. Жоқ? Дағдыдан шығыңыз.

«Ең соңғы твит» көзі - бұл «Егер бұл сол кезде» сценарийі арқылы берілетін Google электрондық кестесі. Бұл процесс келесідей көрінеді:

  1. Егер @TweetOfGod есептік жазбасынан жаңа твит болса, ол электрондық кестеге көшіріледі
  2. Егер твиттерде сілтеме немесе сурет болса, электрондық кесте оны сүзеді
  3. Егер твит ретвит болса, электрондық кесте оны сүзеді
  4. Осы екі сүзгіден алынған твиттер оқу үшін өңделеді: # «хэштег» сөзімен ауыстырылады, ал басқа бірнеше таңбалар оқылатын эквиваленттермен ауыстырылады.
  5. Соңғы твит Алекс оқитын «соңғы твит» ұяшығына көшіріледі

2 -қадам: 2 -қадам: Кіріспе дыбысы бар жақсы қарсы алу блогын жасаңыз

2 -қадам: Кіріспе дыбысы бар жақсы қарсы алу блогын жасаңыз
2 -қадам: Кіріспе дыбысы бар жақсы қарсы алу блогын жасаңыз
2 -қадам: Кіріспе дыбысы бар жақсы қарсы алу блогын жасаңыз
2 -қадам: Кіріспе дыбысы бар жақсы қарсы алу блогын жасаңыз
2 -қадам: Кіріспе дыбысы бар жақсы қарсы алу блогын жасаңыз
2 -қадам: Кіріспе дыбысы бар жақсы қарсы алу блогын жасаңыз

Alexa соңғы твиттерді оқымас бұрын, мен кездейсоқ төрт күлкілі аспан дыбысының бірін шығарамын. Бұл сюжет желісі бойынша Alexa үшін өңделген MP3. Мен MP3 файлдарымды Freesound сайтынан таптым (және бұл жерде бәрі ақысыз, бірақ лайықты адам болыңыз және кеңес беріңіз).

  1. MP3 жүктеп алыңыз. Ол 90 секундтан аз болуы керек. Alexa форматқа ерекше назар аударады. Егер сіз MPEG нұсқасы 2 және 48кпс екенін білсеңіз, келесі қадамды өткізіп жіберуге болады. Бірақ егер сіз білмесеңіз немесе басқа нәрсе болса, оны түрлендіру оңай.
  2. Аудио түрлендіргіште өңдеу үшін оны Storyline -ге жүктеңіз
  3. Жүктелген аудионы HTTPS серверінде орналастырыңыз

Егер сіз 3 -қадамда болсаңыз, «ҚАЗІР НЕ ІСТЕҢІЗ?» Сізде файлдарды орналастыруға болатын https серверіне кіру мүмкін емес. Уайымдамаңыз, мұны dropbox көмегімен жасауға болады. Сізге есептік жазба қажет, бірақ ақысыз, бәрі жақсы. Міне, қадамдар:

  1. Https://www.dropbox.com/h сайтына өтіп, тіркелгіңізге кіріңіз.
  2. Файлдарды жүктеу түймесін басыңыз
  3. Сіз түрлендірген mp3 файлын таңдаңыз.
  4. Бөлісу түймешігін басыңыз
  5. Сілтеме жасау және Сілтемені көшіру түймешігін басыңыз
  6. Сіз көшірген сілтемеде «ашылмалы жәшікті» тырнақшасыз «dl.dropboxusercontent» дегенге ауыстырыңыз.
  7. URL мекенжайын көшіру

Сіз енді сәлемдесу блогының төменгі жағына өтіп, музыкалық нота белгішесін нұқасыз.

URL мекенжайын қойыңыз. Егер сіз кездейсоқ вариация қосқыңыз келсе, процедураны тағы бірнеше MP3 үшін қайталаңыз және URL қою жолағының астындағы Гамбургер мәзірін басыңыз.

3 -қадам: 3 -қадам: IFTTT орнату

3 -қадам: IFTTT орнатыңыз
3 -қадам: IFTTT орнатыңыз
  1. IFTTT есептік жазбасына өтіп, «Жаңа апплет жасау» тармағын таңдаңыз.
  2. IF қызметі ретінде TWITTER таңдаңыз.
  3. «Белгілі бір пайдаланушының триггер ретінде жаңа твитін таңдаңыз. Жазылатын есептік жазбаның атын енгізіңіз
  4. THEN қызметі ретінде «Google Sheets» таңдаңыз
  5. «Электрондық кестеге жол қосу» таңдаңыз
  6. «Пішімделген жол» өрісінде {{TEXT}} өрісінен басқасының бәрін алып тастаңыз.
  7. Сіздің шеберлігіңізді жасаңыз.

Бұл жаңа электрондық кесте жасайды және жаңа твит шыққан сайын жолды қосады. Сіз электрондық кестеде бір ұяшықты қолдануды жөн көресіз және әр уақытта оның мазмұнын қайта жазасыз. Бұл жағдайда, 5 -қадамда сіз бір ұяшыққа жазу опциясын таңдай аласыз. Мен твиттердің жазбасын жүргізуді ұнатамын, себебі мен мезгіл -мезгіл өзекті емес немесе жаңалықтарға жауап бермейтіндерді «Ескі твиттер» электрондық кестесіне ауыстырамын. Есіңізде болсын, егер сіз бұл опцияны таңдасаңыз, парағыңызда техникалық қызмет көрсету қажет болады: жаңасы 2000 жолдан кейін жасалады.

4 -қадам: 4 -қадам: Google парағын орнатыңыз

4 -қадам: Google парағын орнатыңыз
4 -қадам: Google парағын орнатыңыз
4 -қадам: Google парағын орнатыңыз
4 -қадам: Google парағын орнатыңыз
4 -қадам: Google парағын орнатыңыз
4 -қадам: Google парағын орнатыңыз

Бұл Google парағы-бұл шеберліктің жүрегі, өйткені ол Alexa-мен жақсы жұмыс істемейтін твиттерді сүзеді (мысалы, суреттерге сілтеме бар твиттер немесе сілтемелері бар твиттер) және ол тек мәтіндік твиттер жасайды. -бірнеше қарапайым ауыстырулармен достық.

IFTT -ге электрондық кестені бірнеше жазбалармен жасауға рұқсат етіңіз - сондықтан сіз бақылайтын есептік жазбадан бірнеше твиттерді күтіңіз, Google Sheets -ті ашыңыз және жасалған уақыт бойынша сұрыптаңыз. Сіз жаңа жылтыр электрондық кестені жоғарыдан көресіз. Енді, әрбір жаңа твит жаңа қатарда болады, сондықтан біз сілтемелері немесе суреттері бар твиттерді сүзіп, бағаннан соңғысын табу үшін жүгіретін формула құрғымыз келеді.

Сіз бұл кестенің көшірмесін көшіре аласыз немесе келесі қадамдармен өзіңіздің жеке көшірмеңізді жасай аласыз:

  1. Қойындының атын твиттері бар «IFTTT -тен тікелей эфир» деп өзгертіңіз.
  2. Электрондық кестеге «Твиттерді өңдеу» деп аталатын қойынды қосыңыз
  3. Бұл формуланы твиттерді өңдеу қойындысының A8 ұяшығына қосыңыз:

= QUERY ('IFTTT -ден тікелей эфир'! A3: A2000, «A -де» https «жоқ жерде таңдаңыз)

Бұл сілтеме жоқ барлық твиттерді өңдеу қойындысының А бағанына тартады.

Енді біз осы бағаннан соңғы твиттерді табуымыз керек. Келесі формуланы өңдеу қойындысының B7 ұяшығына қойыңыз:

= INDEX (СҮЗГІ (A: A, NOT (ISBLANK (A: A)))), ROWS (FILTER (A: A, NOT (ISBLANK (A: A))))))

Енді біз твиттерді оқуды жеңілдету үшін бірнеше алмастыру жасағымыз келеді. Мұның бәрі бір ұяшық формуласында болуы мүмкін, бірақ мен оларды түсінікті етіп бөлдім:

B6 ұяшығына «Өңдеу» қойындысын қойыңыз:

= кесу (regexreplace (B7, «#», «Hashtag»))

Бұл төмендегі ұяшықтың мазмұнына қарайды және # белгісін «хэштег» сөзімен ауыстырады

B5 ұяшығына келесі қайталауды қойыңыз:

= кесу (regexreplace (B6, «@», «at»))

Сіз идеяны аласыз.

B4 ұяшығына қойыңыз:

= кесу (regexreplace (B6, «&», «және»))

B3 ұяшығында:

= кесу (regexreplace (B6, «%», «процент»))

B2 ұяшығында біз сәл күрделі формуланы орналастырамыз:

= ArrayFormula (REGEXREPLACE (B3, «([^A-Za-z0-9.,!?:; '’]) »,« »))

Бұл Alexa түсінетін сан, әріп немесе тыныс белгілерінің бірі емес кез келген нәрседен құтылады.

B1 ұяшығында біз соңғы твиттерді көшіреміз:

= индекс (B2)

Бұл соңғы мәтін және егер сіз JSON туралы аздап білсеңіз, сюжетті сол ұяшықпен байланыстыруға бағдарламалай аласыз, бірақ сюжеттің соңында біршама жеңілдету үшін мен мазмұнды «IFTTT -ден тікелей эфир» қойындысына көшіруді ұнатамын. «IFTTT -тен тікелей эфир» қойындысындағы A2 формуласы:

= 'Процессинг орталығы'! B1

Қатты. Енді сіздің электрондық кестеңіз дайын және Storyline JSON сұранысы бойынша оқуға дайын.

5 -қадам: 5 -қадам: «Соңғы твит» JSON сұрауын оқиға желісінде орнатыңыз

5 -қадам: параметрлерді орнатыңыз
5 -қадам: параметрлерді орнатыңыз
5 -қадам: параметрлерді орнатыңыз
5 -қадам: параметрлерді орнатыңыз
5 -қадам: параметрлерді орнатыңыз
5 -қадам: параметрлерді орнатыңыз
  1. Сюжеттік шеберліктің сәлемдесу блогына өтіп, «Alexa не дейді» қадамын қосыңыз.
  2. «TheTweetOfGod -тың соңғы твиті:» сияқты кіріспе сөзді қосыңыз.
  3. Вариацияларды қосу үшін Гамбургер мәзірін пайдаланыңыз
  4. Кіші оң жақ көрсеткіні нұқыңыз және «Жаңа блок құру» таңдаңыз

Мен жаңа блогымды «Құдайдың твитін ал» деп атадым, бұл жерде негізгі қойындыдағы электронды кесте А2 ұяшығынан соңғы, сүзілген твиттерді алу болып табылады. Сіз мұны Google Sheets API арқылы жеткізілген JSON сұрауымен алу арқылы жасайсыз: бұл шын мәнінде әдемі URL мекен -жайынан басқа ештеңе емес.

  1. JSON сұрауын қосу үшін жаңа блоктағы оң жақтағы белгішені нұқыңыз.
  2. API сұранысын атаңыз. Мен өзімді «GetGodTweet» деп атадым
  3. Электрондық кестенің URL мекенжайын мына жолмен табыңыз:

    1. Электрондық кестеде Файл -> Интернетке жариялау түймесін басыңыз.
    2. Әдепкі мәндерді қолданыңыз және «Жариялау» түймесін басыңыз.
    3. URL мекенжайын көшіріп, оны ескертпе файлына қойыңыз.

Менің мысал:

«https://docs.google.com/spreadsheets/d/e/2PACX-1vSUnz43PEORZbBES1lQ8ZlJjH_4voh4Guc6SWrfjeGk2bZlY5EBYzLD5-fT633ygo_35Jzpl сізге қажет. Бұл /d /e мен келесі /charcter арасындағы бит. Сонымен, бұл жағдайда:

2PACX-1vSUnz43PEORZbBES1lQ8ZlJjH_4voh4Guc6SWrfjeGk2bZlY5EBYzLD5-fT633ygo_35Jz97cuUwKuy

Сіз бұл ұзын санды келесі URL мекенжайындағы «SPREASHEET_ID» деп аталатын битке ауыстырасыз:

«https://spreadsheets.google.com/feeds/list/SPREADSHEET_ID/od6/public/basic?alt=json»

  1. Енді сол URL мекенжайын алып, оны Storyline ішіндегі JSON сұрауының URL жолағына қойыңыз.
  2. «GET» опциясын таңдаңыз
  3. «Тақырыптар» жолағын бос қалдырыңыз
  4. Келесі өрісте сіз бірінші қойындыдағы А2 ұяшығының мазмұны бар айнымалыны осы формуланы қою арқылы жасайсыз:

tweet = api_response.feed.entry.0.title. $ t

Айнымалы «твит» деп аталады. Ол мазмұнды 0 қойындысынан көшіреді.

Енді сіз JSON сұрауының астына «Alexa Says» блогын қосып, {{tweet}} сөзін бұйра жақшаға қойсаңыз, Alexa ұяшықтың мазмұнын айтады. Іс 4 -қадамда сіз айтқан айнымалыға сәйкес келетініне көз жеткізіңіз !!!

Storyline желісіндегі PLAY түймесін басып, өз шеберлігіңізді тексеріңіз! Егер сіз «Null» сөзін алсаңыз, бұл сіздің API сұранысында қате кеткенін білдіреді.

Бұл шын мәнінде негізгі дағдылар үшін. Мен басқа MP3 -мен күлкілі дыбыстық қолтаңба қостым және пайдаланушы ескі твит тыңдағысы келетінін сұрадым. Келесі қадам кездейсоқ ескі твит құру үшін жақсы трюкті көрсетеді, бірақ бұл өз дағдыларын қосымша ыңғайлылыққа жеткізгісі келетіндер үшін аяз.

6 -қадам: Қосымша қосымша: Alexa оқу үшін Google парақтарынан кездейсоқ нәтиже шығару

Қосымша қосымша: Alexa оқу үшін Google парақтарынан кездейсоқ нәтиже шығару
Қосымша қосымша: Alexa оқу үшін Google парақтарынан кездейсоқ нәтиже шығару

Егер сіз ескі твиттер жиынтығының бірін кездейсоқ жасағыңыз келсе, міне, осында.

Мен электрондық кестеде «Ескі твиттер» деп аталатын үшінші қойынды жасадым. Мұның бәрі менің электрондық кестеде A1-A36 ұяшықтарын алады

  1. Storyline -де «Oldertweets» деп аталатын жаңа блок жасаңыз.
  2. JSON сұрау қадамын қосыңыз
  3. Оған ат қойыңыз
  4. URL өрісінде электронды кесте идентификаторымен жасалған соңғы твит қадамында бір нұсқасы бар API URL мекенжайын қолданыңыз:

    /Od6/basic/public/3/basic/public деп аталатын битті соңына қарай өзгертіңіз - бұл Tab 1 орнына Tab 3 деп аталады

  5. «АЛУ» таңдаңыз
  6. Тақырыптарды бос қалдырыңыз
  7. Келесі өріске мынаны қойыңыз:

oldtweet = api_response.feed.entry.random.title. $ t

Сіз «oldtweet» деп аталатын жаңа айнымалы құрдыңыз және бұл «кездейсоқ» деген кішкентай сөз JSON сұрауы шақырылған сайын айнымалының өзгеретінін білдіреді.

Басқа «Alexa Says» қадамын қосып, жаңа айнымалы мәнді {{oldtweet}} сол жақша жақшалармен енгізіңіз. Бум! Кездейсоқ жақсылық!

Егер сізге осы нұсқаулық ұнаған болса, менің шеберлігіме бірнеше жұлдыз немесе шолуды беріңіз!

Ұсынылған: