kamigo 0.8.0 → 0.13.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 47ae1fd30d6e4b15ef460a5eaf7b9c3e1aa7020de0074b938900a66943eba7a7
4
- data.tar.gz: b01d8dce795b046bdc888ebdfc96e8d39489cb59affdcc720e2a0ba59ada4ffb
3
+ metadata.gz: 62175521b3ccbf98b4ef83754b157ddc60add6741029d82ea9197ffd70598534
4
+ data.tar.gz: e00a8292632ba7f218a8999da43e93df5b9557e1e300f8f17dfca704b6a4a8a5
5
5
  SHA512:
6
- metadata.gz: 2cc2e6ad79c1acfbb30992a7b680c10f9147296628478ca420341fbc44c277e69bf190c16d426fcf7042e79d1870cff415300d38afe47a06cdc3e85313974b6a
7
- data.tar.gz: 6b6f4de0dc5ee592bff2fcd286ed70dc4b21c4a33dc7a968a0299a9a5335603fca24e75ae62967db35799bee2fb1c22a0336693d4b1ed63ebbbef2b6c08fe6c1
6
+ metadata.gz: d85d68572c2bf47632fb45749101fb0132abd0557234d4457d9c0da126b8320d41975443b3ecb61bb39ca96138ed48d82ff66c1b13455fb23eb8c2bf0f16c1d4
7
+ data.tar.gz: 4814201aaabbf4607f8141686ee95764e53e72c4da25119bcabee53d321e5c9c6ab504068dfe218eba55781f7ad3fa70a624015c415f185d50376344f53244b5
data/README.md CHANGED
@@ -1,5 +1,4 @@
1
1
  # Kamigo 簡介
2
-
3
2
  Kamigo 是一個基於 Rails 的 Chatbot MVC Framework。
4
3
 
5
4
  Kamigo 讓你開發 Chatbot 就跟開發網站一樣容易,甚至可以同時開發網站以及 Chatbot 介面,共用 Controller 和 Model,只需要針對 Chatbot 實作 View。
@@ -9,7 +8,7 @@ Kamigo 提供了重要的 generator,讓你開發聊天機器人時可以快的
9
8
  以下將說明如何使用 Kamigo 來製作 Todo 的教學文件。
10
9
 
11
10
  # 建立新的 rails 專案
12
- 以下指令直接複製全部,直接貼到 bash 執行即可。
11
+ 將以下指令全部複製,直接貼到 bash 執行即可。
13
12
 
14
13
  ```bash
15
14
  # 建立新專案
@@ -26,49 +25,53 @@ rails db:migrate
26
25
  ```
27
26
 
28
27
  # 設定首頁
29
- 在 config/routes.rb 當中加入首頁設定:
28
+ `config/routes.rb` 當中加入首頁設定:
30
29
 
31
30
  ```
32
31
  root to: "todos#index"
33
32
  ```
34
33
 
35
34
  # 安裝 js 套件
35
+ <!-- TODO: 待卡米修改完 Kamiliff 後,需新增不同使用方式的說明 -->
36
36
  在 `app/assets/javascripts/application.js` 當中加入一行程式碼:
37
37
 
38
38
  ```
39
39
  //= require kamiliff
40
40
  ```
41
41
 
42
- # 設定聊天機器人環境變數
43
- 本文假設你已經有一個自己的聊天機器人,請在專案根目錄下新增一個 `.env` 檔並且填入以下內容:
42
+ # 設定聊天機器人 Webhook URL
43
+ 本文假設你已經有一個自己的聊天機器人,請將以下網址填入 LINE Bot 的 Webhook URL 欄位中:
44
44
 
45
45
  ```
46
- LINE_CHANNEL_SECRET=這裡填入你的 LINE_CHANNEL_SECRET
47
- LINE_CHANNEL_TOKEN=這裡填入你的 LINE_CHANNEL_TOKEN
48
- LIFF_COMPACT=這裡填入你的 LIFF_COMPACT
49
- LIFF_TALL=這裡填入你的 LIFF_TALL
50
- LIFF_FULL=這裡填入你的 LIFF_FULL
46
+ https://你的網域/line
51
47
  ```
52
48
 
53
- 你可以在你的 LINE 管理後台找到 LINE_CHANNEL_SECRET LINE_CHANNEL_TOKEN
49
+ 第一次開發 LINE Bot 的人可以服用此帖 [Webhook URL 設定 QA](/doc/06_setting.md#Webhook-URL-設定-QA)
54
50
 
55
- LIFF_COMPACT、LIFF_TALL 和 LIFF_FULL 你必須到 LINE 的後台中的 Liff 分頁去新增,詳細說明請參考 [kamiliff_demo](https://github.com/etrex/kamiliff_demo)。
56
-
57
- # 設定聊天機器人 webhook url
58
-
59
- 請將以下網址填入 LINE Bot 的 webhook url 欄位中:
51
+ # 設定聊天機器人環境變數
52
+ 請在專案根目錄下新增一個 `.env` 檔並且填入以下內容:
60
53
 
61
54
  ```
62
- https://你的網域/line
55
+ LINE_CHANNEL_SECRET=這裡填入你的 LINE_CHANNEL_SECRET
56
+ LINE_CHANNEL_TOKEN=這裡填入你的 LINE_CHANNEL_ACCESS_TOKEN
57
+ LIFF_COMPACT=這裡填入你的 COMPACT_LIFF_URL
58
+ LIFF_TALL=這裡填入你的 TALL_LIFF_URL
59
+ LIFF_FULL=這裡填入你的 FULL_LIFF_URL
63
60
  ```
64
61
 
62
+ - `LINE_CHANNEL_SECRET` 可以在 Messaging API 後台的 Basic settings 分頁中找到。
63
+ - `LINE_CHANNEL_ACCESS_TOKEN` 可以在 Messaging API 後台的 Messaging API 分頁中找到。
64
+ - `COMPACT_LIFF_URL`、`TALL_LIFF_URL` 和 `FULL_LIFF_URL` 需要到 LINE 後台的 LIFF 分頁新增後,即可獲得一組 LIFF URL。
65
+
66
+ Kamigo 預設的 LIFF Size 為 Compact,你也可以只新增 Compact LIFF URL。
67
+ 詳細的 LIFF 設定說明可以服用此帖 [LIFF 設定 QA](/doc/06_setting.md#LIFF-設定-QA)。
68
+
65
69
  至此串接完成。
66
70
 
67
71
  # 實際使用
68
-
69
72
  Kamigo 預設使用基本的語意理解模型,會將使用者輸入視為在瀏覽器網址上輸入文字,並且以 LINE Flex Message 來顯示對應的結果。
70
73
 
71
- 只要和你的聊天機器人說 `/`,就能看見首頁的樣子。
74
+ 開啟 LINE 和聊天機器人說 `/`,就能看到首頁的樣子。
72
75
 
73
76
  # 使用 kamigo 製作的聊天機器人
74
77
  - [kamigo demo](https://github.com/etrex/kamigo_demo)
@@ -77,12 +80,14 @@ Kamigo 預設使用基本的語意理解模型,會將使用者輸入視為在
77
80
  <p><img width="100" height="100" src="https://camo.githubusercontent.com/b8c51b15b20b159d356245277d079c04482acc01/68747470733a2f2f692e696d6775722e636f6d2f7534547675676e2e706e67"></p>
78
81
  - 守護寵物機器人
79
82
  <p><img width="100" height="100" src="/doc/images/pet_loved_qrcode.png"></p>
83
+
80
84
  # 詳細的說明文件
81
85
  - [Kamigo 架構概觀](/doc/01_intro.md)
82
86
  - [Route 的使用說明](/doc/02_route.md)
83
87
  - [Controller 的使用說明](/doc/03_controller.md)
84
88
  - [View 的使用說明](/doc/04_view.md)
85
89
  - [Form 的使用說明](/doc/05_form.md)
90
+ - [Kamigo 相關設定與 QA](/doc/06_setting.md)
86
91
 
87
92
  # 計畫
88
93
  - 提供多種語意理解模型串接
@@ -1,3 +1,3 @@
1
1
  module Kamigo
2
- VERSION = '0.8.0'.freeze
2
+ VERSION = '0.13.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: kamigo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - etrex
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-02 00:00:00.000000000 Z
11
+ date: 2020-11-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 0.14.0
33
+ version: 0.20.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 0.14.0
40
+ version: 0.20.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: kamiflex
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -97,7 +97,6 @@ files:
97
97
  - config/routes.rb
98
98
  - lib/generators/rails/kamigo/USAGE
99
99
  - lib/generators/rails/kamigo/kamigo_generator.rb
100
- - lib/generators/rails/kamigo/state_generator.rb
101
100
  - lib/generators/rails/kamigo/templates/edit.liff.erb
102
101
  - lib/generators/rails/kamigo/templates/index.line.erb
103
102
  - lib/generators/rails/kamigo/templates/new.liff.erb
@@ -117,7 +116,7 @@ homepage: https://github.com/etrex/kamigo
117
116
  licenses:
118
117
  - MIT
119
118
  metadata: {}
120
- post_install_message:
119
+ post_install_message:
121
120
  rdoc_options: []
122
121
  require_paths:
123
122
  - lib
@@ -132,8 +131,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
132
131
  - !ruby/object:Gem::Version
133
132
  version: '0'
134
133
  requirements: []
135
- rubygems_version: 3.0.6
136
- signing_key:
134
+ rubygems_version: 3.1.2
135
+ signing_key:
137
136
  specification_version: 4
138
137
  summary: a chatbot framework based on rails
139
138
  test_files: []
@@ -1,56 +0,0 @@
1
- require 'rails/generators/named_base'
2
- require 'rails/generators/resource_helpers'
3
-
4
- module Rails
5
- module Generators
6
- class CreateStateGenerator < NamedBase
7
- include Rails::Generators::ResourceHelpers
8
- namespace "devise"
9
- argument :attributes, type: :string, default: 'kamigo_state'
10
-
11
- class_option :timestamps, type: :boolean, default: true
12
-
13
- def create_root_folder
14
- path = File.join('app/views', controller_file_path)
15
- empty_directory path unless File.directory?(path)
16
- end
17
-
18
- def copy_view_files
19
- filenames.each do |filename|
20
- template filename, File.join('app/views', controller_file_path, filename)
21
- end
22
- end
23
-
24
- protected
25
-
26
- def attributes_names
27
- [:id] + super
28
- end
29
-
30
- def filenames
31
- [
32
- "index.line.erb",
33
- "show.line.erb",
34
- "edit.liff.erb",
35
- "new.liff.erb",
36
- ]
37
- end
38
-
39
- def full_attributes_list
40
- if options[:timestamps]
41
- attributes_list(attributes_names + %w(created_at updated_at))
42
- else
43
- attributes_list(attributes_names)
44
- end
45
- end
46
-
47
- def attributes_list(attributes = attributes_names)
48
- if self.attributes.any? {|attr| attr.name == 'password' && attr.type == :digest}
49
- attributes = attributes.reject {|name| %w(password password_confirmation).include? name}
50
- end
51
-
52
- attributes.map { |a| ":#{a}"} * ', '
53
- end
54
- end
55
- end
56
- end