เนื่องจาก LINE KEEP จะปิดบริการลง เรามาสร้างการสร้าง Line Chat bot เพื่อสำรองรูปภาพ เสียง และวิดีโอขึ้น Google Drive มีข้อดีหลายประการดังนี้:
- การเก็บข้อมูลให้ปลอดภัย: การเก็บข้อมูลบน Google Drive ช่วยให้ข้อมูลของคุณมีความปลอดภัยมากขึ้น เนื่องจากมีระบบการรักษาความปลอดภัยที่มีประสิทธิภาพ อาทิเช่น การเข้ารหัสข้อมูลแบบที่ใช้ทั่วไปและการตรวจจับการแอบดูข้อมูลที่ผิดกฎหมาย.
- การเข้าถึงข้อมูลแบบง่าย: การใช้ Google Drive ทำให้สามารถเข้าถึงข้อมูลได้ทุกที่ที่มีการเชื่อมต่ออินเทอร์เน็ต โดยไม่จำเป็นต้องใช้อุปกรณ์หรือโปรแกรมเฉพาะ เช่น สามารถเข้าถึงข้อมูลจากคอมพิวเตอร์ โทรศัพท์มือถือ หรือแท็บเล็ตได้โดยง่าย.
- การจัดการข้อมูลอัตโนมัติ: คุณสามารถเขียนโปรแกรมให้ Line Chat bot ทำงานอัตโนมัติ เช่น ให้สำรองรูปภาพ เสียง และวิดีโอที่ถูกส่งมาโดยผู้ใช้โดยอัตโนมัติ โดยไม่ต้องมีการเชื่อมต่อทุกครั้ง.
- ประหยัดเวลาและค่าใช้จ่าย: การใช้บริการของ Google Drive มักเป็นรูปแบบการจ่ายเงินตามการใช้งานจริง ซึ่งอาจมีราคาที่เหมาะสมกับการใช้งานของคุณ โดยไม่ต้องลงทุนในการสร้างและบำรุงรักษาพื้นที่เก็บข้อมูลเอง.
- ความยืดหยุ่นในการเข้าถึงและแบ่งปัน: คุณสามารถเข้าถึงข้อมูลที่อยู่บน Google Drive ได้ทุกที่และทุกเวลา และสามารถแบ่งปันข้อมูลกับผู้ใช้อื่นได้อย่างง่ายดาย ไม่ว่าจะเป็นรูปภาพ เสียง หรือวิดีโอ.
- การสนับสนุนการพัฒนา: Google Drive มี API ที่มีประสิทธิภาพในการสนับสนุนการพัฒนาแอปพลิเคชัน ทำให้สามารถสร้างส่วนขยายหรือการเชื่อมต่อกับ Line Chat bot ได้อย่างสะดวกและง่ายดาย.
ดังนั้น การใช้ Google Drive เพื่อสำรองข้อมูลจาก Line Chat bot นั้นมีประโยชน์มากในด้านความสะดวกสบาย ความปลอดภัย และความเชื่อถือได้ของข้อมูลที่เก็บไว้บนระบบนี้.
มาดูวิธีทำกันแบบง่าย ๆ ดีกว่า เปิด Google App Script ติดตั้งไลบรารี LINE BOT SDK ให้เรียบร้อย 1KsjhQa6oymhUiACWsAlFTG_XoN8Pnz4px2ekABPjO4tSMX6xRSQMBicy เมื่อติดตั้งไลบรารีเรียบร้อย ให้ทำการคัดลอกโค้ดด้านล่างไปใส่ได้เลยครับ
const ACCESS_TOKEN = "ACCESS_TOKEN ";
const bot = new LineBotSdk.client(ACCESS_TOKEN);
const folderImage = "Folder ID รูปภาพ"
const folderAudio = "Folder ID เสียง"
const folderVideo = "Folder ID วิดีโอ"
function doPost(e) { bot.call(e, callback) };
function callback(e) {
if (e.message.type == "image") {
bot.replyMessage(e, [bot.textMessage(imageDrive(e, folderImage))]);
}
else if (e.message.type == "audio") {
bot.replyMessage(e, [bot.textMessage(audio_video(e, folderImage))]);
}
else if (e.message.type == "video") {
bot.replyMessage(e, [bot.textMessage(audio_video(e, folderImage))]);
}
}
function imageDrive(e, folder_imageId) {
const messageID = e.message.id;
const imageUrl = 'https://api-data.line.me/v2/bot/message/' + messageID + '/content';
const data = UrlFetchApp.fetch(imageUrl, {
'headers': {
'Authorization': 'Bearer ' + ACCESS_TOKEN,
},
'method': 'get'
});
const img = data.getBlob().getAs('image/png').setName(Number(new Date()) + '.png');
const convert = DriveApp.createFile(img)
const folderImage = DriveApp.getFolderById(folder_imageId) //folderid
const imageDriveUrl = 'https://drive.google.com/uc?export=view&id=' + convert.getId();
convert.moveTo(folderImage);
bot.replyMessage(e, [bot.textMessage("บันทึกเรียบร้อย ประเภทไฟล์: " + e.message.type + "คลิกดาวน์โหลด: " + " " + imageDriveUrl)]);;
}
function audio_video(e, folderID) {
const messageID = e.message.id;
const imageUrl = 'https://api-data.line.me/v2/bot/message/' + messageID + '/content';
const data = UrlFetchApp.fetch(imageUrl, {
'headers': {
'Authorization': 'Bearer ' + ACCESS_TOKEN,
},
'method': 'get'
});
const audio_video = data.getBlob()
const convert = DriveApp.createFile(audio_video)
const folder = DriveApp.getFolderById(folderID) //folderid
const imageDriveUrl = 'https://drive.google.com/uc?export=view&id=' + convert.getId();
convert.moveTo(folder);
bot.replyMessage(e, [bot.textMessage("บันทึกเรียบร้อย ประเภทไฟล์: " + e.message.type + "คลิกดาวน์โหลด: " + " " + imageDriveUrl)]);
}
เมื่อคัดลอกโค้ดเรียบแล้วให้ ให้เพื่อน ๆ ใส่ ACCESS_TOKEN ที่ได้จาก LINE Developer และใส่ Folder ID ไฟล์ทั้ง 3 ชนิด จากนั้นให้เพื่อน ๆ Deploy โค้ด และจะได้รหัส Web app Url ให้นำไปใส่ที่ Webhook ของ LINE ก็เป็นอันเสร็จสิ้น