วิธีการส่ง Line Notify เมื่อมีการเปิดคอมพิวเตอร์

เริ่มจากต้องทำการขอ Line Token ซึ่งดูได้จากบทความ การส่ง Line Notify ด้วย Command Line จากนั้นให้สร้าง bat file โดยเปิด notepad แล้วใส่คำสั่ง command line ดังนี้ curl -X POST -H “Authorization: Bearer Token” -F “message=XXX” https://notify-api.line.me/api/notify โดยที่ตัวอักษรสีแดงให้ทำการแทนที่ดังนี้Token แทนที่ด้วย Line Token ที่ขอไว้ตอนต้นXXX แทนที่ด้วย ข้อความที่ต้องการส่ง แล้วให้ save file ด้วยนามสกุล .bat เปิด Task Scheduler ขึ้นมา แล้วกดที่ Create Task ใส่ชื่อ task ที่ช่อง Name กดที่tab Triggers แล้วกดปุ่ม New ที่ Begin the task เลือกเป็น At startup ติ๊กที่ Delay task for แล้วเลือกเป็น 1 minute แล้วกดปุ่ม OK จะได้ผลดังรูป กดที่tab Actions แล้วกดปุ่ม New กดปุ่ม browse เลือก file bat ที่สร้างไว้ตอนต้น แล้วกดปุ่ม OK กดที่tab Conditions ตรงส่วนของ Network ให้ติ๊กหน้า Start only if the following network connection is available กดปุ่ม OK กดที่ปุ่ม OK อีกครั้งตามรูป จะมี task ที่สร้างขึ้นปรากฏดังรูป เมื่อมีการ start computer จะมีข้อความส่งไปทาง Line ดังรูป

Read More »

การส่งภาพหน้าจอโทรศัพท์มือถือระบบ Android ไปยัง PC (Windows 10) โดยไม่ต้องติดตั้งโปรแกรมเพิ่ม

ในการนำเสนอข้อมูลจากหน้าจอโทรศัพท์มือถือไปยัง Projector บางครั้งอาจจะต้องมีอุปกรณ์พิเศษในการส่งข้อมูลภาพ แต่มีอีกวิธีง่าย ๆ ที่สามารถทำได้หากมี PC ที่ติดตั้ง Windows 10 นั่นคือ การส่งข้อมูลหน้าจอจากโทรศัพท์มือถือไปยัง PC จากนั้นจึงส่งภาพจากหน้าจอ PC ขึ้นไปยัง Projector อีกต่อหนึ่ง ซึ่งวิธีนี้ผู้นำเสนอก็จะสามารถนำเสนอได้ทั้งข้อมูลจากหน้าจอมือถือ และข้อมูลอื่น ๆ ที่อยู่บน PC ด้วย สำหรับในบทความนี้จะกล่าวถึงวิธีการดังกล่าว โดยจะเป็นการส่งภาพหน้าจอจากโทรศัพท์มือถือระบบ Android ซึ่งเป็นวิธีการที่ไม่ต้องติดตั้งโปรแกรมใด ๆ เพิ่มบนโทรศัพท์มือถือ หรือบน PC สิ่งที่ควรรู้ก่อนการตั้งค่า เนื่องจากวิธีการนี้เป็นการส่งผ่านข้อมูลถึงกันผ่านระบบเครือข่ายไร้สาย หรือ WiFi ดังนั้นทั้งอุปกรณ์ Android และ PC ควรเชื่อมต่อผ่าน WiFi บน Access Point ชื่อเดียวกัน เพื่อลดปัญหาที่จะเกิดจากการที่อุปกรณ์ทั้งสองหากันไม่เจอ ขั้นตอนการตั้งค่าบน Windows 10 บน PC ไปที่ Setting 2. เลือก System จะปรากฏเมนูด้านซ้ายมือ จากนั้นเลือก Projecting to this PC 3. การตั้งค่าลำดับแรก “Some Windows and Android devices can project this PC when you say it’s OK” จะมี 3 ตัวเลือก ให้ตั้งค่าเป็นตัวเลือก Available everywhere on secure networks หรือ Available everywhere ส่วนตัวเลือก Always Off เป็นการเลือกที่จะไม่ให้มีการเชื่อมต่อเข้ามา 4. การตั้งค่า “Ask to project to this PC” เป็นการตั้งค่าให้มีข้อความแจ้งบน PC เมื่อมีการขอเชื่อมต่อเข้ามาจากโทรศัพท์มือถือ โดยบนฝั่ง PC จะเป็นการเลือกว่าจะยอมรับการเชื่อมต่อหรือไม่ โดยเมื่อมีการขอเชื่อมต่อเข้ามายัง PC จะมีกล่องข้อความแจ้งเตือนดังรูป ส่วนตัวเลือกในการยอมรับการเชื่อมต่อจะมีสี่ตัวเลือกดังรูป ตัวเลือก First time only เป็นการตั้งค่าให้มีการแจ้งเตือนครั้งแรกที่ขอเชื่อมต่อเข้ามาเท่านั้น หากมีการขอเชื่อมต่อหลังจากนี้ครั้งต่อไปจะสามารถทำการเชื่อมต่อได้เลย (ตอนยอมรับการเชื่อมต่อต้องเลือก Always allow ด้วย หลังจากนี้หากมีการขอเชื่อมต่ออีกก็จะไม่มีข้อความแจ้งเตือนขึ้นมาอีก) ตัวเลือก Every time a connection is requested เป็นการตั้งค่าให้มีการแจ้งเตือนทุกครั้ง เมื่อมีการเชื่อมต่อ 5. การตั้งค่า Require PIN for pairing เป็นการกำหนดว่าเมื่อมีการเชื่อมต่อกัน จะต้องมีการยืนยันรหัส PIN หรือไม่ โดยฝั่ง PC จะออกรหัส PIN ให้ และฝั่งโทรศัพท์มือถือต้องกรอกรหัส PIN นี้เพื่อยืนยัน ตัวเลือกการตั้งค่ามี 3 ตัวเลือก คือ ตัวเลือก Never เลือกตัวเลือกนี้หากไม่ต้องการใช้รหัส PIN ในการยืนยัน ตัวเลือก First Time ใช้สำหรับยืนยันรหัส PIN ครั้งแรกครั้งเดียว ตัวเลือก Always ต้องมีการยืนยันรหัส PIN ทุกครั้ง ตัวอย่างรหัส PIN 6. การตั้งค่า “This PC can be discovered for projection only when it’s plugged into a power source” ถ้าเลือกเป็น On สามารถเชื่อมต่อได้เฉพาะกรณีที่ PC ต่อเข้ากับสาย power adapter ที่ต่อเข้ากับแหล่งจ่ายไฟเท่านั้น ส่งภาพจากหน้าจอโทรศัพท์มือถือไปยัง PC

Read More »

การติดตั้งเว็บไซต์ ที่พัฒนาด้วย ASP.NET บน IIS

สำหรับนักพัฒนาเว็บแอปพลิเคชัน ที่จะต้องทำหน้าที่ครบวงจร (Full Stack Programer) สิ่งที่ต้องทำหลังจากพัฒนาเว็บขึ้นมาเสร็จแล้ว คือการติดตั้งบนเซิร์ฟเวอร์ (Deploy) ในบทความนี้จะเล่าขั้นตอนหลักๆ ในการติดตั้งเว็บไซต์ ที่พัฒนาด้วย ASP.NET (ไม่ว่าจะพัฒนาด้วย .Net Framework เวอร์ชันไหนก็ขั้นตอนเดียวกัน เปลี่ยนแปลงแค่ .Net Runtime ที่ใช้งาน) บนวินโดวส์เซิร์ฟเวอร์ โดยใช้ IIS (Internet Information Services) ซึ่งหน้าตาอาจเปลี่ยนแปลงไปตามเวอร์ชันของ IIS แต่ขั้นตอนการตั้งค่ายังคงคล้ายคลึงกัน Publish เว็บไซต์ (กรณีใช้ Visual Studio) 1.คลิกขวาที่ชื่อโปรเจ็ค เลือก Publish 2.จะได้หน้าจอเลือกประเภทในบทความนี้เลือกเป็น Folder เพื่อใช้วิธีการ Deploy แบบนำไฟล์ไปวางที่ Server เอง ดังรูป 3. เลือกที่ตั้งไฟล์ กด Finish 4. ตั้งค่าการ Publish จากในรูปคือให้ลบไฟล์ที่มีอยู่ก่อน และใช้รูปแบบ Release ในการ Compile 5. ตัวอย่างไฟล์ที่ทำการ Publish เสร็จแล้ว 6. ทำการ Copy ไฟล์ทั้งหมดไปวางใน wwwroot บน Server ติดตั้ง Component ต่างๆ 1.ในบทความนี้ใช้ Windows Server 2016 Datacenter เป็นตัวอย่าง ซึ่งการติดตั้ง Component ต่างๆ สามารถทำได้ผ่าน Server Manager > Manage > Add Roles and Features ได้เกือบทั้งหมด ยกเว้น Runtime อื่นๆที่เว็บไซต์มีการนำมาใช้งานเพิ่มเติม 2. ติดตั้ง IIS , ASP.NET และ Component ที่เกี่ยวข้อง โดยไปที่ Server Role > Web Server (IIS) และทำการเลือก Component ต่างๆดังรูป จากนั้นกด Next 3. ติดตั้ง .Net Framework เวอร์ชันที่เว็บไซต์ใช้งาน ในตัวอย่างใช้ .Net Framework 4.6 โดยสามารถเลือกจาก เมนู Features ดังรูป 4. เท่านี้ก็จะมี Component ที่จำเป็นในการติดตั้งเว็บไซต์ที่พัฒนาด้วย ASP.NET แล้ว สร้าง และตั้งค่า Application Pool 1.เปิดโปรแกรม IIS โดยไปที่ Start > Windows Administrative Tools > Internet information Services (IIS) จะได้หน้าจอดังรูป 2. เลือกเมนู Application Pool จากนั้นคลิก Add Application Pool จะได้หน้าจอการตั้งค่าดังรูป โดยที่ .Net CLR Version จะแยกเป็น 2.0.xxx และ 4.0.xxx โดยหากต้องการใช้งาน .Net Runtime 3.5 – 4.x สามารถเลือกเป็น 4.0.x ได้ทั้งหมด 3. เมื่อสร้างสำเร็จ จะมีรายการ Application Pool ที่เราสร้างดังรูป สร้าง และตั้งค่าเว็บไซต์ ทดสอบเรียกใช้งาน 1.ในการสร้างไซต์นั้น หากบน Server นั้นยังไม่มีเว็บไซต์ใดๆ สามารถใช้ Default Web Site ได้เลย แต่ถ้ามีเว็บไซต์อื่นๆอยู่ก่อนแล้ว จะต้องพิจารณาว่าจะให้บริการในแบบใด เป็น Application ที่อยู่ภายใต้เว็บไซต์เดิม

Read More »

การส่ง Line Notify ด้วย Command Line

ถ้าจะส่ง Line Notify ต้องมี Line Token ก่อน ซึ่งมีวิธีการขอดังนี้1. เข้าไปยังwebsite https://notify-bot.line.me/my/2. Login ด้วย LINE Account 3. คลิกที่ปุ่ม Generate token 4. ตั้งชื่อ Line ที่จะแสดงตอนแจ้งเตือน ในช่องตามรูป 5. เลือกว่าจะ Notify ไปที่ group ใด ซึ่ง group ที่เราเลือกจะเป็นสีเขียว แล้วให้กดปุ่ม Generate Token 6. จะได้ Line Token มาดังรูป หลังจากได้ Line Token แล้ว ให้เราเปิดโปรแกรม Command Promt ขึ้นมา โดยถ้าเป็น windows10 ให้กดที่รูปแว่นขยายที่ taskbar แล้วพิมพ์ Command Promt แล้วกดที่ปุ่ม open ทางด้านขวา จะมีโปรแกรมปรากฎดังรูป ให้ใส่ข้อความดังนี้ curl -X POST -H “Authorization: Bearer Token” -F “message=XXX” https://notify-api.line.me/api/notify โดยที่ตัวอักษรสีแดงให้ทำการแทนที่ดังนี้ Token แทนที่ด้วย Line Token ที่ขอไว้ตอนต้น XXX แทนที่ด้วย ข้อความที่ต้องการส่ง เมื่อใส่ข้อความเสร็จแล้วให้กด Enter ถ้าส่งข้อความสำเร็จโปรแกรม Command Promt จะขึ้นดังรูป แล้วที่ Line ก็จะได้รับข้อความดังรูป

Read More »

วิธีติดตั้ง HTTPS ด้วย Certificate ของ Let’s Encrypt แบบ wildcard สำหรับ Intranet ที่ไม่สามารถเข้าถึงได้จาก Internet

ความเดิมตอนที่แล้ว ต่อจาก วิธีติดตั้ง HTTPS ด้วย Certificate ของ Let’s Encrypt ซึ่ง เครื่องที่จะขอใช้ Certificate นั้น ต้องสามารถ “เข้าถึงได้” จาก Internet เพราะ จะต้องสร้าง File ไปวางในตำแหน่งที่ Let’s Encrypt CA สามารถเข้ามาตรวจสอบได้ว่าเป็น ผู้ที่มีสิทธิ์ในการจัดการ Domain Name นั้นจริง ปัญหาคือ ในองค์กร ถ้าจะให้มีเซิร์ฟเวอร์ ที่สามารถเข้าถึงได้ จาก Internet ต้องเปิด Firewall ขององค์กร ซึ่ง ซับซ้อน และ มีความเสี่ยง แล้ว ถ้ามีเครื่องภายใต้โดเมนเดียวกันอีกหลายเครื่อง ต้องทำทุกเครื่อง ซึ่งไม่สะดวกเลย ต้องเข้าใจก่อน Let’s encrypt มีวิธีการตรวจสอบความเป็นเจ้าของ Domain Name หรือที่เรียกว่า “Challenge” หลายวิธี ได้แก่ HTTP-01 Challenge DNS-01 Challenge TLS-SNI-01 Challenge TLS-ALPN-01 Challenge วิธีที่ง่าย และทำกันทั่วไป คือ HTTP-01 คือ เมื่อ certbot client รับคำสั่งขอ certificate สำหรับโดเมนที่ต้องการแล้ว จะต้องเอาไฟล์ ไปวางที่ ซึ่ง ชื่อต้องตรงกับที่กำหนด และในไฟล์ จะเป็น Token และ Thumbprint ของ account key (ในทางเทคนิค อาจจะให้มีสักเครื่องในองค์กรที่เปิดให้เข้าถึงจาก Internet ได้ ทำหน้าที่ร้องขอ Certificate ได้ แล้วทำ HTTP-01 Challenge ให้ผ่าน ก็จะสามารถขอ Certificate ให้กับ Subdomain อื่น ๆ ได้) แต่มีอีกวิธีหนึ่ง คือ DNS-01 Challenge ซึ่ง ไม่จำเป็นต้องมีเครื่องที่เข้าถึงได้จาก Internet (แต่สามารถ ออก Internet ได้) แต่อาศัยการสร้าง TXT Record ตามที่กำหนดแทน ประมาณนี้ วิธีการมีดังนี้ 0. เราจะขอ wildcard certificate โดเมนของ abc.ijk.xyz.psu.ac.th โดยการติดตั้ง Let’s Encrypts certbot client บน Ubuntu 20.04 ซึ่งเครื่องนี้ สามารถต่อ Internet ได้ แต่ไม่สามารถเข้าถึงได้จาก Internet 1.ติดตั้ง Let’s Encrypts certbot client (ยุ่งยากหน่อย แต่จะได้ certbot version 1.19) หรือสั้นๆ ทำอย่างนี้ก็ได้ (ไม่ต้องใช้ snap แต่จะได้ certbot version 0.40) 2. สั่ง certbot ให้ไปขอเฉพาะ certificate จากนั้นบอกว่าจะติดตั้งเอง (manual) และ ขอใช้ DNS-01 Challenge 3. กรอกข้อมูล โดเมนเนม ที่ต้องการ ในที่นี้ จะขอใช้ wildcard คือ *.abc.ijk.xyz.psu.ac.th **** ตรงนี้ อย่าเพิ่งเคาะ Enter เด็ดขาด จนกว่า DNS admin จะดำเนินการเสร็จ ***** 4. แจ้งผู้ดูแล DNS ขององค์กร ว่า ให้เพิ่ม TXT Record ส่งข้อความตามนี้ไปให้เค้าก็น่าจะได้ หรือจะให้ดี

Read More »