Category: Automation System

  • สร้าง Form ลงทะเบียนออนไลน์ด้วย Google Form (รูปแบบใหม่) ให้ตอบรับผ่านทางอีเมลโดยอัตโนมัติ พร้อมปิด Form อัตโนมัติเมื่อครบเต็มจำนวน

    จากที่ผมเคยได้เขียนวิธีการสร้างแบบฟอร์มลงทะเบียนออนไลน์ด้วย Google Form ให้ตอบรับผ่านทางอีเมลโดยอัตโนมัติ มาวันนี้ ทาง Google ได้เปลี่ยนรูปแบบการสร้าง Form ใหม่ทั้งหมด จึงทำให้วิธีการสร้างแบบฟอร์มออนไลน์แบบเก่านั้นใช้ไม่ได้อีกแล้ว

    ดังนั้นเรามาดูวิธีการสร้าง Google Form แบบใหม่กันดีกว่าว่าเป็นอย่างไร ซึ่งต้องขอบอกว่า “มันง่ายมากๆ”


    1. คลิก Google Forms  เพื่อสร้างแบบฟอร์มลงทะเบียนออนไลน์

    Screen Shot 2559-07-23 at 3.34.20 PM
    Screen Shot 2559-07-23 at 3.38.37 PM

    2. ใส่รายละเอียด ข้อมูล รูปแบบ ในแบบลงทะเบียนตามที่ต้องการ
    (รูปแบบใหม่สามารถใส่ภาพที่เราออกแบบไว้ได้แล้วนะครับ โปสเตอร์ แบนเนอร์ ต่างๆ)

    Screen Shot 2559-07-23 at 3.43.21 PM

    + เราสามารถแบ่ง Form ของเราออกแบบเป็นหลายๆ section ได้นะครับ กรณีที่มีข้อมูลให้ต้องกรอกจำนวนมาก

    Screen Shot 2559-07-23 at 3.44.34 PM

    3. ติดตั้ง Add ons…

    Add ons ที่ผมจะติดตั้งนั้น มีด้วยกัน 2 อย่าง ดังนี้

    A. Form Confirmation Emails  คือ ระบบตอบรับการลงทะเบียนผ่านทางอีเมลอัตโนมัติ เมื่อผู้ใช้ลงทะเบียนผ่านฟอร์มเรียบร้อยแล้ว ระบบจะส่งเมลตามที่เราตั้งค่าไว้ไปให้ทางอีเมลที่ระบุไว้

    B. FormLimiter  คือ การปิดแบบฟอร์มลงทะเบียนอัตโนมัติ เมื่อมีผู้ใช้ลงทะเบียนครบตามจำนวนที่กำหนดไว้

    Screen Shot 2559-07-23 at 2.52.19 PM
    Screen Shot 2559-07-23 at 2.54.35 PM
    Screen Shot 2559-07-23 at 2.55.28 PM
    Screen Shot 2559-07-23 at 2.56.03 PM
    Screen Shot 2559-07-23 at 2.56.23 PM

    เมื่อติดตั้งเสร็จเรียบร้อยจะมี icons เพิ่มขึ้นมา ดังภาพ

    Screen Shot 2559-07-23 at 2.59.47 PM

    4. กำหนดรูปแบบการส่งเมลตอบรับอัตโนมัติ

    แบบฟอร์มตัวอย่างที่นำเสนอนั้น มีช่องให้ใส่ข้อมูล 3 อย่าง ดังภาพ

    (แนะนำให้ตั้งชื่อ Field ให้เป็นภาษาอังกฤษครับผม)

    Screen Shot 2559-07-23 at 4.20.18 PM

    เริ่มต้นตั้งค่า
    คลิกเลือก Form Confirmation Emails > Configure confirmations

    Screen Shot 2559-07-23 at 3.01.38 PM
    จากนั้นจะมีกล่องขึ้นมาให้มุมล่างขวา เพื่อให้กำหนดค่าต่างๆ

    Collage_Fotor

    คลิกเลือก Send Confirmations  กำหนดชื่อผู้ส่ง และรูปแบบการส่งเป็น E-mail <คลิก Continue>

    Email subject กำหนดชื่อหัวข้อของเมลที่ต้องการส่ง

    Email body เป็นการกำหนดรูปแบบของข้อมูลที่จะส่งไป ซึ่งจะอยู่ในรูปแบบของ HTML
    (สามารถดูตัวอย่างจาก Code ด้างล่าง) ถ้าใครมีรูปแบบอื่นก็สามารถทำได้ครับ ผมทำแบบง่ายๆ

    เมื่อกำหนดรูปแบบเสร็จเรียบร้อยแล้ว กดปุ่ม Save เป็นอันเสร็จสิ้น

    <html>
      <head>
      <meta charset="UTF-8">
      <title>TELL ME MORE PSU</title>
      </head>
     <body>
      <p>เรียนคุณ: ${"Name-Surname"}</p>
      <p> <br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ตามที่ท่านได้สมัครเข้าร่วมอบรม หลักสูตร TOEIC (เตรียมความพร้อมการสอบ)<br>
      <br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #FF0004"><strong>กลุ่มที่ 2  หลักสูตร TOEIC นักศึกษาระดับปริญญาตรี และระดับบัณฑิตศึกษา<br>
      </strong></span><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ณ ห้องอบรม 1 ชั้น 8  อาคารศูนย์ทรัพยากรการเรียนรู้ (LRC1)</strong><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #FF0004"><strong>เริ่มเรียน : 13 กรกฎาคม - 4 สิงหาคม 2559 (เวลา 13.30 - 15.30 น.)</strong></span><br><br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #0099FF">เพื่อเป็นการยืนยันสิทธิ์เข้ารับการอบรม<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;กรุณาตอบกลับผ่านทาง E-mail :</span> tmmpsu@gmail.com</a> ด้วยค่ะ<br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(ภายในวันที่ 11 กรกฎาคม 2559 หรือจนกว่าครบตามจำนวนที่กำหนด) รับจำนวน 25 คนเท่านั้น <br>
      <br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong style="color: #FF0004">ขอสงวนสิทธิ์ให้กับผู้ที่ได้ยืนยันสิทธิ์ในการเข้าอบรมผ่านทางอีเมลก่อน</strong><br>
      <br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #FF0004"><strong>ติดตามการประกาศรายชื่อผู้มีสิทธิ์เข้าร่วมอบรมโครงการอีกครั้งได้ที่: </strong></span><a href="http://clpd.psu.ac.th/" target="_blank">http://clpd.psu.ac.th/</a><br>
      <br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;หากมีข้อสงสัยใดๆ สามารถสอบถามเพิ่มเติมได้ที่ หมายเลขโทรศัพท์ 0-7428-9207<br>
      <br>
      <br>
      ขอบคุณสำหรับการเข้าร่วมโครงการค่ะ<br>
      <br>
      ศูนย์ส่งเสริมและพัฒนาการเรียนรู้ มหาวิทยาลัยสงขลานครินทร์<br>
      โทรศัพท์ : 0-7428-9207<br>
      E-mail : <a href="mailto:clpdpsu@gmail.com" target="_blank">tmmpsu@gmail.com</a></p>
      </body>
      </html>

    ภาพตัวอย่างจากการส่งเมล

    Screen Shot 2559-07-23 at 3.26.02 PM

    จากนั้นให้ทำการทดสอบการใช้งานดูว่า มันสามารถส่งเมลได้จริงหรือไม่ด้วยนะครับ

    “ก่อนการใช้งานจริงทุกครั้ง”


    5. วิธีการปิดแบบฟอร์มออนไลน์อัตโนมัติ เมื่อครบเต็มจำนวน

    เหมาะสำหรับการลงทะเบียนจำนวนไม่มาก (ไม่เกิน 100 คน) และป้องกันการลงทะเบียนเกินจำนวนที่กำหนดไว้

    ซึ่งจริงๆ แล้วระบบอีเมลของ Google นั้นระบุเงื่อนไขในการส่งเมลออกใน 1 วันไว้ไม่เกิน 100 ฉบับ ดังนั้น ถ้ามีผู้ใช้มาลงทะเบียนผ่านแบบฟอร์มจำนวนมาก ๆ ก็จะถูกปิดระบบการส่งเมลออกไปโดยทันที่เนื่องจากเกินจำนวนที่ได้กำหนดไว้นั่นเอง

    เริ่มต้นไปที่ หน้า Google Form ของเราที่ได้สร้างไว้ คลิกแท็บ RESPONSES จากนั้นคลิกปุ่ม สีเขียว ดังภาพ

    Screen Shot 2559-07-23 at 4.46.46 PM

    แล้วทำการตั้งชื่อ Form (แนะนำว่าให้ตั้งชื่อให้เหมือนกัน แล้ววงเล็บไว้ว่า “Responses” ก็ได้ครับ)

    จากนั้นกดปุ่ม CREATE

    Screen Shot 2559-07-23 at 4.47.18 PM

    จากนั้นกำหนดชื่อคอลัมภ์ ให้เรียงลำดับตรงกันกับ Google Form ที่เราได้สร้างไว้ตอนแรก

    เพื่อที่เวลาบันทึกข้อมูลจะได้ไม่สับสน (ให้ใช้ชื่อที่เป็นภาษาอังกฤษเหมือนกันมาตั้งครับ)

    Screen Shot 2559-07-23 at 3.17.54 PM

    ภาพ Google Form

    Screen Shot 2559-07-23 at 4.20.18 PM

    ขั้นตอนต่อไป ให้สร้าง Sheet2 ขึ้นมาตรงแท็บด้านล่างครับ

    ชื่อของ Sheet อันแรก ให้กำหนดเป็น Form responses นะครับ ตามภาพ

    จากนั้นให้ใส่ Code ลงไปในช่อง A1 ดังนี้

    =COUNTUNIQUE('Form responses'!$B$2:$B$100)

    เป็นการกำหนดให้นับจำนวนในคอลัมภ์ B ของSheet Form responses
    ที่เป็นคอลัมภ์ B เพราะเป็นข้อมูล “ชื่อ-นามสกุล” ดังนั้น ถ้าลงทะเบียนซ้ำมาหลายๆ ครั้ง ก็จะนับแค่ 1 ครับ

    Screen Shot 2559-07-23 at 3.17.05 PM

    ตัวอย่างการนับจำนวน กรณีที่มีการลงทะเบียนแล้ว

    Screen Shot 2559-07-23 at 3.24.13 PM

    Screen Shot 2559-07-23 at 3.24.32 PM

    จากนั้นมากำหนดค่าใน FormLimiter ต่อครับ ในหน้าแรกของ Google Form
    คลิกเลือก FormLimiter > Set limit

    Screen Shot 2559-07-23 at 2.59.47 PM
    Screen Shot 2559-07-23 at 3.13.08 PM

    คลิกเลือก destination spreadsheet cell value

    (หัวข้อนี้จะไม่ปรากฎให้เห็นถ้าหากว่ายังไม่ได้สร้าง Sheet2 ขึ้นมาทีครับ)

    Screen Shot 2559-07-23 at 3.13.23 PM

    ให้ใส่ Sheet2!A1 ลงในช่องดังภาพ ตามcode ที่เราได้ระบบไว้เบื้องต้น

    กำหนดจำนวนที่เราต้องการเปิดให้ลงทะเบียน เมื่อระบบนับได้ว่าถึงจำนวนที่เราระบุไว้ ก็จะทำการปิดระบบโดยอัตโนมัติทันที ซึ่งในช่องด้านล่าง เราสามารถกำหนดข้อความเมื่อแบบฟอร์มได้ถูกปิดเรียบร้อยแล้วได้ เพื่อเป็นการแจ้งข้อมูล

    จากนั้นกดปุ่ม Save and enable เป็นอันเสร็จสิ้น

    Screen Shot 2559-07-23 at 3.14.25 PM

    หมายเหตุ อย่าลืมทดสอบก่อนใช้งานจริงนะครับ

    เมื่อสร้างไฟล์ได้สักครั้งแล้ว เราสามารถ Copy ของเก่ามาแก้ไขได้นะครับ

    Screen Shot 2559-07-23 at 5.20.44 PM

    เมื่อสร้างไฟล์ทุกครั้ง จะมีด้วยกัน 2 ไฟล์ ดังภาพ

    ดังนั้นเวลา Copy ไฟล์ เพื่อสร้างแบบฟอร์มใหม่ ให้เลือก Copy เฉพาะ Google Form (สีม่วง) เท่านั้น

    แล้ว Google Sheets จะถูกสร้างขึ้นมาเองครับ

    ปล. หากมีข้อผิดพลาดประการใด ต้องขออภัยไว้ด้วยครับ และสามารถแจ้งเพื่อแก้ไขได้นะครับ

  • วิธีทำให้อีเมลของ psu.ac.th ไม่ไปอยู่ใน Spam ของ Gmail

    ปัญหา: ผู้ใช้แจ้งว่าอีเมลจาก PSU ไม่ว่าจะเป็นส่วนบุคคลหรือ จาก group mail มักจะหลุดไปอยู่ใน Spam ของ Gmail

    วิธีการแก้ไข:

    1. ในช่อง Search ของ Gmail จะมี Search Options ให้คลิกตามภาพ

    1

    2. ในช่อง From ใส่คำว่า psu.ac.th แล้วคลิก Create filter with this search

    2

    3. คลิก Never send it to Spam แล้วคลิก Create Filter

    3

  • psuautosigned for windows?

    เช้าของวันที่ 14 ธันวาคม 2558 คุณ คณกรณ์ post ถามไว้ในกลุ่ม PSU Sysadmin บน facebook ว่า

    เรียนสอบถาม (จะได้ไม่ต้องทำซ้ำ) บน windows 10 ใครมี script ให้ทำการ auto authentication บ้างไม๊ครับ บางเครื่องต้องเปิดค้างไว้ข้ามวัน จะได้เข้ามาดูทางไกลได้ น่ะครับ ตอนนี้ใช้ team viewer ก็ยังติดเรื่องนี้อยู่ดี

    ขอบคุณครับ

    มีคุณ Thanongdat Noosrikaew กับคุณ ป้อม เภสัชฯ (Siripong Siriwan)  มาเสนอทางเลือกในการแก้ปัญหา แต่ดูเหมือนจะไม่ตรงกับที่เจ้าของคำถามต้องการสักเท่าไหร่
    ผมอ่านแล้วก็ตั้งคำถามกับตัวเองว่า แล้วผมจะต้องตอบคำถามนี้ ผมมีทางเลือกอะไรบ้าง?
    คำตอบที่มีให้กับตัวเองก็คือ หากินกับของเก่าที่เคยทำเอาไว้แล้ว … คือ… มีคำสั่งคำสอน ที่ถ่ายทอดมาตั้งแต่ยุคโบราณกาลครั้งเก่าโพ้น ในชนเผ่า sysadmin ว่า sysadmin ที่ดีจะเป็นคนขี้เกียจ อะไรที่ได้ทำไว้แล้ว และยังเอามาใช้ได้ ก็ไม่ควรที่ทำขึ้นมาใหม่ … อันนั้น เป็นเรื่องที่ผมได้ยินมานะครับ จะเชื่อถือได้แค่ใหนก็แล้วแต่ท่านทั้งหลายจะได้พิจารณากัน

    ผมก็เลยพยายามทำตัวเป็น admin ขี้เกียจ .. เฮ่ย ไม่ใช่ เป็น admin ที่ดี ซึ่ง … ก็คือ ขี้เกียจน่ะแหละ -_-”
    มีอะไรที่เคยทำเอาไว้แล้ว ก็เอามา recycle ขายใหม่ ถ้าขายได้ … เราต้องช่วยกันอนุรักษ์สิ่งแวดล้อม … เกี่ยวกันใหม?

    คำตอบแรกที่ผมคิดได้ก็คือ

    ถ้า ยังหา solution บน Windows โดยตรงไม่ได้ และ ไม่รังเกียจที่จะติดตั้ง cygwin เพิ่มเข้าไปบนตัว windows ผมคิดว่า psuautosigned ที่เขียนไว้สำหรับ Linux ก็น่าจะพอดัดแปลงให้ใช้งานบน Windows ได้ครับ ฟังก์ชัน หลักๆ ต้องการแค่ shell ซึ่งอาจจะเป็น cmd.exe ของ windows เองก็ได้ กับโปรแกรมที่ชื่อว่า curl ครับ โปรแกรมอย่างอื่นเป็นแค่ตัวประกอบ แต่ทั้งหมด รวมทั้ง shell และ curl มีอยู่ใน cygwin อยู่แล้ว

    ผมไม่มีเครื่องที่ใช้งาน windows 10 ให้ลอง ถ้าจะช่วยทดสอบให้ ผมก็ยินดีที่จะแก้ script ให้รองรับ windows 10 ด้วยครับ

    โปรแกรม psuautosigned ที่ผมอ้างถึงคือ ตัวนี้ ซึ่งเคยเขียนถึงเอาไว้แล้ว ที่นี่ , ที่นี่, ที่นี่, และ ที่นี่ … ซึ่ง มาคิดดูอีกที เยอะแฮะ กับ script ตัวเดียวทำไมจะต้องเขียนบันทึกเกี่ยวกับมันหลายบันทึกด้วยก็ไม่รู้ จะว่าไป บันทึกนี้เอง ก็นับเป็นหนึ่งในชุดนี้ด้วยแหละ

    ส่วน cygwin ก็คือ https://www.cygwin.com/ เป็น tools สำหรับ Windows ให้สามารถใช้งานได้เหมือน(หรือใกล้เคียงมากๆ) กับการใช้ชีวิตอยู่บน Unix Command Line … ซึ่งเนื่องจาก script psuautosigned พัฒนาและใช้งานบน Linux ถ้าจะให้เอาไปใช้งานบนเครื่อง Windows 10 ได้ตามความต้องการของคุณหนุ่ม ก็ต้องการเครื่องมือเหล่านี้ มาช่วยด้วย

    นั่นหมายถึงว่า ถ้าจะเอาไปใช้ จะต้องติดตั้งโปรแกรมเพิ่ม และ ถึงแม้ว่า cygwin จะสร้างสภาพแวดล้อมแบบ Unix บนเครื่อง Windows เจ้าตัว script ที่ผมเขียน และ ทดสอบบน Debian Linux ก็จะยังไม่สามารถเอาไปใช้งานได้ทันที มันจะต้องการแก้ไขบางส่วนแน่ ๆ

    พอนั่งทบทวนไปสักพักว่ามีส่วนใหนที่จะต้องแก้ไขบ้าง จากความจำที่ค่อนข้างลางเลือนในส่วนที่เกี่ยวข้องกับ cygwin เพราะไม่ได้ใช้ Windows นานมาก และ cygwin ก็ไม่ได้แต่นานมากเช่นเดียวกัน และ มีความขี้เกียจ เอ๊ย! ผิด! มีคุณลักษณะที่ดีของ sysadmin เป็นตัวกระตุ้น … ผมก็ได้ idea ใหม่แจ่มแจ๋วขึ้นมา

    นี่คือสิ่งที่ผม post reply ตามไปจาก reply ที่แล้ว

     

    หรือ อีกทางนึง ถ้ามี resource บนเครื่อง windows 10 เหลือเฟือ และไม่รังเกียจที่จะเสีย เนื้อที่ harddisk สัก 512MB และ memory สัก 32MB ก็ติดตั้ง virtualbox (เอ่อ เนื้อที่ harddisk กับ ram ข้างต้นไม่รวมของ virtualbox) และติดตั้ง linux ตัวใหนก็ได้แบบ minimal (แต่แนะนำ debian) ลงไปต้องการแค่ bash shell, basic linux utils และ ติดตั้งโปรแกรม curl เพิ่ม กำหนดให้ interface ของ VM เป็นแบบ NAT ก็จะสามารถใช้โปรแกรม psuautosigned สำหรับการ authen จากตัว VM ซึ่งเมื่อใช้งานเป็นแบบ NAT ก็จะ authen ให้กับ host ที่เป็น windows 10 ด้วยเลย วิธีการนี้ ก็ไม่จำเป็นที่จะต้องดัดแปลง psuautosigned ใดๆทั้งสิ้นครับ

    และ

    ถ้า เลือกใช้วิธีการติดตั้ง debian บน VM ตอนติดตั้งจะต้องให้ memory ของเครื่องซํก 256 หรือ 512 MB ก่อนนะครับ เพราะตอนตั้ง มันจะใช้ RAM ค่อนข้างเยอะ ถ้ามี memory น้อยเกินไปจะติดตั้งไม่สำเร็จ แต่ พอติดตั้งเสร็จแล้ว ก็ค่อยลด memory ให้เหลือเท่าที่จำเป็นต้องใช้ ผมไม่แน่ใจว่าตอนนี้มันต้องการเท่าไหร่ แต่ถ้าไม่มีอะไรอย่างอื่นที่ไม่จำเป็นต้องใช้ run อยู่เลย ผมคิดว่า 32MB ก็เหลือเฟือครับ เครื่องของผมที่ run linux สมัยแรกๆ ใช้ RAM แค่ 8MB ก็ run ได้โดยไม่แตะ swap ในตอน boot และใช้แค่ console ไม่ได้ run X-windows

    ข้อดีที่สุดของวิธีการนี้ ถ้าคุณหนุ่มจะเอาไปใช้ก็คือ จะต้องไป download และ ติดตั้งโปรแกรม virtualbox จาก ที่นี่ แล้วก็สร้าง Virtual Machine ที่เป็น Linux ขึ้นมา ซึ่งถ้า Linux ที่เป็น Debian ตามที่ผมแนะนำ ตัว script ก็สามารถที่จะทำงานได้เลย โดยไม่ต้องแก้ไขใดๆทั้งสิ้น ปล่อยภาระของการแก้ปัญหาเรื่องนี้ ให้เป็นการติดตั้ง Linux บน Virtual Box ของคุณหนุ่มไป ส่วนผม อยู่เฉยๆ ทำตัวขี้เกี… เอ๊ย ทำตัวเป็น sysadmin ที่ดี ที่มีทั้งหลังที่ยาว และ ขนตามตัวยาวเฟื้อยต่อไป 😉

    อันที่จริง วิธีการนี้ จะเป็นการใช้ psuautosigned script สำหรับการ signed in หรือ login สำหรับตัวเครื่อง Virtual Machine ที่เป็น Linux แต่ trick สำหรับกรณีนี้ก็คือว่า ถ้ากำหนดให้ชนิดของ Network Interface ของ Virtual Box เป็นแบบ NAT ตัว Host OS ของเครื่อง ซึ่งในกรณีนี้ก็คือ Windows 10 จะส่งข้อมูลของการติดต่อ ของ Linux VM ไปยังเครื่องอื่นๆด้วย IP Address ของเครื่อง Windows 10 เอง เมื่อ Linux VM ไป authentication กับเครื่อง Palo Alto ก็จะใช้ address ของ Windows 10 ก็เลยเป็นการ authentication ให้กับตัว Windows 10 ซึ่งเป็น host computer ไปด้วยกันเลย ทำให้ไม่จำเป็นจะต้องใช้การ authen ใดๆจาก Windows 10 เอง

    และ ถ้าจะว่าไป ในกรณีนี้ ไม่จำเป็นที่จะต้องใช้ VirtualBox ก็ได้ อาจจะใช้ VMWare หรือ Virtualization อื่นๆที่สามารถใช้งานได้บนเครื่อง Windows ก็สามารถืำได้แบบเดียวกัน ข้อสำคัญก็คือ ชนิดของเครือข่ายที่จะให้ Linux VM ติดต่อออกสู่ภายนอก จะต้องเป็นแบบ NAT ก็ทำได้แบบเดียวกัน เพียงแต่ผมไม่เคยใช้งาน Virtualization Technology อื่นๆ ก็เลยไม่แนะนำครับ เพราะคงตอบคำถามเกี่ยวกับวิธีการ setup network ให้กับ virtual machine ไม่ได้

    โดยหลักๆ วิธีการแก้ปัญหา ของผมก็คงมีแค่นี้แหละ

    แต่หลังจากตอบคำถามไปแล้ว ก็เลยกลับไปดู script ที่เคยเขียนไว้อีกหน่อยนึง อันที่จริง ก็เขียนเอาไว้นานจนจำแทบไม่ได้เหมือนกันว่าได้เขียนอะไรไว้บ้าง แต่พอลองเอามาไล่ดูและ ตัดเอาเฉพาะส่วนที่จำเป็นออก ก็ได้ script สำหรับการใช้งาน บน Linux ประมาณนี้ครับ

    #!/bin/bash

    USER=”YOUR-PASSPORT-ID”
    PASSWD=”YOUR-PASSPORT-PASSWORD”
    COOKIES=”cookies.txt”

    /usr/bin/curl \
    –connect-timeout 10 \
    –max-time 10 \
    -s -k \
    -L ‘https://cp-ufw.psu.ac.th:6082/php/uid.php?vsys=1‘ \
    -c $COOKIES \
    -b $COOKIES \
    -d user=$USER \
    –data-urlencode “passwd=$PASSWD” \
    -d ok=Login

    และนี่คือคำอธิบายที่ผม post ตามไป

    อันนี้ ไม่มีการตรวจสอบอะไรทั้งสิ้น และมีการเรียกใช้งานเพียงครั้งเดียว ซึ่งมันก็จะ timeout ไปตามช่วงเวลา ถ้าจะให้มัน authen ได้ตลอด ก็อาจจะเรียกใช้จาก crontab ทุกๆช่วงเวลาก่อนที่มันจะ timeout ไป ผมไม่แน่ใจว่าค่า timeout ล่าสุดจะเป็นเท่าไหร่ แต่ที่ผมใช้อยู่ผมให้มัน loop ไป check login ว่า authenticate ไปแล้วหรือเปล่า ทุกๆ 10 นาที URL ซึ่งใช้ตรวจสอบการ login จะต่างไปจากนี้ แต่ผมคิดว่า ถ้าสั่งให้ authen ใหม่ ผลก็น่าจะไม่ต่างกัน script ข้างบน ถ้าจะให้ใช้งานได้จาก windows 10 ก็ คงเปลี่ยนบรรทัดแรกให้ไป อ้างอิง cmd.exe หรือ เปลี่ยนเป็นชื่อเป็น .bat และ path ที่ใช้อ้างอิง /usr/bni/curl ก็เปลี่ยนไปใช้ของ Windows

    ส่วน parameter ของ curl ทั้งหมด ก็ลบเครื่องหมาย backslash ของทุกบรรทัดออก ให้เหลือคำสั่งแค่บรรทัดเดียวก็น่าจะใช้งานได้แล้วครับ

    อ้อ เปลี่ยน USER กับ PASSWD แล้วก็ COOKIES (ชื่อไฟล์สำหรับเก็บ cookeis) ให้เป็นค่าที่เหมาะสมด้วยครับ

    เนื่องจากโปรแกรมยังไม่ได้ทดสอบกับเครื่องที่เป็น Windows 10 จริงๆ ก็เลย ให้แนะนำตามในคำอธิบาย แต่ในแง่ของการติดตั้งโปรแกรมเพิ่ม ตัว script ตัวนี้ น่าจะเป็นตัวที่มีขนาดเล็ที่สุดแล้วครับ code สามารถ download ได้ ที่นี่

  • [Google Calendar] วิธีตั้งค่าความเป็นส่วนตัว

    1. โดยค่าเริ่มต้น ปฏิทิน (Calendar) ของทุกคนในองค์กร จะตั้งค่าให้สามารถเห็นรายละเอียดของเหตุการณ์ (Event) ได้
    2. จากตัวอย่าง ด้านขวามือ เป็นปฏิทินของ Boss
      ด้านซ้ายมือ เป็นปฏิทินของ Staff คนหนึ่ง
    3. เมื่อ Staff เรียกดูปฎิทินของ Boss จะเห็นรายละเอียดต่างๆได้
    4. เมื่อสร้างเหตุการณ์ (Event) ใหม่ เช่น “10:00-12:00 หมอนัดตรวจ”
      ให้ตั้งค่า
      Show me as ⇒ Busy
      Visibility ⇒ Private
    5. ผลทำให้เฉพาะ Event นี้ มีความเป็นส่วนตัว
    6. หากต้องการให้ทั้งปฏิทิน เป็นส่วนตัว
      ให้คลิกที่ Share this calendar
      เลือก See only free/busy (hide details)
      แล้วคลิก Save
    7. ผลทำให้ทั้งปฏิทินนี้ มีความเป็นส่วนตัวทั้งหมด
  • [Google Calendar] วิธีหาเวลาว่างที่ตรงกัน สำหรับผู้เข้าร่วมประชุมหลายๆคน

    1. ใน Google Calendar สร้าง Event ใหม่ ตั้งชื่อ และกำหนดเวลาที่ต้องการ เช่น ต้องการเวลาประชุม 2 ชั่วโมง
    2. เชิญผู้เข้าร่วมประชุม โดยใส่ Email Address ทีละคน
      หรือ ใส่ชื่อ Group ใน Contact
      หรือ ใส่ชื่อ Google Groups ที่สร้างไว้ก็ได้
    3. คลิก Find a time เพื่อหาเวลาว่างที่ตรงกัน คลิกที่ Day
      หากเวลาที่ตั้งไว้ตอนแรกชนกับนัดของคนอื่น ก็สามารถเลื่อนไปมา เพื่อหาเวลาที่ลงตัวได้
    4. หากในวันดังกล่าว ไม่มีเวลาว่างตรงกันเลย ให้คลิกที่ Weekเพื่อหาเวลาว่างในวันอื่นๆได้

     

  • ได้นามบัตรมา จะแปลงเป็น Google Contact ได้อย่างไร

    เจ้านายได้นามบัตรมามากมาย ครั้นจะต้องพกไปไหนมาไหนตลอดคงไม่สะดวก ค้นหาก็ยาก เลขาอย่างเราจะช่วยอย่างไรดี ?

    ขั้นตอนการมอบหมาย (Delegate) การจัดการ Contact ให้เลขา

    1. จาก Google Mail คลิก Apps แล้วคลิก Contact
    2. คลิก More
      คลิก Manage Delegation Settings
    3. ใส่ email address ของเลขา แล้วคลิก Send
    4. จาก Google Drive Apps บน Smart Phone เปิด Folder ที่ตกลงกันไว้
    5. แล้วคลิก +
      เลือก Upload ภาพนามบัตร
    6. เลขา สามารถดูภาพจาก  Google Drive
    7. คลิก Shared with me
      เปิด Folder ที่ตกลงกันไว้
    8. คลิก Apps
      แล้วคลิก Contact
    9. คลิก ชื่อของเจ้านาย(ใต้ Delegated Contacts)
      แล้วคลิก NEW CONTACT
    10. ใส่ชื่อ และรายละเอียดต่างๆ
      แล้วคลิก Saved Now
  • วิดีโอแนะนำการติดตั้ง PSU12-Sritrang Server โปรแกรมสำหรับการจัดการห้องบริการคอมพิวเตอร์ (cloning & control PC)

    วิดีโอแนะนำการติดตั้ง PSU12-Sritrang Server โปรแกรมสำหรับการจัดการห้องบริการคอมพิวเตอร์ (cloning & control PC)
    โดย  Wiboon Warasittichai on youtube

    01 PSU12-sritrang install (ตอนที่ 1 วิธีติดตั้ง)
    PSU12-sritrang-t01
    https://youtu.be/GAhZhGCciY0

    02 PSU12-sritrang cloning (ตอนที่ 2 วิธีโคลนนิ่งฮาร์ดดิสก์)
    PSU12-sritrang-t02
    https://youtu.be/CegdT_LtE4k

    03 PSU12-sritrang features (ตอนที่ 3 คุณสมบัติของแต่ละเมนู)
    PSU12-sritrang-t03
    https://youtu.be/Dw_wAyMa3vA

    04 PSU12-sritrang control (ตอนที่ 4 การควบคุมเครื่องวินโดวส์ send, restart, shutdown, wakeonlan)
    PSU12-sritrang-t04
    https://youtu.be/o801BZ9ye0Y

    05 PSU12-sritrang prnews (ตอนที่ 5 ประชาสัมพันธ์ข่าวด้วยภาพ เมื่อ boot from network)
    PSU12-sritrang-t05
    https://youtu.be/FA2X182oKXo

    06 PSU12-sritrang windows master (ตอนที่ 6 เตรียมวินโดวส์ต้นฉบับที่ติดตั้ง cygwin)
    PSU12-sritrang-t06
    https://youtu.be/9XkLQQ-niz4

    07 PSU12-sritrang windows computer name (ตอนที่ 7 เปลี่ยนชื่อเครื่อง)
    PSU12-sritrang-t07
    https://youtu.be/TuW8_Z2U7V4

    08 PSU12-sritrang windows pgina freeradius (ตอนที่ 8 ตั้ง login ใช้ RADIUS server)
    PSU12-sritrang-t08
    https://youtu.be/58Pw-dbxljw

    09 PSU12-sritrang windows partitions (ตอนที่ 9 เตรียมฮาร์ดดิสก์ของวินโดวส์ต้นฉบับ)
    PSU12-sritrang-t09
    https://youtu.be/jP4oSqRNvCo

    10 PSU12-sritrang linuxmint master (ตอนที่ 10 เตรียมลินุกซ์มินท์ต้นฉบับ)
    PSU12-sritrang-t10
    https://youtu.be/zpR0UQbTy_U

    11 PSU12-sritrang control linuxmint (ตอนที่ 11 การควบคุมเครื่องลินุกซ์มินท์)
    PSU12-sritrang-t11
    https://youtu.be/bVtfc4x-kKU

    12 PSU12-sritrang server backup (ตอนที่ 12 สำเนาไฟล์เก็บไว้)
    PSU12-sritrang-t12
    https://youtu.be/dA7-pWjy35I

    และมีเอกสารแนะนำอยู่ที่ http://opensource.psu.ac.th/PSU-Open-server

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

    italc-installation-2-window
    มาแนะนำกันอีกสักรอบสำหรับ iTALC 2.0.2 โปรแกรมควบคุมคอมพิวเตอร์ในห้องเรียน เป็นซอฟต์แวร์ชนิดโอเพนซอร์สที่บางคนก็ได้ลองใช้ในเวอร์ชั่นแรก ๆ ไปบ้างแล้ว ผมลองเข้าไปดูในเว็บไซต์ผู้สร้างโปรแกรมก็เห็นว่ายังคงอัปเดตปรับปรุงโปรแกรมกันอยู่ถึงปัจจุบัน ก็เลยสนใจลองทดสอบดูครับ

    iTALC ทำอะไรได้หลายอย่าง เช่น ผู้สอนสามารถ Lock หน้าจอเครื่องผู้เรียน สามารถส่งภาพหน้าจอเครื่องผู้สอนไปยังหน้าจอเครื่องผู้เรียนได้ สามารถรีโมทคอนโทรลเข้าไปเครื่องผู้เรียนได้ สั่งปิดเครื่องทุกเครื่องได้ หรือ สั่งเปิดเครื่องได้หาก BIOS พร้อมใช้งาน

    ดาวน์โหลดโปรแกรมได้ที่ http://italc.sourceforge.net/
    italc-installation-1-file

    ติดตั้งเสร็จจะได้ไอคอนที่หน้า Desktop ดังรูป
    italc-installed-desktop-window
    และไอคอนที่หน้า Apps ดังรูป
    italc-installed-apps-window
    โปรแกรม iTALC Management Console
    italc-management-4-export-key-1-window
    เครื่องผู้สอน จะเรียกว่า master computer ในขั้นตอนการติดตั้งโปรแกรมที่เครื่องผู้สอน ให้เลือก component iTALC service และ iTALC master และให้เลือก Create new access keys
    italc-installation-3-choose-window
    เครื่องผู้เรียน จะเรียกว่า client computer ในขั้นตอนการติดตั้งโปรแกรมที่เครื่องผู้เรียน ให้เลือก component iTALC service แต่ไม่เลือก iTALC master และให้เลือก Import public key
    italc-management-4-export-key-2-window

    วิธีที่จะทำให้เครื่องผู้สอนควบคุมเครื่องผู้เรียนได้ก็คือการ export public key ซึ่งจะได้ไฟล์ชื่อ italc_public_key.key.txt ด้วยโปรแกรม iTALC Management Console นั้นเช่นกัน
    italc-management-4-export-key-4-window
    แล้วนำไปใส่เข้าในเครื่องผู้เรียนด้วยโปรแกรมเดียวกัน
    italc-management-import-key-3-window
    เมื่อทำขั้นตอนติดตั้งเสร็จแล้ว ก็เป็นการตั้ง classroom ว่าชื่ออะไร และมีคอมพิวเตอร์ใดบ้าง (IP) อยู่ใน classroom นี้ แล้วก็ใช้งานซึ่งการใช้งานง่ายมากเลย
    italc-setting-classroom-finished

    ผมเขียนวิธีการสำหรับ Windows 8.1 ที่นี่ครับ
    http://opensource.cc.psu.ac.th/โปรแกรมควบคุมคอมพิวเตอร์ในห้องเรียน

    และวิธีการสำหรับ Linux Mint 17.1 ที่นี่ครับ
    http://opensource.cc.psu.ac.th/ติดตั้ง_iTALC_บน_Linux_Mint

    คำถามยอดฮิตคือ แล้วมันใช้ควบคุมได้กี่เครื่อง อันนี้ผมยังไม่ได้ทดสอบครับ ฮ่า ฮ่า รอท่านทดสอบแล้วบอกผมด้วยนะครับ

    หวังว่าคงจะมีประโยชน์ อย่างน้อยที่สุดเอามาใช้ควบคุมเครื่องที่อยู่ในความดูแลไม่กี่เครื่องก็ใช้ได้นะ