Bot-Chatwork-2 : Làm cho Bot thông minh hơn
White

Văn Đức Thái viết ngày 14/04/2019

alt text

1. Vấn đề và những việc sẽ làm.

https://kipalog.com/posts/Bot-Chatwork-1---Tao-Bot-Chat-tren-Chatwork-thong-qua-Google-Apps-Script
Như bài trước mình có tạo ra một con bot để notifi cho group trên Chatwork. Nhưng có vẻ nó đang thiếu I-Ốt nên hơn đần tí, tiêu biểu như việc nó notifi không chính xác đến từng phút lên group. Hôm nay mình sẽ viết tiếp để giải quyết 2 vấn đề:

  • Sử dụng function có sẵn, thay vì việc tự làm lại bánh xe cho xe máy.
  • Setup thời gian cho con Bot hoạt động chính xác và dùng trigger.

2. Làm thôi

a. Sử dụng function có sẵn.

  • Làm lại function sendMessage() Trước hết chúng ta sẽ Set lại roomId và Api Token Nhưng ở phần một sau khi tạo một script để viết code tại https://script.google.com/home/start thì chúng ta đã có token của con Bot và room_id của group chúng ta tham gia. alt text Bạn vào File => Project properties => Scripts properties => Add row Ở đây mình để: cw_room_id chính là room_id của group. cw_token chính là token của em Bot.

Trong code chúng ta sửa một chút. Trước hết là lấy thêm thư viện ChatWorkClient
alt text

Bạn vào Resoures => Libraries
Nhập mã M6TcEyniCs1xb3sdXFF_FhI-MNonZQ_sT vào Add a library
Bật On, chọn version 18 rồi save lại.
Bạn có thể tham khảo tại http://c-note.chatwork.com/post/69590585422/chatworkapi-gas-library

Chúng ta sẽ chỉnh một chút code như sau

function morningMtg() {
  message = "[toall]\n 8時にBigroomでお願いします。";
  sendToChatwork(message);
}

function sendToChatwork(message) {
  if (message == "") {
    return;
  }
  var scriptProperties = PropertiesService.getScriptProperties();
  var api_token   = scriptProperties.getProperty("cw_token");
  var room_id     = scriptProperties.getProperty("cw_room_id");
  var cw = ChatWorkClient.factory({token: api_token});
  cw.sendMessage({room_id: room_id, body: message});
}

Vậy là function sendToChatwork có thể sử dụng được nhiều lần và ở nhiều nơi.

b. Tạo thời gian để gửi message.

Bấm vào cái hình đồng hồ ngay cạnh nút Run.
Bấm vào Add Trigger.
alt text
Lúc này mình sẽ chỉnh time về chạy Every minute và trong code chỉnh sửa một ít.

function morningMtg() {
  var message = "[toall]\n 8時にBigroomでお願いします。";
  var today = new Date();
  if (today.getHours() == 22 && today.getMinutes() == 44 && today.getDay() == 6) {
    sendToChatwork(message);
  }
}

Vậy là chúng ta sẽ có notifi của Bot là vào 22h44 thứ 7.

Kết quả là
alt text

4. Tổng kết.

Link tham khảo.
http://c-note.chatwork.com/post/69590585422/chatworkapi-gas-library

Tạm thời mình sẽ dừng tại đây.
Sắp tới sẽ có bài viết tạo Bot thông qua Google Sheet. Mình nghĩ Google Sheet là một công cụ rất mạnh và tiện lợi cho công việc. Vậy nên sẽ có bài này. Hi vọng sẽ có sớm.

Bài Bái

(。◕‿◕。) NyLaa (。◕‿◕。)

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Văn Đức Thái

21 bài viết.
107 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
29 18
1. Tản mạn ngoài lề (Ảnh) MySQL với DB thì có cái quần què gì chứ? Đọc thôi để thấy cũng vài cái hay ho và này nọ. 2. MySQL: MyISAM & InnoDB & ...
Văn Đức Thái viết 2 năm trước
29 18
White
27 13
1. Tản mạn ngoài lề Khuya vật vã. Chẳng ngủ được. Mà chẳng biết làm gì giữa cái lúc dở dở ương ương này. Viết blog vậy :(. Bài viết dành cho các...
Văn Đức Thái viết 2 năm trước
27 13
White
19 3
1. Tản mạn ngoài lề (Ảnh) Khi gặp một vấn đề trong cuộc sống bạn sẽ làm gì? Người yêu đá đít, cuối tháng hết tiền lương, sếp đì trên đi xuống, bl...
Văn Đức Thái viết hơn 2 năm trước
19 3
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
21 bài viết.
107 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!