Mục lục:

Kỹ năng Alexa: Đọc Tweet mới nhất (trong trường hợp này là của Chúa): 6 bước
Kỹ năng Alexa: Đọc Tweet mới nhất (trong trường hợp này là của Chúa): 6 bước

Video: Kỹ năng Alexa: Đọc Tweet mới nhất (trong trường hợp này là của Chúa): 6 bước

Video: Kỹ năng Alexa: Đọc Tweet mới nhất (trong trường hợp này là của Chúa): 6 bước
Video: NGƯỜI THÀNH CÔNG LUÔN CÓ LỐI ĐI RIÊNG #Shorts 2024, Có thể
Anonim
Kỹ năng Alexa: Đọc Tweet mới nhất (trong trường hợp này là của Chúa)
Kỹ năng Alexa: Đọc Tweet mới nhất (trong trường hợp này là của Chúa)

Tôi đã tạo Kỹ năng Alexa để đọc "Tweet mới nhất của Chúa" - nội dung, tức là từ @TweetOfGod, tài khoản hơn 5 triệu người đăng ký được tạo bởi một cựu nhà văn hài kịch của Daily Show. Nó sử dụng IFTTT (If This Then That), Bảng tính Google và Trình tạo kỹ năng Alexa cực kỳ dễ sử dụng, Cốt truyện.

Để biết kết quả cuối cùng, bạn có thể thêm kỹ năng vào Thiết bị Alexa của mình tại đây hoặc bạn có thể xem trước kỹ năng trên Storyline nếu tài khoản Alexa của bạn không ở Hoa Kỳ hoặc bạn không có thiết bị Alexa.

Nếu bạn muốn xây dựng một kỹ năng Alexa đọc tweet, đây là cách tương đối dễ thực hiện. Sẽ không liên quan đến việc viết mã nếu bạn chỉ sử dụng các mẫu của tôi, nhưng nếu bạn muốn đi ra khỏi đường dẫn, bạn có thể biết một chút về mã nói chung và đặc biệt là cách các lệnh gọi JSON được cấu trúc. Nhưng nếu bạn chỉ sao chép kỹ năng này cho một tài khoản Twitter khác, nó sẽ không yêu cầu kỹ năng kỹ thuật ngoài việc cắt và dán.

Những gì bạn cần:

  • Thiết bị Alexa (hoặc tài khoản với Echoism.io - một trình mô phỏng ảo Alexa tuyệt vời)
  • Tài khoản nhà phát triển Alexa
  • Tài khoản google để tạo bảng tính với
  • Một tài khoản có Cốt truyện
  • Một tài khoản với If This Then That (IFTTT)
  • Tài khoản dropbox hoặc nơi bạn có thể lưu trữ các tệp mp3 trên một máy chủ an toàn

Tất cả các tài khoản này đều miễn phí.

Tôi sẽ không đi vào chi tiết nhiều về những điều cơ bản về cách tạo kỹ năng Cốt truyện - có những hướng dẫn tuyệt vời trên trang web để học cách tạo khối, kết nối chúng và phân nhánh giữa các điều kiện. Hướng dẫn này sẽ tập trung vào ba điều tôi đã học được khi xây dựng kỹ năng này: đưa hiệu ứng âm thanh MP3 vào kỹ năng của bạn, kết nối nội dung twitter qua IFTTT và Google Trang tính và cách tạo một tweet ngẫu nhiên từ một tập hợp các tùy chọn được tạo trước.

(Và một lời cảm ơn lớn đến Nhà phát triển kỹ năng Alexa George Collier, người có hướng dẫn tuyệt vời về cách tích hợp twitter vào Alexa đã giúp tôi bắt đầu.)

Bước 1: Bước 1: Suy nghĩ về Quy trình tổng thể của Kỹ năng của bạn

Bước 1: Suy nghĩ về quy trình tổng thể của kỹ năng của bạn
Bước 1: Suy nghĩ về quy trình tổng thể của kỹ năng của bạn

Cốt truyện là một cách tuyệt vời để tạo các kỹ năng Alexa mà không cần hoặc không cần viết mã. Bạn có thể kéo và thả các khối vào vị trí và thiết lập các kết nối và đường dẫn giữa các hành động thông qua giao diện đồ họa dễ hiểu. Nếu bạn đã từng sử dụng Yahoo Pipes, bạn sẽ nhận ra giao diện.

Bây giờ, một trong những điều thú vị về Storyline là nó giúp Alexa nói kết quả của bất kỳ truy vấn JSON nào khá dễ dàng. Lấy dữ liệu ra khỏi Bảng tính Google thật dễ dàng với các truy vấn JSON. Lấy tweet VÀO bảng tính google với If This Than That thật dễ dàng. Dễ. Dễ. Dễ.

Tôi thấy tốt nhất là chỉ nên hình dung toàn bộ kỹ năng của bạn trong bản tóm tắt trước khi bắt đầu.

Khi tôi nghĩ về kỹ năng của mình, tôi biết mục đích chính của nó chỉ là đưa ra dòng tweet mới nhất. Nhưng tôi có thể cải thiện điều đó bằng một chút thiết kế âm thanh (Cốt truyện cho phép kỹ năng của bạn chơi bất kỳ bản nhạc MP3 nào) và một tweet có thể không đủ để cung cấp cho mọi người hương vị của tài khoản - tôi có thể dự trữ một số tweet cũ hơn và để người dùng nghe thấy một trong những điều đó sau lần cuối cùng. Vì vậy, bản phác thảo luồng kỹ năng của tôi có thể trông như thế này:

  1. Chào mừng người dùng bằng một đoạn văn bản nói và âm thanh giới thiệu phù hợp
  2. Đọc tweet mới nhất
  3. Phát âm thanh đặc trưng
  4. Hỏi người dùng xem họ có muốn nghe một bài tweet cũ hơn không

    1. Đúng? Đọc một tweet cũ hơn.
    2. Phát âm thanh đặc trưng
    3. Không? Thoát kỹ năng.

Nguồn của "Tweet mới nhất" là một bảng tính của google, được cung cấp bởi tập lệnh If This Then That. Quá trình đó trông giống như sau:

  1. NẾU có một tweet mới từ tài khoản @TweetOfGod, nó sẽ được sao chép vào bảng tính
  2. Nếu tweet chứa liên kết hoặc hình ảnh, bảng tính sẽ lọc nó ra
  3. Nếu tweet là một tweet lại, bảng tính sẽ lọc nó ra
  4. Tweet nhận được bởi hai bộ lọc đó sau đó được xử lý để đọc: # được thay thế bằng từ "Hashtag" và một số ký tự khác được thay thế bằng các ký tự tương đương có thể đọc được
  5. Tweet cuối cùng được sao chép vào ô "tweet mới nhất" mà Alex đọc

Bước 2: Bước 2: Tạo khối chào mừng đẹp mắt với âm thanh giới thiệu

Bước 2: Tạo khối chào mừng đẹp mắt với âm thanh giới thiệu
Bước 2: Tạo khối chào mừng đẹp mắt với âm thanh giới thiệu
Bước 2: Tạo khối chào mừng đẹp mắt với âm thanh giới thiệu
Bước 2: Tạo khối chào mừng đẹp mắt với âm thanh giới thiệu
Bước 2: Tạo khối chào mừng đẹp mắt với âm thanh giới thiệu
Bước 2: Tạo khối chào mừng đẹp mắt với âm thanh giới thiệu

Trước khi Alexa đọc tweet mới nhất, tôi ngẫu nhiên tạo ra một trong bốn âm thanh hài hước trên trời. Đây là những bản MP3 đã được xử lý cho Alexa theo cốt truyện. Tôi đã tìm thấy tệp MP3 của mình trên Freesound (Và mọi thứ ở đó thực sự miễn phí, nhưng hãy là một con người tử tế và để lại lời khuyên).

  1. Tải xuống MP3 của bạn. Nó cần dưới 90 giây. Alexa đặc biệt về định dạng. Nếu bạn biết đó là MPEG Phiên bản 2 và 48kps, bạn có thể bỏ qua bước tiếp theo. Nhưng nếu bạn không biết hoặc bất cứ điều gì khác biệt, rất dễ dàng để chuyển đổi.
  2. Tải nó lên Storyline để xử lý tại Audio Converter của họ
  3. Lưu trữ âm thanh đã tải xuống của bạn trên máy chủ

Nếu bước 3 bạn sẽ "LÀM GÌ BÂY GIỜ?" bạn có thể không có quyền truy cập vào máy chủ https mà bạn có thể lưu trữ các tệp của mình. Đừng lo lắng, bạn có thể làm điều đó với dropbox. Bạn sẽ cần một tài khoản, nhưng một lần nữa, một tài khoản miễn phí cũng được. Dưới đây là các bước:

  1. Truy cập https://www.dropbox.com/h và đăng nhập vào tài khoản của bạn.
  2. Nhấp vào nút Tải tệp lên
  3. Chọn tệp mp3 mà bạn đã chuyển đổi.
  4. Nhấp vào Chia sẻ
  5. Nhấp vào Tạo liên kết và Sao chép liên kết
  6. Trong liên kết bạn đã sao chép, hãy thay thế "dropbox" bằng "dl.dropboxusercontent" mà không có dấu ngoặc kép
  7. Sao chép URL đó

Bây giờ bạn sẽ đi đến cuối khối chào mừng của mình và nhấp vào biểu tượng Nốt nhạc.

Dán URL của bạn vào. Nếu bạn muốn thêm các biến thể ngẫu nhiên, hãy lặp lại quy trình cho một vài bản MP3 nữa và nhấp vào menu Hamburger bên dưới hộp dán URL.

Bước 3: Bước 3: Thiết lập IFTTT

Bước 3: Thiết lập IFTTT
Bước 3: Thiết lập IFTTT
  1. Chuyển đến tài khoản IFTTT của bạn và chọn "Tạo một applet mới"
  2. Chọn TWITTER làm Dịch vụ IF.
  3. Chọn "Bài đăng mới của người dùng cụ thể làm Trình kích hoạt. Điền vào tên tài khoản bạn muốn theo dõi
  4. Chọn "Google Trang tính" làm dịch vụ THEN
  5. Chọn "Thêm hàng vào bảng tính"
  6. Trong trường "Hàng được định dạng", hãy xóa mọi thứ ngoại trừ trường {{TEXT}}.
  7. Tạo kỹ năng của bạn.

Điều này tạo ra một bảng tính mới và thêm một hàng mỗi khi một tweet mới xuất hiện. Bạn có thể thích sử dụng một ô duy nhất trên bảng tính của mình và chỉ cần ghi đè lên nội dung của nó mỗi lần. Trong trường hợp đó, ở bước 5, bạn có thể chọn tùy chọn ghi vào một ô. Tôi muốn ghi lại các tweet, vì tôi định kỳ chuyển những tweet không có tính thời sự hoặc phản ứng với tin tức sang một bảng tính "Những Tweet cũ hơn". Lưu ý rằng nếu bạn chọn tùy chọn này, bạn sẽ cần thực hiện một số bảo trì trên trang tính của mình: một trang tính mới sẽ được tạo sau 2000 hàng.

Bước 4: Bước 4: Thiết lập Google Trang tính của bạn

Bước 4: Thiết lập Google Trang tính của bạn
Bước 4: Thiết lập Google Trang tính của bạn
Bước 4: Thiết lập Google Trang tính của bạn
Bước 4: Thiết lập Google Trang tính của bạn
Bước 4: Thiết lập Google Trang tính của bạn
Bước 4: Thiết lập Google Trang tính của bạn

Google Trang tính này là trung tâm của kỹ năng cụ thể này, vì nó lọc ra các tweet không hoạt động thực sự tốt với Alexa (ví dụ: các tweet đề cập đến hình ảnh hoặc các tweet có liên kết) và nó làm cho các tweet chỉ có văn bản nhiều hơn Alexa -thân thiện với một vài thay thế đơn giản.

Hãy để IFTT tạo bảng tính của bạn với một vài mục nhập - vì vậy chỉ cần đợi một vài tweet từ tài khoản theo dõi của bạn đến đó, mở Google Trang tính và sắp xếp theo thời gian đã tạo. Bạn sẽ thấy bảng tính mới sáng bóng của mình ngay trên đầu. Bây giờ, mọi tweet mới sẽ ở một hàng mới, vì vậy chúng tôi muốn tạo một công thức lọc ra các tweet có liên kết hoặc hình ảnh và chạy qua để tìm hàng cuối cùng trong cột.

Bạn chỉ có thể sao chép bản sao bảng tính này của tôi hoặc bạn có thể tạo bảng tính của riêng mình bằng các bước sau:

  1. Đổi tên tab với dòng tweet trong đó là "Trực tiếp từ IFTTT"
  2. Thêm một Tab có tên "Đang xử lý Tweet" vào bảng tính
  3. Thêm công thức này vào ô A8 của tab Bài đăng đang xử lý:

= QUERY ('Trực tiếp từ IFTTT'! A3: A2000, "Chọn A Trong đó không phải A chứa 'https'")

Điều đó kéo tất cả các tweet không có liên kết vào Cột A của tab xử lý của bạn.

Bây giờ chúng ta cần tìm tweet cuối cùng trong cột đó. Dán công thức sau vào ô B7 của tab xử lý:

= INDEX (FILTER (A: A, NOT (ISBLANK (A: A))), ROWS (FILTER (A: A, NOT (ISBLANK (A: A)))))

Bây giờ chúng tôi muốn thực hiện một số thay thế để giúp Alexa đọc tweet dễ dàng hơn. Chúng thực sự có thể là một trong một công thức ô đơn, nhưng tôi đã chia nhỏ chúng ra để rõ ràng:

Trong Ô B6, dán của tab Đang xử lý:

= trim (regexreplace (B7, "#", "Hashtag"))

Điều đó sẽ xem xét nội dung của ô bên dưới và thay thế dấu # bằng từ "Hashtag"

Trong Ô B5, dán lần lặp tiếp theo:

= trim (regexreplace (B6, "@", "at"))

Bạn có được ý tưởng.

Trong Ô B4 dán:

= trim (regexreplace (B6, "&", "và"))

Trong ô B3:

= trim (regexreplace (B6, "%", "phần trăm"))

Trong Ô B2, chúng ta sẽ đặt một công thức phức tạp hơn một chút:

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

Điều này chỉ đơn giản là loại bỏ BẤT CỨ ĐIỀU GÌ không phải là số, chữ cái hoặc một trong những dấu câu mà Alexa hiểu.

Trong Ô B1, chúng tôi chỉ đơn giản là sẽ sao chép tweet cuối cùng:

= index (B2)

Đó là văn bản cuối cùng và bạn có thể lập trình cốt truyện để vẽ đồ thị ô đó nếu bạn biết một chút về JSON, nhưng để làm cho mọi thứ đơn giản hơn một chút ở phần cuối của cốt truyện, tôi muốn sao chép nội dung vào tab "Trực tiếp từ IFTTT" bằng cách đặt cái này công thức trong A2 trong tab "Trực tiếp từ IFTTT":

= 'Trung tâm xử lý'! B1

Groovy. Bây giờ bảng tính của bạn đã được thiết lập xong và sẵn sàng để đọc bằng truy vấn JSON của Storyline.

Bước 5: Bước 5: Thiết lập truy vấn JSON "Tweet mới nhất" của bạn trong cốt truyện

Bước 5: Thiết lập
Bước 5: Thiết lập
Bước 5: Thiết lập
Bước 5: Thiết lập
Bước 5: Thiết lập
Bước 5: Thiết lập
  1. Chuyển đến khối chào mừng của kỹ năng cốt truyện của bạn và thêm bước "Alexa nói gì".
  2. Thêm một cụm từ giới thiệu như "Đây là tweet mới nhất từ TheTweetOfGod:"
  3. Sử dụng Menu Hamburger để thêm các biến thể
  4. Nhấp vào mũi tên nhỏ sang phải và chọn "Tạo khối mới"

Tôi đã gọi khối mới của mình là "Get God Tweet" Nhiệm vụ ở đây là tìm nạp tweet mới nhất, đã lọc đó từ ô A2 của tab chính trong bảng tính. Bạn làm điều đó bằng cách tìm nạp dữ liệu với một yêu cầu JSON được gửi qua API Google Trang tính: Nó thực sự không khác gì một URL ưa thích.

  1. Nhấp vào biểu tượng nhỏ ở xa ngay trên khối mới của bạn để thêm yêu cầu JSON.
  2. Đặt tên cho yêu cầu API của bạn. Tôi đã gọi là "GetGodTweet" của tôi
  3. Tìm URL của bảng tính của bạn bằng cách thực hiện điều này:

    1. Nhấp vào Tệp -> Xuất bản lên Web trong bảng tính của bạn.
    2. Sử dụng các giá trị mặc định và chỉ cần nhấp vào "Xuất bản"
    3. Sao chép URL và dán vào tệp ghi chú.

Ví dụ của tôi là:

"https://docs.google.com/spreadsheets/d/e/2PACX-1vSUnz43PEORZbBES1lQ8ZlJjH_4voh4Guc6SWrfjeGk2bZlY5EBYzLD5-fT633ygo_35Jz97cuUwKuy/pubhtml" Bạn sẽ cần trích xuất chuỗi dài tài liệu của mình. Đó là bit giữa / d / e và tiếp theo / charcter. Vì vậy, trong trường hợp này:

2PACX-1vSUnz43PEORZbBES1lQ8ZlJjH_4voh4Guc6SWrfjeGk2bZlY5EBYzLD5-fT633ygo_35Jz97cuUwKuy

Bạn hoán đổi số dài đó lấy bit trong url sau có nội dung "SPREASHEET_ID":

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

  1. Bây giờ lấy url ĐÓ và dán nó vào hộp URL của Truy vấn JSON trong Cốt truyện.
  2. Chọn tùy chọn "GET"
  3. Để trống Hộp "Tiêu đề"
  4. Trong hộp tiếp theo, bạn sẽ tạo một biến với nội dung của Ô A2 của tab đầu tiên bằng cách dán công thức này vào:

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

Biến được đặt tên là "tweet". Nó đang sao chép nội dung từ tab chính 0.

Bây giờ, nếu bạn thêm khối "Alexa Says" bên dưới truy vấn JSON của mình và chỉ đặt từ {{tweet}} trong dấu ngoặc nhọn, Alexa sẽ nói nội dung của ô. Đảm bảo rằng trường hợp khớp với biến bạn đã đặt tên ở bước 4 !!!

Nhấn nút CHƠI trên Cốt truyện và kiểm tra kỹ năng của bạn! Nếu bạn nhận được từ "Null", điều đó có nghĩa là đã xảy ra sự cố với yêu cầu API của bạn.

Đó thực sự là nó cho các kỹ năng cơ bản. Tôi đã thêm một chữ ký âm thanh nhỏ vui nhộn với một bản MP3 khác và hỏi người dùng có muốn nghe một bài tweet cũ hơn không. Bước tiếp theo cho bạn thấy một thủ thuật hay để tạo một tweet cũ hơn ngẫu nhiên, nhưng nó bị mờ đối với những người muốn nâng cao khả năng sử dụng kỹ năng của mình.

Bước 6: Tùy chọn bổ sung: Tạo kết quả ngẫu nhiên từ Google Trang tính để Alexa đọc

Tùy chọn bổ sung: Tạo kết quả ngẫu nhiên từ Google Trang tính để Alexa đọc
Tùy chọn bổ sung: Tạo kết quả ngẫu nhiên từ Google Trang tính để Alexa đọc

Nếu bạn muốn tạo ngẫu nhiên một trong số các tweet cũ hơn, đây là một thủ thuật tiện lợi.

Tôi đã tạo tab thứ ba trong bảng tính của mình có tên là "Bài đăng cũ hơn". Tất cả những thứ này đều chiếm các ô A1-A36 trong bảng tính của tôi

  1. Trong Cốt truyện, tạo một khối mới có tên "Oldertweets"
  2. Thêm bước truy vấn JSON
  3. Đặt tên cho nó
  4. Trong hộp URL, hãy sử dụng cùng một URL API mà bạn đã tạo với ID bảng tính của mình ở bước Tweet mới nhất, với một biến thể:

    Thay đổi bit ở cuối có nội dung / od6 / basic / public thành / 3 / basic / public - điều này gọi TAB 3 thay vì Tab 1

  5. Chọn "GET"
  6. Để trống Tiêu đề
  7. Trong hộp tiếp theo, hãy dán cái này:

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

Bạn đã tạo một biến mới, được gọi là "oldtweet" và từ nhỏ "ngẫu nhiên" có nghĩa là biến sẽ thay đổi mỗi khi truy vấn JSON được gọi.

Thêm một bước "Alexa Says" khác và chèn biến mới của bạn, {{oldtweet}} với các dấu ngoặc nhọn đó. Bùm! Sự tốt lành ngẫu nhiên!

Nếu bạn thích bài giảng này, vui lòng cho kỹ năng của tôi một vài sao hoặc đánh giá!

Đề xuất: