[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"academy-blogs-th-29-12-How%25252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252520to-all-all-createdAt:desc-default":3},{"data":4,"page":530,"perPage":531,"totalItems":532,"totalPages":533},[5,96,141,182,219,252,293,334,375,418,456,500],{"alt":6,"cover_image_path":7,"created":8,"expand":9,"id":92,"published_at":93,"school_blog":88,"short_description":94,"title":6,"updated":95,"slug":89,"views":91},"EP.48 การเพิ่มระบบแสดงประวัติการแชทย้อนหลังใน WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fbay4cv3ovysfubc\u002F67_11zon_40uw6qepjd.webp","2026-03-04 08:50:53.512Z",{"keywords":10,"locale":59,"school_blog":69},[11,19,24,29,34,39,44,49,54],{"collectionId":12,"collectionName":13,"created":14,"created_by":15,"id":16,"name":17,"updated":18,"updated_by":15},"sclkey987654321","school_keywords","2026-03-04 08:50:52.953Z","76qprkevbgfdps8","aqepcyhdmag8vg4","Chat Storage","2026-06-07 06:48:41.758Z",{"collectionId":12,"collectionName":13,"created":20,"created_by":15,"id":21,"name":22,"updated":23,"updated_by":15},"2026-03-04 08:50:49.965Z","ga8fw2l8y3mxjxg","Persistent Chat","2026-06-07 06:48:41.194Z",{"collectionId":12,"collectionName":13,"created":25,"created_by":15,"id":26,"name":27,"updated":28,"updated_by":15},"2026-03-04 08:48:39.993Z","cvqrwxwzdsgoz1u","Message History","2026-06-07 06:47:56.716Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},"2026-03-04 08:48:07.088Z","brfbypclggbbkcx","WebSocket API","2026-06-07 06:47:42.485Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},"2026-03-04 08:47:05.949Z","caufix9o52uw4bh","Real-Time Chat","2026-06-07 06:47:19.595Z",{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},"2026-03-04 08:20:14.253Z","ah6lvy4x8qe08l5","Golang","2026-06-07 06:45:08.193Z",{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},"2026-03-04 08:20:11.547Z","ey3puyme01a9bsw","Go","2026-06-07 06:45:07.798Z",{"collectionId":12,"collectionName":13,"created":50,"created_by":15,"id":51,"name":52,"updated":53,"updated_by":15},"2026-03-04 08:34:00.920Z","ecac9y661or1xka","WebSocket","2026-06-07 06:45:55.734Z",{"collectionId":12,"collectionName":13,"created":55,"created_by":15,"id":56,"name":57,"updated":58,"updated_by":15},"2026-03-04 08:50:53.155Z","peza6kmj1144b0x","Chat History","2026-06-07 06:48:41.933Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},"th","pbc_1989393366","locales","2026-01-22 10:59:55.832Z","twemoji:flag-thailand","s8wri3bt4vgg2ji",true,"Thai","2026-04-10 15:42:46.614Z",{"category":70,"collectionId":71,"collectionName":72,"created":73,"expand":74,"id":88,"slug":89,"updated":90,"views":91},"wqxt7ag2gn7xcmk","pbc_2105096300","school_blogs","",{"category":75},{"blogIds":76,"collectionId":77,"collectionName":78,"created":79,"created_by":15,"id":70,"image":80,"image_alt":73,"image_path":81,"label":82,"name":83,"priority":84,"publish_at":85,"scheduled_at":73,"status":86,"updated":87,"updated_by":15},[],"sclcatblg987654321","school_category_blogs","2026-03-04 08:33:53.210Z","59ty92ns80w_15oc1implw.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fwqxt7ag2gn7xcmk\u002F59ty92ns80w_15oc1implw.png",{"en":83,"th":83},"Golang The Series",1,"2026-03-16 04:39:38.440Z","published","2026-06-07 06:45:03.856Z","7r6wz7gyf1n7sxd","chat-history-websocket-chat","2026-06-26 10:33:21.452Z",252,"bay4cv3ovysfubc","2025-03-24 01:52:22.079Z","เรียนรู้วิธีเพิ่ม ระบบแสดงประวัติการแชทย้อนหลัง (Chat History) ใน WebSocket Chat โดยใช้ฐานข้อมูลและ GraphQL API เพื่อให้ผู้ใช้สามารถดูข้อความเก่าได้เมื่อเข้าสู่ระบบ","2026-06-07 06:44:35.293Z",{"alt":97,"cover_image_path":98,"created":99,"expand":100,"id":137,"published_at":138,"school_blog":133,"short_description":139,"title":97,"updated":140,"slug":134,"views":136},"EP.47 การเพิ่มฟีเจอร์โหมดห้ามรบกวน (Do Not Disturb Mode) ใน WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fl39f1av7k1eizbh\u002F65akfo46m73z_q8edvugcfk.webp","2026-03-04 08:50:54.947Z",{"keywords":101,"locale":127,"school_blog":128},[102,107,112,117,118,119,120,121,122],{"collectionId":12,"collectionName":13,"created":103,"created_by":15,"id":104,"name":105,"updated":106,"updated_by":15},"2026-03-04 08:50:53.623Z","k6w6fyr98usbg2e","Chat Notifications","2026-06-07 06:48:42.041Z",{"collectionId":12,"collectionName":13,"created":108,"created_by":15,"id":109,"name":110,"updated":111,"updated_by":15},"2026-03-04 08:50:49.558Z","8lxakhujb04wz6u","Chat UX","2026-06-07 06:48:41.016Z",{"collectionId":12,"collectionName":13,"created":113,"created_by":15,"id":114,"name":115,"updated":116,"updated_by":15},"2026-03-04 08:50:53.943Z","fq0pc95e767vuu8","DND Mode","2026-06-07 06:48:42.145Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"collectionId":12,"collectionName":13,"created":50,"created_by":15,"id":51,"name":52,"updated":53,"updated_by":15},{"collectionId":12,"collectionName":13,"created":123,"created_by":15,"id":124,"name":125,"updated":126,"updated_by":15},"2026-03-04 08:50:54.150Z","z33apwtejt9t7zn","Do Not Disturb","2026-06-07 06:48:42.305Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":70,"collectionId":71,"collectionName":72,"created":73,"expand":129,"id":133,"slug":134,"updated":135,"views":136},{"category":130},{"blogIds":131,"collectionId":77,"collectionName":78,"created":79,"created_by":15,"id":70,"image":80,"image_alt":73,"image_path":81,"label":132,"name":83,"priority":84,"publish_at":85,"scheduled_at":73,"status":86,"updated":87,"updated_by":15},[],{"en":83,"th":83},"44cnqqbaf4uf842","do-not-disturb-websocket-chat","2026-07-19 17:12:15.233Z",235,"l39f1av7k1eizbh","2025-03-24 01:52:08.698Z","เรียนรู้วิธีเพิ่ม โหมดห้ามรบกวน (Do Not Disturb Mode - DND) ใน WebSocket Chat เพื่อให้ผู้ใช้สามารถปิดการแจ้งเตือนชั่วคราว และไม่รับข้อความแจ้งเตือนระหว่างที่โหมดนี้เปิดใช้งาน","2026-06-07 06:44:35.669Z",{"alt":142,"cover_image_path":143,"created":144,"expand":145,"id":178,"published_at":179,"school_blog":174,"short_description":180,"title":142,"updated":181,"slug":175,"views":177},"EP.46 การเพิ่มฟีเจอร์กำหนดสถานะผู้ใช้ (Custom User Status) ใน WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fbgphqemqer6k6g1\u002F63k8w812lcsy_mrde1k2rf5.webp","2026-03-04 08:50:56.209Z",{"keywords":146,"locale":168,"school_blog":169},[147,152,153,158,159,160,161,162,163],{"collectionId":12,"collectionName":13,"created":148,"created_by":15,"id":149,"name":150,"updated":151,"updated_by":15},"2026-03-04 08:50:54.677Z","jgu82elfpwczlgf","Chat Presence","2026-06-07 06:48:42.440Z",{"collectionId":12,"collectionName":13,"created":108,"created_by":15,"id":109,"name":110,"updated":111,"updated_by":15},{"collectionId":12,"collectionName":13,"created":154,"created_by":15,"id":155,"name":156,"updated":157,"updated_by":15},"2026-03-04 08:50:54.934Z","95t6zz8cpdp1zpf","Custom Status","2026-06-07 06:48:42.604Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"collectionId":12,"collectionName":13,"created":50,"created_by":15,"id":51,"name":52,"updated":53,"updated_by":15},{"collectionId":12,"collectionName":13,"created":164,"created_by":15,"id":165,"name":166,"updated":167,"updated_by":15},"2026-03-04 08:50:55.241Z","eftlak6vln9c1dc","User Status","2026-06-07 06:48:42.743Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":70,"collectionId":71,"collectionName":72,"created":73,"expand":170,"id":174,"slug":175,"updated":176,"views":177},{"category":171},{"blogIds":172,"collectionId":77,"collectionName":78,"created":79,"created_by":15,"id":70,"image":80,"image_alt":73,"image_path":81,"label":173,"name":83,"priority":84,"publish_at":85,"scheduled_at":73,"status":86,"updated":87,"updated_by":15},[],{"en":83,"th":83},"a1tuyqqcw8tjoap","custom-user-status-websocket-chat","2026-06-03 10:14:33.628Z",230,"bgphqemqer6k6g1","2025-03-24 01:51:58.539Z","เรียนรู้วิธีเพิ่ม ระบบกำหนดสถานะผู้ใช้ (Custom User Status) ใน WebSocket Chat เพื่อให้ผู้ใช้สามารถตั้งสถานะ เช่น \"ออนไลน์\", \"ไม่ว่าง\", หรือ \"ออฟไลน์\" และอัปเดตสถานะแบบเรียลไทม์","2026-06-07 06:44:35.892Z",{"alt":183,"cover_image_path":184,"created":185,"expand":186,"id":215,"published_at":216,"school_blog":211,"short_description":217,"title":183,"updated":218,"slug":212,"views":214},"EP.45 การเพิ่มระบบแจ้งเตือนเมื่อมีผู้ใช้ใหม่เข้ามาใน WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Feu0h2r45625nipp\u002F61v19uv4p313_23zk7zajcm.webp","2026-03-04 08:50:57.925Z",{"keywords":187,"locale":205,"school_blog":206},[188,193,194,195,196,197,198,199,200],{"collectionId":12,"collectionName":13,"created":189,"created_by":15,"id":190,"name":191,"updated":192,"updated_by":15},"2026-03-04 08:50:55.786Z","bn9tuj0554z99gg","Active Users","2026-06-07 06:48:42.956Z",{"collectionId":12,"collectionName":13,"created":103,"created_by":15,"id":104,"name":105,"updated":106,"updated_by":15},{"collectionId":12,"collectionName":13,"created":108,"created_by":15,"id":109,"name":110,"updated":111,"updated_by":15},{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":50,"created_by":15,"id":51,"name":52,"updated":53,"updated_by":15},{"collectionId":12,"collectionName":13,"created":201,"created_by":15,"id":202,"name":203,"updated":204,"updated_by":15},"2026-03-04 08:50:56.096Z","pqk2xruvmm497x0","User Join Notification","2026-06-07 06:48:43.094Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":70,"collectionId":71,"collectionName":72,"created":73,"expand":207,"id":211,"slug":212,"updated":213,"views":214},{"category":208},{"blogIds":209,"collectionId":77,"collectionName":78,"created":79,"created_by":15,"id":70,"image":80,"image_alt":73,"image_path":81,"label":210,"name":83,"priority":84,"publish_at":85,"scheduled_at":73,"status":86,"updated":87,"updated_by":15},[],{"en":83,"th":83},"ifugg17ps3z64cx","user-join-notification-websocket-chat","2026-06-09 19:26:39.641Z",234,"eu0h2r45625nipp","2025-03-24 01:51:46.776Z","เรียนรู้วิธีเพิ่ม ระบบแจ้งเตือน (User Join Notification) เมื่อมีผู้ใช้ใหม่เข้ามาใน WebSocket Chat ทำให้ผู้ใช้ทุกคนสามารถรับรู้ได้ทันทีว่ามีผู้ใช้ใหม่เข้ามาในแชทแบบเรียลไทม์","2026-06-07 06:44:36.267Z",{"alt":220,"cover_image_path":221,"created":222,"expand":223,"id":248,"published_at":249,"school_blog":244,"short_description":250,"title":220,"updated":251,"slug":245,"views":247},"EP.44 การเพิ่มฟีเจอร์แสดงจำนวนผู้ใช้ที่ออนไลน์ใน WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fxuf3om7s296u4xt\u002F59_11zon_k8duf0jpg3.webp","2026-03-04 08:50:58.885Z",{"keywords":224,"locale":238,"school_blog":239},[225,226,227,228,229,230,231,232,233],{"collectionId":12,"collectionName":13,"created":108,"created_by":15,"id":109,"name":110,"updated":111,"updated_by":15},{"collectionId":12,"collectionName":13,"created":148,"created_by":15,"id":149,"name":150,"updated":151,"updated_by":15},{"collectionId":12,"collectionName":13,"created":189,"created_by":15,"id":190,"name":191,"updated":192,"updated_by":15},{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"collectionId":12,"collectionName":13,"created":50,"created_by":15,"id":51,"name":52,"updated":53,"updated_by":15},{"collectionId":12,"collectionName":13,"created":234,"created_by":15,"id":235,"name":236,"updated":237,"updated_by":15},"2026-03-04 08:50:56.957Z","8fdbu2zxdum36wl","Online Users","2026-06-07 06:48:43.220Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":70,"collectionId":71,"collectionName":72,"created":73,"expand":240,"id":244,"slug":245,"updated":246,"views":247},{"category":241},{"blogIds":242,"collectionId":77,"collectionName":78,"created":79,"created_by":15,"id":70,"image":80,"image_alt":73,"image_path":81,"label":243,"name":83,"priority":84,"publish_at":85,"scheduled_at":73,"status":86,"updated":87,"updated_by":15},[],{"en":83,"th":83},"o80z3drd0e40piv","online-users-websocket-chat","2026-07-06 05:51:23.607Z",243,"xuf3om7s296u4xt","2025-03-24 01:51:35.026Z","เรียนรู้วิธีเพิ่ม ฟีเจอร์แสดงจำนวนผู้ใช้ที่ออนไลน์ (Active Users) ใน WebSocket Chat เพื่อให้ผู้ใช้สามารถเห็นจำนวนผู้ใช้งานที่กำลังออนไลน์อยู่ในระบบแบบเรียลไทม์","2026-06-07 06:44:36.666Z",{"alt":253,"cover_image_path":254,"created":255,"expand":256,"id":289,"published_at":290,"school_blog":285,"short_description":291,"title":253,"updated":292,"slug":286,"views":288},"EP.43 การเพิ่มฟีเจอร์ปักหมุดข้อความ (Pinned Messages) ใน WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ff4l95lly7crttk6\u002F57_11zon_ecoltakj2w.webp","2026-03-04 08:51:00.037Z",{"keywords":257,"locale":279,"school_blog":280},[258,263,264,269,270,271,272,273,274],{"collectionId":12,"collectionName":13,"created":259,"created_by":15,"id":260,"name":261,"updated":262,"updated_by":15},"2026-03-04 08:50:59.287Z","wg8gajk96i2keaj","Chat Management","2026-06-07 06:48:43.368Z",{"collectionId":12,"collectionName":13,"created":108,"created_by":15,"id":109,"name":110,"updated":111,"updated_by":15},{"collectionId":12,"collectionName":13,"created":265,"created_by":15,"id":266,"name":267,"updated":268,"updated_by":15},"2026-03-04 08:50:59.507Z","ntfm42v1phime84","Pinned Chats","2026-06-07 06:48:43.494Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"collectionId":12,"collectionName":13,"created":50,"created_by":15,"id":51,"name":52,"updated":53,"updated_by":15},{"collectionId":12,"collectionName":13,"created":275,"created_by":15,"id":276,"name":277,"updated":278,"updated_by":15},"2026-03-04 08:48:45.418Z","so81vnxshuuiu6h","Pinned Messages","2026-06-07 06:47:58.782Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":70,"collectionId":71,"collectionName":72,"created":73,"expand":281,"id":285,"slug":286,"updated":287,"views":288},{"category":282},{"blogIds":283,"collectionId":77,"collectionName":78,"created":79,"created_by":15,"id":70,"image":80,"image_alt":73,"image_path":81,"label":284,"name":83,"priority":84,"publish_at":85,"scheduled_at":73,"status":86,"updated":87,"updated_by":15},[],{"en":83,"th":83},"3ntbs0bnwdc7lq4","pinned-messages-websocket-chat","2026-05-28 09:55:58.155Z",257,"f4l95lly7crttk6","2025-03-24 01:51:23.344Z","เรียนรู้วิธีเพิ่ม ฟีเจอร์ปักหมุดข้อความ (Pinned Messages) ใน WebSocket Chat เพื่อให้ผู้ใช้สามารถเก็บข้อความสำคัญไว้ดูภายหลังได้ รองรับการแจ้งเตือนแบบเรียลไทม์เมื่อมีข้อความถูกปักหมุด","2026-06-07 06:44:36.772Z",{"alt":294,"cover_image_path":295,"created":296,"expand":297,"id":330,"published_at":331,"school_blog":326,"short_description":332,"title":294,"updated":333,"slug":327,"views":329},"EP.42 การเพิ่มฟีเจอร์ Read Receipts (การแจ้งเตือนว่าอ่านแล้ว) ใน WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fh5qf4hc6itxocuz\u002F55_11zon_l1yk5jt9ob.webp","2026-03-04 08:51:01.823Z",{"keywords":298,"locale":320,"school_blog":321},[299,300,305,310,311,312,313,314,315],{"collectionId":12,"collectionName":13,"created":108,"created_by":15,"id":109,"name":110,"updated":111,"updated_by":15},{"collectionId":12,"collectionName":13,"created":301,"created_by":15,"id":302,"name":303,"updated":304,"updated_by":15},"2026-03-04 08:50:59.960Z","up5egj6sjn2i72f","Chat Features","2026-06-07 06:48:43.652Z",{"collectionId":12,"collectionName":13,"created":306,"created_by":15,"id":307,"name":308,"updated":309,"updated_by":15},"2026-03-04 08:51:00.184Z","hnwyjmmf41r934k","Message Read Status","2026-06-07 06:48:43.788Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"collectionId":12,"collectionName":13,"created":50,"created_by":15,"id":51,"name":52,"updated":53,"updated_by":15},{"collectionId":12,"collectionName":13,"created":316,"created_by":15,"id":317,"name":318,"updated":319,"updated_by":15},"2026-03-04 08:51:00.522Z","yqwzufwzpmf5p93","Read Receipts","2026-06-07 06:48:43.862Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":70,"collectionId":71,"collectionName":72,"created":73,"expand":322,"id":326,"slug":327,"updated":328,"views":329},{"category":323},{"blogIds":324,"collectionId":77,"collectionName":78,"created":79,"created_by":15,"id":70,"image":80,"image_alt":73,"image_path":81,"label":325,"name":83,"priority":84,"publish_at":85,"scheduled_at":73,"status":86,"updated":87,"updated_by":15},[],{"en":83,"th":83},"q37y3cwja1kppep","read-receipts-websocket-chat","2026-05-13 06:56:17.808Z",233,"h5qf4hc6itxocuz","2025-03-24 01:51:09.074Z","เรียนรู้วิธีเพิ่ม Read Receipts (แจ้งเตือนว่าอ่านแล้ว) ใน WebSocket Chat เพื่อให้ผู้ใช้สามารถทราบได้ว่าข้อความที่ส่งไปได้รับการอ่านแล้วหรือไม่ โดยใช้ WebSocket และฐานข้อมูล","2026-06-07 06:44:37.146Z",{"alt":335,"cover_image_path":336,"created":337,"expand":338,"id":371,"published_at":372,"school_blog":367,"short_description":373,"title":335,"updated":374,"slug":368,"views":370},"EP.41 การเพิ่มฟีเจอร์แสดงสถานะการพิมพ์ (Typing Indicator) ใน WebSocket Chat","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Ff0symmnhfpvutpu\u002F53_11zon_sdo62p0vh7.webp","2026-03-04 08:51:01.871Z",{"keywords":339,"locale":361,"school_blog":362},[340,341,346,347,352,353,354,355,356],{"collectionId":12,"collectionName":13,"created":108,"created_by":15,"id":109,"name":110,"updated":111,"updated_by":15},{"collectionId":12,"collectionName":13,"created":342,"created_by":15,"id":343,"name":344,"updated":345,"updated_by":15},"2026-03-04 08:51:00.968Z","qivmit8ukkhb143","Typing Status","2026-06-07 06:48:44.083Z",{"collectionId":12,"collectionName":13,"created":30,"created_by":15,"id":31,"name":32,"updated":33,"updated_by":15},{"collectionId":12,"collectionName":13,"created":348,"created_by":15,"id":349,"name":350,"updated":351,"updated_by":15},"2026-03-04 08:46:14.782Z","v0mhensk18fofru","WebSocket Chat","2026-06-07 06:47:04.148Z",{"collectionId":12,"collectionName":13,"created":35,"created_by":15,"id":36,"name":37,"updated":38,"updated_by":15},{"collectionId":12,"collectionName":13,"created":40,"created_by":15,"id":41,"name":42,"updated":43,"updated_by":15},{"collectionId":12,"collectionName":13,"created":45,"created_by":15,"id":46,"name":47,"updated":48,"updated_by":15},{"collectionId":12,"collectionName":13,"created":50,"created_by":15,"id":51,"name":52,"updated":53,"updated_by":15},{"collectionId":12,"collectionName":13,"created":357,"created_by":15,"id":358,"name":359,"updated":360,"updated_by":15},"2026-03-04 08:51:01.365Z","h5pcr9najjxfqwh","Typing Indicator","2026-06-07 06:48:44.149Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":70,"collectionId":71,"collectionName":72,"created":73,"expand":363,"id":367,"slug":368,"updated":369,"views":370},{"category":364},{"blogIds":365,"collectionId":77,"collectionName":78,"created":79,"created_by":15,"id":70,"image":80,"image_alt":73,"image_path":81,"label":366,"name":83,"priority":84,"publish_at":85,"scheduled_at":73,"status":86,"updated":87,"updated_by":15},[],{"en":83,"th":83},"qa8pf1ntbtf5iya","typing-indicator-websocket-chat","2026-07-18 05:12:17.570Z",320,"f0symmnhfpvutpu","2025-03-24 01:50:55.427Z","เรียนรู้วิธีเพิ่ม Typing Indicator (สถานะการพิมพ์) ใน WebSocket Chat เพื่อให้ผู้ใช้สามารถเห็นเมื่อคู่สนทนากำลังพิมพ์ รองรับการแจ้งเตือนแบบเรียลไทม์ผ่าน WebSocket","2026-06-07 06:44:37.287Z",{"alt":376,"cover_image_path":377,"created":378,"expand":379,"id":414,"published_at":415,"school_blog":410,"short_description":416,"title":376,"updated":417,"slug":411,"views":413},"7 เทคนิค Clean Code เพื่อโค้ดคุณภาพ","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fkkcjq36v8ovf377\u002F1wsr9xo1h84_jx6kiwdvw8.webp","2026-03-04 08:50:48.992Z",{"keywords":380,"locale":396,"school_blog":397},[381,386,391],{"collectionId":12,"collectionName":13,"created":382,"created_by":15,"id":383,"name":384,"updated":385,"updated_by":15},"2026-03-04 08:47:48.682Z","tjtve6zpa4tn6cr","Clean Code","2026-06-07 06:47:34.469Z",{"collectionId":12,"collectionName":13,"created":387,"created_by":15,"id":388,"name":389,"updated":390,"updated_by":15},"2026-03-04 08:26:56.612Z","yf74wkqyamfc5qx","โปรแกรมเมอร์","2026-06-07 06:45:20.920Z",{"collectionId":12,"collectionName":13,"created":392,"created_by":15,"id":393,"name":394,"updated":395,"updated_by":15},"2026-03-04 08:34:44.600Z","gegz59u7ho1kpai","เทคนิคการเขียนโค้ด","2026-06-07 06:46:15.298Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":398,"collectionId":71,"collectionName":72,"created":73,"expand":399,"id":410,"slug":411,"updated":412,"views":413},"qn0d7xwatkleou1",{"category":400},{"blogIds":401,"collectionId":77,"collectionName":78,"created":402,"created_by":15,"id":398,"image":403,"image_alt":73,"image_path":404,"label":405,"name":406,"priority":407,"publish_at":408,"scheduled_at":73,"status":86,"updated":409,"updated_by":15},[],"2026-03-04 08:31:21.896Z","4jn5ccty4x9_2894s1fj97.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fqn0d7xwatkleou1\u002F4jn5ccty4x9_2894s1fj97.png",{"en":406,"th":406},"How to",0,"2025-02-04 08:40:59.666Z","2026-06-07 06:45:02.619Z","0qovmiyknwuvkzi","7-clean-code-techniques","2026-07-19 16:59:13.608Z",756,"kkcjq36v8ovf377","2025-03-21 09:54:15.917Z","เรียนรู้ 7 เทคนิคที่ช่วยให้การเขียนโค้ดของคุณมีคุณภาพและเข้าใจง่ายมากขึ้น","2026-06-07 06:44:34.577Z",{"alt":419,"cover_image_path":420,"created":421,"expand":422,"id":452,"published_at":453,"school_blog":448,"short_description":454,"title":419,"updated":455,"slug":449,"views":451},"5 โปรเจกต์ง่ายๆ สำหรับมือใหม่ เรียนโค้ดอย่างสนุกและใช้งานได้จริง","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fk90zl4w1sfi70ug\u002F1_1_pgt8k3rq0o.webp","2026-03-04 08:50:47.865Z",{"keywords":423,"locale":435,"school_blog":436},[424,429,434],{"collectionId":12,"collectionName":13,"created":425,"created_by":15,"id":426,"name":427,"updated":428,"updated_by":15},"2026-03-04 08:50:47.309Z","sbjq7yx6bvgzeyr","โปรเจกต์","2026-06-07 06:48:40.904Z",{"collectionId":12,"collectionName":13,"created":430,"created_by":15,"id":431,"name":432,"updated":433,"updated_by":15},"2026-03-04 08:47:19.758Z","s3esfvwr60x95g8","เขียนโค้ด","2026-06-07 06:47:24.316Z",{"collectionId":12,"collectionName":13,"created":387,"created_by":15,"id":388,"name":389,"updated":390,"updated_by":15},{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":437,"collectionId":71,"collectionName":72,"created":73,"expand":438,"id":448,"slug":449,"updated":450,"views":451},"spm4l1k5bgmhmmt",{"category":439},{"blogIds":440,"collectionId":77,"collectionName":78,"created":441,"created_by":15,"id":437,"image":442,"image_alt":73,"image_path":443,"label":444,"name":445,"priority":407,"publish_at":446,"scheduled_at":73,"status":86,"updated":447,"updated_by":15},[],"2026-03-04 08:31:18.590Z","50hyjr6os45_ayazwr5gq7.png","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclcatblg987654321\u002Fspm4l1k5bgmhmmt\u002F50hyjr6os45_ayazwr5gq7.png",{"en":445,"th":445},"Knowledge","2026-03-18 02:25:41.222Z","2026-06-07 06:45:02.533Z","hnwyvti5frqnobk","5-easy-projects-for-beginners","2026-07-09 06:35:10.994Z",273,"k90zl4w1sfi70ug","2025-03-21 09:53:25.894Z","เรียนรู้ 5 โปรเจกต์ที่เหมาะสำหรับมือใหม่ในการฝึกฝนการเขียนโค้ดอย่างสนุกและใช้งานได้จริง","2026-06-07 06:44:33.939Z",{"alt":457,"cover_image_path":458,"created":459,"expand":460,"id":496,"published_at":497,"school_blog":493,"short_description":498,"title":457,"updated":499,"slug":494,"views":247},"NVIDIA ใช้ AI ยกระดับเกม สู่ประสบการณ์ใหม่ที่สมจริงกว่าเดิม","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002F1qh0j0nit656uko\u002F1_2_tg45fsl52u.webp","2026-03-04 08:50:47.540Z",{"keywords":461,"locale":487,"school_blog":488},[462,467,472,477,482],{"collectionId":12,"collectionName":13,"created":463,"created_by":15,"id":464,"name":465,"updated":466,"updated_by":15},"2026-03-04 08:31:29.142Z","hrqdq7kjl5lzjmi","AI","2026-06-07 06:45:27.147Z",{"collectionId":12,"collectionName":13,"created":468,"created_by":15,"id":469,"name":470,"updated":471,"updated_by":15},"2026-03-04 08:50:45.784Z","thjmpjrwgv9xnu7","NVIDIA","2026-06-07 06:48:40.450Z",{"collectionId":12,"collectionName":13,"created":473,"created_by":15,"id":474,"name":475,"updated":476,"updated_by":15},"2026-03-04 08:50:46.132Z","n1twmghdi4wr8mz","วงการพัฒนาเกม","2026-06-07 06:48:40.538Z",{"collectionId":12,"collectionName":13,"created":478,"created_by":15,"id":479,"name":480,"updated":481,"updated_by":15},"2026-03-04 08:31:50.143Z","njbfvrm24d7pbv2","การพัฒนาเกม","2026-06-07 06:45:32.309Z",{"collectionId":12,"collectionName":13,"created":483,"created_by":15,"id":484,"name":485,"updated":486,"updated_by":15},"2026-03-04 08:31:39.503Z","3kryq9o3k6qygo9","อุตสาหกรรมเกม","2026-06-07 06:45:30.049Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":437,"collectionId":71,"collectionName":72,"created":73,"expand":489,"id":493,"slug":494,"updated":495,"views":247},{"category":490},{"blogIds":491,"collectionId":77,"collectionName":78,"created":441,"created_by":15,"id":437,"image":442,"image_alt":73,"image_path":443,"label":492,"name":445,"priority":407,"publish_at":446,"scheduled_at":73,"status":86,"updated":447,"updated_by":15},[],{"en":445,"th":445},"zgctunirwj9638e","nvidia-ai-gaming-new-realistic-experience","2026-06-22 09:14:31.670Z","1qh0j0nit656uko","2025-03-21 07:09:13.064Z","ค้นพบว่า NVIDIA ใช้ AI เพื่อยกระดับการพัฒนาเกมอย่างไร เปลี่ยนประสบการณ์ของโปรแกรมเมอร์และผู้เล่นทั่วโลก","2026-06-07 06:44:33.767Z",{"alt":501,"cover_image_path":502,"created":503,"expand":504,"id":526,"published_at":527,"school_blog":522,"short_description":528,"title":501,"updated":529,"slug":523,"views":525},"6 เคล็ดลับการพัฒนาแอปพลิเคชันมือถือในปี 2025","https:\u002F\u002Ftwsme-r2.tumwebsme.com\u002Fsclblg987654321\u002Fl3hs99yitkqqlph\u002F6_2025_efa0zi1f2w.webp","2026-03-04 08:50:48.735Z",{"keywords":505,"locale":516,"school_blog":517},[506,511],{"collectionId":12,"collectionName":13,"created":507,"created_by":15,"id":508,"name":509,"updated":510,"updated_by":15},"2026-03-04 08:33:57.434Z","hz551yc9f7fozes","การพัฒนาแอปพลิเคชัน","2026-06-07 06:45:54.668Z",{"collectionId":12,"collectionName":13,"created":512,"created_by":15,"id":513,"name":514,"updated":515,"updated_by":15},"2026-03-04 08:32:02.973Z","opnkwzu53lkn5te","เคล็ดลับการเขียนโปรแกรม","2026-06-07 06:45:36.060Z",{"code":60,"collectionId":61,"collectionName":62,"created":63,"flag":64,"id":65,"is_default":66,"label":67,"updated":68},{"category":437,"collectionId":71,"collectionName":72,"created":73,"expand":518,"id":522,"slug":523,"updated":524,"views":525},{"category":519},{"blogIds":520,"collectionId":77,"collectionName":78,"created":441,"created_by":15,"id":437,"image":442,"image_alt":73,"image_path":443,"label":521,"name":445,"priority":407,"publish_at":446,"scheduled_at":73,"status":86,"updated":447,"updated_by":15},[],{"en":445,"th":445},"x3qgzhr21nnw0q1","6-tips-for-mobile-app-development-2025","2026-07-04 05:47:33.212Z",224,"l3hs99yitkqqlph","2025-03-20 04:16:17.863Z","เรียนรู้เคล็ดลับสำคัญในการพัฒนาแอปพลิเคชันมือถือที่ตอบโจทย์เทรนด์ปี 2025  ","2026-06-07 06:44:34.253Z",29,12,448,38]