iTALC 2.0.2 โปรแกรมควบคุมคอมพิวเตอร์ในห้องเรียน

มาแนะนำกันอีกสักรอบสำหรับ iTALC 2.0.2 โปรแกรมควบคุมคอมพิวเตอร์ในห้องเรียน เป็นซอฟต์แวร์ชนิดโอเพนซอร์สที่บางคนก็ได้ลองใช้ในเวอร์ชั่นแรก ๆ ไปบ้างแล้ว ผมลองเข้าไปดูในเว็บไซต์ผู้สร้างโปรแกรมก็เห็นว่ายังคงอัปเดตปรับปรุงโปรแกรมกันอยู่ถึงปัจจุบัน ก็เลยสนใจลองทดสอบดูครับ iTALC ทำอะไรได้หลายอย่าง เช่น ผู้สอนสามารถ Lock หน้าจอเครื่องผู้เรียน สามารถส่งภาพหน้าจอเครื่องผู้สอนไปยังหน้าจอเครื่องผู้เรียนได้ สามารถรีโมทคอนโทรลเข้าไปเครื่องผู้เรียนได้ สั่งปิดเครื่องทุกเครื่องได้ หรือ สั่งเปิดเครื่องได้หาก BIOS พร้อมใช้งาน ดาวน์โหลดโปรแกรมได้ที่ http://italc.sourceforge.net/ ติดตั้งเสร็จจะได้ไอคอนที่หน้า Desktop ดังรูป และไอคอนที่หน้า Apps ดังรูป โปรแกรม iTALC Management Console เครื่องผู้สอน จะเรียกว่า master computer ในขั้นตอนการติดตั้งโปรแกรมที่เครื่องผู้สอน ให้เลือก component iTALC service และ iTALC master และให้เลือก Create new access keys เครื่องผู้เรียน จะเรียกว่า client computer ในขั้นตอนการติดตั้งโปรแกรมที่เครื่องผู้เรียน ให้เลือก component iTALC service แต่ไม่เลือก iTALC master และให้เลือก Import public key วิธีที่จะทำให้เครื่องผู้สอนควบคุมเครื่องผู้เรียนได้ก็คือการ export public key ซึ่งจะได้ไฟล์ชื่อ italc_public_key.key.txt ด้วยโปรแกรม iTALC Management Console นั้นเช่นกัน แล้วนำไปใส่เข้าในเครื่องผู้เรียนด้วยโปรแกรมเดียวกัน เมื่อทำขั้นตอนติดตั้งเสร็จแล้ว ก็เป็นการตั้ง classroom ว่าชื่ออะไร และมีคอมพิวเตอร์ใดบ้าง (IP) อยู่ใน classroom นี้ แล้วก็ใช้งานซึ่งการใช้งานง่ายมากเลย ผมเขียนวิธีการสำหรับ Windows 8.1 ที่นี่ครับ http://opensource.cc.psu.ac.th/โปรแกรมควบคุมคอมพิวเตอร์ในห้องเรียน และวิธีการสำหรับ Linux Mint 17.1 ที่นี่ครับ http://opensource.cc.psu.ac.th/ติดตั้ง_iTALC_บน_Linux_Mint คำถามยอดฮิตคือ แล้วมันใช้ควบคุมได้กี่เครื่อง อันนี้ผมยังไม่ได้ทดสอบครับ ฮ่า ฮ่า รอท่านทดสอบแล้วบอกผมด้วยนะครับ หวังว่าคงจะมีประโยชน์ อย่างน้อยที่สุดเอามาใช้ควบคุมเครื่องที่อยู่ในความดูแลไม่กี่เครื่องก็ใช้ได้นะ

Read More »

การแสดงผลจำนวน Quota การส่งอีเมลที่ยังเหลืออยู่ในรอบ 24 ชั่วโมง

ปิด Google Sheets : GASWS1 เมนู Tools > Script Editor… เมนู File > New > Script File ตั้งชื่อ: myscript6 สร้าง function remainDailQuota() ตามนี้ function remainDailQuota() { // https://developers.google.com/apps-script/guides/services/quotas var emailQuotaRemaining = MailApp.getRemainingDailyQuota(); var emailaddress=Session.getActiveUser().getEmail(); var subject=”Email Quota Remaining”; MailApp.sendEmail( emailaddress, subject , “คุณเหลือ Quota การส่งอีเมลอีก ” + emailQuotaRemaining + ” ฉบับ ในรอบ 24 ชั่วโมง” ); } เมนู File > Save หรือ กดปุ่ม Ctrl+s เมนู Run > remainDailQuota

Read More »

การส่งไฟล์แบบ Top Secret!

ปิด Google Sheets : GASWS1 เมนู Tools > Script Editor… เมนู File > New > Script File ตั้งชื่อ: myscript6 สร้าง function MailMerge4() ตามนี้ function MailMerge4() { var ss = SpreadsheetApp.getActiveSpreadsheet(), SalarySheet=SpreadsheetApp.setActiveSheet(ss.getSheetByName(“Salary”)), TemplateID=’1bjpQnJikYMGYNaJQhetpZpkHyjI7iqBqDufprzMSo4k’, header = “A1:G1″, data=”A2:G6”, dataRows = SalarySheet.getRange(data).getValues(), headerRow = SalarySheet.getRange(header).getValues(), numColumns = SalarySheet.getRange(header).getNumColumns(), emailaddress= “”, subject = “”, docUrl = “”; for (var i=0 ; i < dataRows.length ; i++) { emailText=””; subject = “[ลับ] กองคลัง : แจ้งการโอนเงินให้คุณ ” + dataRows[i][0] + ” ” + dataRows[i][1]; var id =DriveApp.getFileById(TemplateID).makeCopy(subject).getId(), doc=DocumentApp.openById(id), docBody=doc.getBody(); for (var j = 0 ; j < numColumns -1 ; j++) { docBody.replaceText(‘{‘ + headerRow[0][j] + ‘}’ , dataRows[i][j]); } emailaddress=dataRows[i][2]; doc.addViewer( emailaddress); docUrl=doc.getUrl(); doc.saveAndClose(); var attachment = DocumentApp.openById(id); MailApp.sendEmail( emailaddress, subject , “เปิดอ่านเอกสารลับได้ที่ \n” + docUrl ); try { dataRows[i][numColumns-1] = new Date(); } catch (e) { dataRows[i][numColumns-1] = e.message; } } SalarySheet.getRange(data).setValues(dataRows); } เมนู File > Save หรือ กดปุ่ม Ctrl+s เมนู Run > MailMerge4 สร้าง function MailMerge5() ตามนี้ function MailMerge5() { var ss = SpreadsheetApp.getActiveSpreadsheet(), SalarySheet=SpreadsheetApp.setActiveSheet(ss.getSheetByName(“Salary”)), TemplateID=’1WzzAwF5cDtQD0kcrLKRdP0ZO6-6MCqc_VXRUxzgq_gI’, header = “A1:H1″, data=”A2:H6”, dataRows = SalarySheet.getRange(data).getValues(), headerRow = SalarySheet.getRange(header).getValues(), numColumns = SalarySheet.getRange(header).getNumColumns(), emailaddress= “”, subject = “”, docUrl = “”; for (var i=0 ; i < dataRows.length ; i++) { emailText=””; subject = “[ลับสุดยอดดดดด] กองคลัง :

Read More »

วิธีกู้ไฟล์ที่ถูก Ransomware จับไปเรียกค่าไถ่

Ransomware หรือ โปรแกรมเรียกค่าไถ่ไฟล์ต่างๆ โดยการเข้ารหัสไฟล์เหล่านั้น ทำให้ไม่สามารถเปิดใช้งานได้อีก นอกจากจะยอมเสียค่าไถ่ให้กับผู้ร้ายด้วยเงินสกุล Bitcoin โปรแกรมเหล่านี้จะมาจากการติดตั้ง หรือถูกหลอกให้ติดตั้ง ผ่านทางเว็บไซต์ “อโคจร” ต่างๆ Software เถื่อน ละเมิดลิขสิทธิ์ทั้งหลาย และที่มีบ่อยมากคือ มาจาก “จดหมายหลอกลวง (Phishing)” ซึ่งทำให้ติดเชื้อได้อย่างง่ายดาย ข้อมูลเพิ่มเติม https://www.thaicert.or.th/alerts/user/2015/al2015us001.html เมื่อติด หรือ โดนเรียกค่าไถ่ เรียกได้ว่า ยากมากหรือแทบเป็นไปไม่ได้ที่จะกู้คืนโดยการ Decrypt  หรือถอดรหัสกลับคืน มีวิธีการเดียวที่ทำได้เลยคือ “กู้คืนจากไฟล์สำรองไว้” บนระบบปฏิบัติการ Microsoft Windows เอง ก็สามารถทำได้ โดยผู้ใช้จะต้อง “ตั้งค่าการสำรองข้อมูล” ไว้ก่อน จึงจะสามารถกู้คืนได้ แต่หากเครื่องคอมพิวเตอร์เครื่องนั้นเสียหาย ก็จะไม่สามารถกู้คืนได้อีกเลย แต่ยังมีวิธีการ “สำรองและกู้คืน” ที่ง่าย ปลอดภัย และแม้ว่าเครื่องคอมพิวเตอร์จะเสียหายอย่างไร ก็จะสามารถ “กู้คืนข้อมูลได้” นั่นคือการใช้งาน Google Drive ในการสำรองข้อมูล โดยผู้ที่มี Google Account หรือ Gmail สามารถใช้งานได้ทันที โดยมีพื้นที่ให้ 15 GB (รวมกับการเก็บ email) ส่วนผู้ใช้ในมหาวิทยาลัยสงขลานคริทนร์ จะได้ใช้ Google Apps for Education ซึ่งมีพื้นที่ในการจัดเก็บ “Unlimited” หรือไม่มีขีดจำกัดเลยทีเดียว (เบื้องต้นจะเห็นพื้นที่จัดเก็บ 10 TB — 10,000 GB) Google Drive เป็นพื้นที่จัดเก็บข้อมูลบนก้อนเมฆ หรือ Cloud Storage ผู้ใช้ของ Google Account สามารถเข้าถึงได้ที่ https://drive.google.com เมื่อทำการลงชื่อเข้าใช้งาน (Sign In)  แล้วก็จะสามารถมองเห็นข้อมูลบนระบบ สามารถสร้าง Folder และ Upload ไฟล์ขึ้นไปเก็บได้ และสามารถเข้าถึงได้จากทั้ง เครื่องคอมพิวเตอร์ และ Smartphone ได้จากทุกแห่งทั่วโลก ดังภาพที่ 1 (โดยต้องมีระบบ Internet เข้าถึงนะ)   ภาพที่ 1: Google Drive บนระบบ Google Apps for Education ของมหาวิทยาลัยสงขลานครินทร์ ในที่นี้ จะแสดงวิธีการ สร้างโฟล์เดอร์ชื่อว่า “เอกสารสำคัญ” ไว้บน Google Drive เพื่อใช้ในการสำรองไฟล์สำคัญไว้ ขั้นตอนคือ คลิกที่ New > Folder แล้วตั้งชื่อว่า “เอกสารสำคัญ” แล้วคลิกปุ่ม Create ดังภาพที่ 2 ภาพที่ 2: สร้างโฟล์เดอร์ชื่อว่า “เอกสารสำคัญ” ไว้บน Google Drive ส่วนการทำงานเพื่อ Backup ข้อมูลบนเครื่องคอมพิวเตอร์ไปเก็บไว้บนระบบ Google Drive อัตโนมัติ ทำได้โดยติดตั้งโปรแกรม “Google Drive” บนเครื่องคอมพิวเตอร์ แล้วตั้งค่าให้ Sync ข้อมูลกับโฟลเดอร์ “MyGoogleDrive” ใน My Documents ของเครื่องคอมพิวเตอร์ ดังวิธีการต่อไปนี้ Google Drive สามารถดาว์นโหลดได้จาก https://www.google.com/drive/download/ เมื่อติดตั้งเรียบร้อยแล้วให้ลงชื่อเข้าใช้ และคลิก Next ไปเรื่อยๆ ดังภาพที่ 3 ภาพที่ 3: คลิก “ถัดไป” จนถึงหน้าจอสุดท้าย หน้าจอสุดท้าย คลิก “การตั้งค่าขั้นสูง” ดังภาพที่ 4 ภาพที่ 4: คลิก “การตั้งค่าขั้นสูง” คลิก “เปลี่ยน” แล้วสร้าง MyGoogleDrive ไว้ใน My Documents ดังภาพที่ 5 ภาพที่ 5: สร้าง MyGoogleDrive ไว้ใน My Documents ต่อไป เลือก

Read More »

การส่ง email ถึงผู้รับตามที่กำหนด พร้อมแนบข้อความ/ไฟล์ที่ต้องการ

ปิด Google Sheets : GASWS1 เมนู Tools > Script Editor… เมนู File > New > Script File ตั้งชื่อ: myscript6 สร้าง function MailMerge3() ตามนี้ function MailMerge3() { var ss = SpreadsheetApp.getActiveSpreadsheet(), SalarySheet=SpreadsheetApp.setActiveSheet(ss.getSheetByName(“Salary”)), TemplateID=’1bjpQnJikYMGYNaJQhetpZpkHyjI7iqBqDufprzMSo4k’, header = “A1:G1″, data=”A2:G6”, dataRows = SalarySheet.getRange(data).getValues(), headerRow = SalarySheet.getRange(header).getValues(), numColumns = SalarySheet.getRange(header).getNumColumns(), emailText = “”; for (var i=0 ; i < dataRows.length ; i++) { emailText=””; var id =DriveApp.getFileById(TemplateID).makeCopy(“กองคลัง : แจ้งการโอนเงินให้คุณ ” + dataRows[i][0] + ” ” + dataRows[i][1]).getId(), doc=DocumentApp.openById(id), docBody=doc.getBody(); for (var j = 0 ; j < numColumns -1 ; j++) { docBody.replaceText(‘{‘ + headerRow[0][j] + ‘}’ , dataRows[i][j]); } emailText=docBody.getText(); doc.saveAndClose(); var emailaddress=dataRows[i][2], subject = “กองคลัง : แจ้งการโอนเงินให้คุณ ” + dataRows[i][0] + ” ” + dataRows[i][1], attachment = DocumentApp.openById(id); MailApp.sendEmail( emailaddress, subject , emailText, { attachments: [attachment.getAs(MimeType.PDF)] } ); try { dataRows[i][numColumns-1] = new Date(); } catch (e) { dataRows[i][numColumns-1] = e.message; } } SalarySheet.getRange(data).setValues(dataRows); } เมนู File > Save หรือ กดปุ่ม Ctrl+s เมนู Run > MailMerge3

Read More »