• Email tracking By Google Chrome Extension


    เมื่อวันเวลาหมุนเวียนมาบรรจบพบกันอีกครั้ง ก่อนการเขียนผล TOR ในปีนี้ ก็ได้เวลาที่เหล่าเราทั้งหลายจะมาเริ่มต้นเขียน Blog กันอีกครั้ง และเช่นเคยสิ่งที่ผู้เขียนมีโอกาสศึกษา ค้นคว้าเพิ่มเติม หรือทดลองใช้งาน โดยมากแล้วก็จะเกี่ยวพันกับหน้าที่การงานในปัจจุบันนั่นแล ซึ่งหน้าที่หลักที่ผู้เขียนต้องทำทุกๆ วัน นั่นคือการรับแจ้งและตอบปัญหาให้กับลูกค้าผ่านทาง E-Mail และต้องขอบอกเลยว่าสำหรับผู้เขียน การตรวจสอบว่าเมลล์ถูกส่งไปถึงปลายทางหรือมีการเปิดอ่านหรือไม่นั้น มันเป็นเรื่องที่จำเป็นมากๆ ในงาน IT เพราะนอกจากการโทรแล้ว อีกหนึ่งช่องทางหลักในการติดต่อสื่อสารระหว่างกัน แถมยังประหยัดรายจ่ายอีกต่างหาก นั่นก็คือการส่ง E-Mail นั่นเองแหละหนา โดยหนึ่งวิธีที่ง่ายที่สุดคือการติดตั้ง Extension บน Google Chrome และใน Blog นี้ผู้เขียนจะขอแนะนำให้ผู้อ่านได้รู้จักกับ Chrome Extension ที่มีชื่อว่า “Email Tracking for Gmail & Inbox” ต้องขอบอกว่าจิ๋วแต่แจ๋วนะจ๊ะออเจ้าทั้งหลาย !! Email Tracking คืออะไร ??? เอาแบบสั้นๆ เลย มันคือตัว App ที่ไว้คอย Track (ติดตาม)…

    >> Read More <<

  • Choose Network Type In VirtualBox


    เมื่อต้องไปจัดอบรม และต้องใช้ Oracle VM VirtualBox สำหรับสร้าง Virtual Machine (VM) จำนวนหนึ่ง (มากกว่า 1 ตัว ฮ่า ๆ) เราจำเป็นจะต้องรู้ว่า สภาพแวดล้อมของห้องบริการคอมพิวเตอร์ที่เราไปขอใช้งานนั้น จัด IP ให้กับเครื่อง Windows แบบใด เช่น ในกรณีที่มีการปล่อย DHCP IP แบบเหลือเฟือ การเลือกชนิด network ของ VM แต่ละตัว ก็ง่าย เราก็เลือกตั้งค่าเป็น Bridges ซึ่งแบบนี้ VM แต่ละตัวก็จะได้ IP อยู่ในชุดเดียวกันกับ Windows แต่หากจัด IP แบบตายตัวให้กับ MAC Address ของ PC นั้นเลย และไม่ปล่อย DHCP IP เพิ่มให้ อย่างนี้ เราก็ต้องออกแบบว่าจะให้ VM…

    >> Read More <<

  • Raspberry Pi 3 [Temperature & Humidity Data Chart]


    จากตอนที่แล้ว เราได้เขียนคำสั่งเพื่อที่จะดึงค่าจากเซนเซอร์แล้ว ครั้งนี้จะเป็นการใช้วิธีดังค่าดังกล่าว มาเก็บไว้เป็นไฟล์ csv จากนั้นนำไปแสดงเป็นกราฟ โดยแสดงผลผ่าน Web Interface ด้วยวิธีดังต่อไปนี้ครับ   สร้างที่เก็บไฟล์ด้วยคำสั่งต่อไปนี้ mkdir –p /home/pi/projects/temp–and–humidity mkdir –p /home/pi/projects/temp–and–humidity/sensor–values cd /home/pi/projects/temp–and–humidity (หากใครไม่ต้องการสร้าง directory เพื่อเก็บข้อมูลตามตัวอย่างนี้ ให้แก้ไฟล์ temp_hud_csv_log.py ด้วยครับ) จากนั้นดาวน์โหลดสคริปด้วยคำสั่งนี้ wget https://sysadmin.psu.ac.th/wp-content/uploads/2018/03/temp_hud_csv_log.txt mv temp_hud_csv_log.txt temp_hud_csv_log.py (เนื่องจาก sysadmin นี้ไม่รองรับการอัพโหลดไฟล์ .py จึงต้องอัพโหลดเป็น .txt ไปก่อน แล้วค่อยเอามา rename เอาเอง)   ตรวจสอบและติดตั้ง dependencies ด้วยคำสั่งนี้ sudo easy_install apscheduler และรอจนเสร็จ          โดยค่า default สคริปนี้จะถูกเซ็ตให้เป็นเซนเซอร์ AM2302…

    >> Read More <<

  • Raspberry Pi 3 [Temperature & Humidity Sensor]


    สวัสดีและขออภัยที่ห่างหายไป เนื่องจากติดภารกิจทั้งงานราษฏร์และงานหลวงครับ   ครั้งนี้จะเป็นการเริ่มต่อเซนเซอร์ภายนอก เซนเซอร์พื้นฐานที่มีในปัจจุบันก็จะเป็นเซนเซอร์เกี่ยวกับสภาพแวดล้อม ไม่ว่าจะเป็น เซนเซอร์อุณหภูมิ, เซนเซอร์ความชื้นในอากาศ, เซนเซอร์ความชื้นในดิน, เซนเซอร์น้ำ (ทำงานเมื่อมีน้ำมาสัมผัสเซนเซอร์ – ใช้ตรวจเช็คฝนตก), เซนเซอร์แสง (สวิตซ์), เซนเซอร์ความเข้มแสง, เซนเซอร์วัด pH, เซนเซอร์ UV, เซนเซอร์วัดฝุ่นละอองในอากาศ, เซนเซอร์วัดความชื้นในดิน, เซนเซอร์วัดแรงสั่นสะเทือน และเซนเซอร์อื่นๆ อีกมากมาย ซึ่งหลักการทำงานนั้นส่วนใหญ่จะเหมือนกันหมด คือการอ่านค่ามาจากเซนเซอร์ และนำค่านั้นมาแปรผลที่เราสามารถอ่านได้ง่าย   บทความนี้จะเริ่มด้วยเซนเซอร์ที่ Basic ที่สุด เพื่อให้ทุกท่านพอจะได้เห็นหลักการทำงานและเป็นแนวทางในการเชื่อมต่อเซนเซอร์อ่นๆ ต่อไปครับ นั่นคือ เซนเซอร์วัดอุณหภูมิและความชื้น AM2302 (DHT22) นั่นเอง โดยจะมี Pinout ดังนี้ (จากซ้ายบน คือขาที่ 1) ขาที่ 1 คือ VCC รองรับ 3.6-6V ขาที่ 2 คือ Data ขาที่ 3 คือ…

    >> Read More <<

  • GET STRING FROM ENUM


    เพื่อนๆนักพัฒนาหลายคนก็คงจะรู้จัก enum กันพอสมควรแล้วนะคะ วันนี้เรามาทำความรู้จักเจ้า Enum กันให้มากขึ้นกว่าเดิมกันดีกว่านะคะ ว่านอกจากเราจะดึงค่า Integer ที่เก็บค่าในตัวแปร หรือ Tostring() เป็นค่าstring ตามชื่อของตัวแปร Enum แล้ว เรายังสามารถ ดึงค่า  String  เป็นประโยคยาวๆได้โดยที่ไม่จำเป็นต้องเหมือนกับชื่อตัวแปรแล้วนะคะ เอาล่ะค่ะ เรามาเริ่มจากการทำความรู้จักเจ้าตัว Enum กันตั้งแต่เริ่มต้นเพื่อระลึกความจำกันก่อนละกันนะคะ ^^ Enumeration จะมีชนิดเป็น integer type ซึ่ง เราสามารถกำหนดกลุ่มของข้อมูลได้ (User-defined) ในการสร้าง enumeration เราจะใช้ keyword คำว่า  enum  ดังนี้ public enum Colors {   White,   Black,   Red,   Green,   Blue } ในตัวอย่างนี้สร้าง enum…

    >> Read More <<

  • Configuration of TCP/IP with SSL and TLS for Database Connections


    สิ่งที่ต้องเตรียม Oracle Database Server ในตัวอย่างนี้ใช้ Oracle database บน Oracle Enterprise Linux 7 Oracle Database Client  ในตัวอย่างใช้ Windows Server 2008 R2 เริ่ม ฝั่ง Server เข้าระบบด้วยบัญชีผู้ใช้ oracle หรือบัญชีที่เป็นเจ้าของ Oracle Database เปิด terminal สร้าง Oracle Wallet ด้วยคำสั่ง mkdir -p /u01/app/oracle/wallet ต่อด้วย orapki wallet create -wallet “/u01/app/oracle/wallet” -pwd WalletPasswd123 -auto_login_local โดย -pwd WalletPasswd123 ตัว WalletPasswd123 คือรหัสผ่านที่ใช้ป้องกันการเข้าถึงข้อมูลต่างๆ ใน wallet กฎการตั้งมีอยู่คือ…

    >> Read More <<

  • Raspberry Pi 3 [LCD Text Display with Python]


    จากตอนที่แล้ว เราทำการเชื่อมต่อจอ LCD 16×2 และเขียน Basic Python ให้สามารถแสดงข้อความง่ายๆ ได้แล้ว ตอนนี้เราจะลองนำค่าที่อยู่ในตัว Raspberry Pi 3 มาแสดง เช่น Date & Time Network Adapter IP Address CPU Percentage Usage CPU Temperature Memory Total Memory Usage Memory Free Disk Total Disk Usage Disk Free เป็นต้น   ** ส่วนตัวผมจะถนัดใช้ nano เป็น text editor นะครับ ส่วนท่านอื่นที่ไม่คล่อง จะใช้ผ่าน vi หรือ text editor บน…

    >> Read More <<

  • วิธีขยาย Disk ใน VM/Virtualbox แล้วให้ Ubuntu


    ในกรณีใช้ VMWare/VirtualBox  บางครั้งเราต้องการขยาย Disk ให้ Ubuntu มีพื้นที่มากขึ้น เดิมมี Disk 100 GB แก้ไขให้เป็น 300 GB Login เข้าไป ดูข้อมูล ด้วยคำสั่ง df -h จะเห็น 100 GB อยู่ แล้ว sudo reboot ลอง Login ใหม่ แล้วใช้คำสั่ง sudo su fdisk -l ก็จะ ขนาดเพิ่มเป็น 300 GB จากนั้นใช้คำสั่ง growpart /dev/sda 1 resize2fs /dev/sda1 แล้วลอง df -h ก็จะพบว่า ได้ขนาดมาเป็น 300 GB แล้ว

    >> Read More <<

  • Raspberry Pi 3 [Writing Text to 16×2 LCD]


    จากตอนที่แล้วเราได้ทำการเชื่อมต่อ hardware ซึ่งได้แก่ จอ LCD ขนาด 16×2 ผ่าน I2C Module ไปเรียบร้อยแล้วนั้น เราจะเริ่มทำการ Config I2C และเขียน Python เพื่อแสดงข้อความตัวอักษรอย่างง่าย   Enable I2C Module เริ่มด้วยการ login เข้าสู่ Raspberry Pi และใช้คำสั่ง sudo raspi-config บนหน้าจอ Terminal จากนั้นเลือก 5 Interfacing Option และเลือก P5 I2C (Enable/Disable automatic loading…) ทำการคอนเฟิร์ม ด้วยการตอบ YES จากนั้น Reboot   จากนั้นทำการอัพเดทไฟล์ /boot/config.txt ด้วยคำสั่ง sudo nano /boot/config.txt ใส่ข้อความ (หรือ uncomment)…

    >> Read More <<