์ ์ฒด๋ณด๊ธฐ144 [AI ์ํฌํ๋ก์ฐ ํ๋ซํผ] n8n์ ๋ชจ๋ ๊ฒ n8n์ด๋n8n(์์ด๋ก๋ n-eight-n์ด๋ผ ๋ถ๋ฆ)์ ๋ ธ๋ ๊ธฐ๋ฐ ์ํฌํ๋ก์ฐ ์๋ํ ํ๋ซํผ์ ๋๋ค. ์ฝ๋ฉ ์์ด GUI๋ฅผ ํตํด ๋ค์ํ ์๋น์ค์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฐ๊ฒฐํ์ฌ ์๋ํ ์ํฌํ๋ก์ฐ๋ฅผ ๊ตฌ์ถํ ์ ์์ต๋๋ค. Zapier, Make.com(๊ตฌ Integromat) ๊ฐ์ "๋ ธ์ฝ๋ ์๋ํ ๋๊ตฌ"์ ์คํ์์ค ๋ฒ์ ์ด๋ฉฐ, ๊ธฐ์ ๋ด๋ถ ์์คํ ์๋ ์์ ๋กญ๊ฒ ์ ์ฉํ ์ ์๋ ์ ์ด ํฐ ์ฅ์ ์ ๋๋ค. ํน์งSelf hosting ์ง์์ฌ์ฉ์๊ฐ ์๋ฒ์ ์ง์ ์ค์น ๊ฐ๋ฅํฉ๋๋ค(Node.js ๊ธฐ๋ฐ). ์์ฒญ๋ ์ฅ์ ์ด ๋๊ฒ ์ต๋๋ค. ๋ชจ๋ ํ ์คํธ ์ฌ์ฉ์ ์ ํ ํธ์คํ ์ผ๋ก ๋ฌด๋ฃ๋ก ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ์๋ฒ ํธ์คํ ๋ ์ปดํจํ ์๋ฒ๋ง ์๋ค๋ฉด ์ ํ ํธ์คํ ์ผ๋ก ๋น์ฉ์ ์ ๊ฐํ ์ ์์ง ์์๊น ์ถ๋ค์.Node ๊ธฐ๋ฐ ๊ตฌ์กฐ์ฌ๊ธฐ์์ Node๋ Node.js๊ฐ ์๋๋ผ nod.. 2025. 12. 3. [AI] AI ์์ด์ ํธ(AI Agent)์ ๋ชจ๋ ๊ฒ ๋ค์ด๊ฐ๋ฉฐAI ์๋์์ ์ต๊ทผ ์์ด์ ํธ ์ด์ผ๊ธฐ๊ฐ ๋ง์ด ๋ค๋ ค์ค๊ณ ์์ต๋๋ค. AI ๋ชจ๋ธ์ด ์ผ๋ง๋ ๋๋ํ๊ฐ์ ์ง์คํ์๋ค๋ฉด ์ด์ ๋ AI ๋ชจ๋ธ์ ํตํด ์ด๋ค ๊ฒ์ ์๋ํํ ์ ์์๊น์ ํฌ์ปค์ค๊ฐ ๋ง์ถฐ์ง๊ณ ์์ต๋๋ค. ๊ทธ ์ค์ฌ์ ์๋ AI Agent์ ๋ํด ์์๋ณด๋ ค๊ณ ํฉ๋๋ค. AI Agent๋๋จ์ผ AI์๋ ๋ฌ๋ฆฌ ํน์ ๋ชฉํ๋ฅผ ์ํด ์ฌ๋์ฒ๋ผ ์์จ์ ์ผ๋ก ์๊ฐํ๊ณ ํ๋ํ๋ฉฐ ์ฃผ์ด์ง ํ๊ฒฝ์ ์ ์ํด์ ์์ ์ ์ํํ๊ฑฐ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋๋ํ ์ปดํจํฐ ํ๋ก๊ทธ๋จ์ ๋๋ค. ์ผ๋ฐ AI์ ๋ค๋ฅธ ์ ์ ์์จ์ฑ๊ณผ ํ๊ฒฝ ์ ์์ด๋ค. ์ผ๋ฐ AI๋ ์๋์ ์ผ๋ก ๋ฌผ์ด๋ณด๋ ์ง๋ฌธ์ ๋ตํ๋ ๋ฐ๋ฉด์ ์์ด์ ํธ๋ ํ๊ฒฝ๊ณผ ์ํธ์์ฉํ๋ฉด์ ์์ ๋กญ๊ฒ ํ๋จํ๊ณ ์คํํฉ๋๋ค. ๋ฏธ๋์ IT๋ถ์๋ AI ์์ด์ ํธ๋ฅผ ์ฑ์ฉํ๊ณ ๊ด๋ฆฌํ๋ ์ธ์ฌ๋ถ์๊ฐ ๋ ๊ฒ์ด๋ค.-์ ์จํฉ- ์ AI Agent๋ฅผ .. 2025. 12. 1. RTSP(์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ ์ ์ด ํ๋กํ ์ฝ)์ด๋? ๋ค์ด๊ฐ๋ฉฐ์ค์๊ฐ ์์ ์คํธ๋ฆฌ๋ฐ ์์คํ ์ ๊ตฌ์ถํ ๋ ๊ฐ์ฅ ๋จผ์ ๋ฑ์ฅํ๋ ํ๋กํ ์ฝ์ด ๋ฐ๋ก RTSP(Real Time Streaming Protocol)์ ๋๋ค.๋ณด์ ์นด๋ฉ๋ผ, CCTV ๊ด์ , ๋ฅ๋ฌ๋ ์์ ๋ถ์, ๋ฐฉ์ก ์์คํ ๋ฑ ๋๋ถ๋ถ์ ์ค์๊ฐ ์์ ์ธํ๋ผ์์ ํ์ค์ฒ๋ผ ์ฌ์ฉ๋ฉ๋๋ค. ํ์ง๋ง ์ด๋ฆ๊ณผ ๋ฌ๋ฆฌ RTSP๋ “์์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๋ ํ๋กํ ์ฝ”์ด ์๋๋๋ค. RTSP์ ๋ณธ์ง์ ์คํธ๋ฆฌ๋ฐ์ ์ ์ดํ๋ ์ญํ ์ ์์ต๋๋ค. 1. RTSP๋ ๋ฌด์์ธ๊ฐ?RTSP(Real Time Streaming Protocol)๋ ์ค์๊ฐ ์คํธ๋ฆผ์ ์ ์ดํ๊ธฐ ์ํ ๋คํธ์ํฌ ํ๋กํ ์ฝ์ ๋๋ค. ์น์์ HTTP๊ฐ ๋ฌธ์ ์์ฒญ๊ณผ ์ ์ก์ ์ ์ดํ๋ฏ, RTSP๋ ์์·์์ฑ ์คํธ๋ฆผ์ ์์ฒญํ๊ณ ๊ด๋ฆฌํ๋ “๋ฆฌ๋ชจ์ปจ ์ญํ ”์ ํฉ๋๋ค.RTSP๊ฐ ์ํํ๋ ์ฃผ์ ๊ธฐ๋ฅ์ ๋ค์๊ณผ.. 2025. 11. 16. [Go] enum ์ฌ์ฉํ๊ธฐ ๋ค์ด๊ฐ๋ฉฐGo๋ ๊ณต์์ ์ผ๋ก enum ํค์๋๊ฐ ์๊ธฐ ๋๋ฌธ์ ๋ณ๋๋ก ์ ์ํด์ ์ฌ์ฉํด์ผ ํฉ๋๋ค. ๋ฐฉ๋ฒ์ ์ฌ์ฐ๋ ๋ช๊ฐ ์๊ฐํด๋๋ฆฌ๊ฒ ์ต๋๋ค. ๋ํ์ ์ผ๋ก const + iota๋ฅผ ํ์ฉํ๊ฑฐ๋ ํ์ ์ ์(type alias)๋ก ์ด๊ฑฐํ๊ณผ ์ ์ฌํ๊ฒ ๊ตฌํํฉ๋๋ค. ๊ธฐ๋ณธ iota๋ฅผ ์ด์ฉํ Enumpackage mainimport "fmt"// Weekday ํ์ ์ ์type Weekday int// iota๋ฅผ ์ด์ฉํ ์ด๊ฑฐํ ์์ ์ ์ธconst ( Sunday Weekday = iota Monday Tuesday Wednesday Thursday Friday Saturday)func main() { fmt.Println(Sunday, Monday, Tuesday) // 0 1 2 fm.. 2025. 11. 10. [Go] ์ค๋ฌด ํ๊ฒฝ์์ ๋ก๊ทธ ์ ๋๋ก ๋จ๊ธฐ๊ธฐ(Logging) ๋ค์ด๊ฐ๋ฉฐ24์๊ฐ ์๋ฒ๋ฅผ ์ด์ํ๋ ์ค๋ฌดํ๊ฒฝ์์๋ ์ธ์ ์ด๋ค ์์ธ๊ฐ ๋ฐ์ํ ์ง ๋ชจ๋ฆ ๋๋ค. ์ด๋ฏธ ์ด์๊ฐ ๋ฐ์ํ ์ํ์์ ๊ธฐ์ ์๋ค์ด ์ ์ผ ๋จผ์ ํ์ธํ๋ ๊ฒ๋ค์ "๋ก๊ทธ"์ ๋๋ค. ๋ชจ๋ ์์คํ ์๋ ์ด๋ฒคํธ ๋ฐ์์ ๋ก๊ทธ๋ฅผ ์ฐ๊ฒ ๋๊ธฐ ๋๋ฌธ์, ์ธ์ด์ ํ๋ ์์ํฌ ๋ฑ ํ๊ฒฝ์ด ๋ฐ๋๋๋ผ๋ ๋ณด๊ธฐ ํธํ๊ฒ ๋ก๊ทธ ํ๊ฒฝ ์ค์ ๋ถํฐ ํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ ๋๋ค. lorusgo์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก logํจํค์ง๊ฐ ์๊ธฐ ๋๋ฌธ์ ํ ์ดํ๋ก์ ํธ์์๋ logํจํค์ง๋ง ์ฌ์ฉํด๋ ๋ฉ๋๋ค. ํ์ง๋ง ์ฐ๋ฆฌ๋ ์ค๋ฌดํ๊ฒฝ์์ ์ฌ์ฉํด์ผํ๊ธฐ ๋๋ฌธ์ ์กฐ๊ธ๋ ๋ง์ ๊ธฐ๋ฅ์ ์ง์ํ๋ ์๋ํํฐ ํจํค์ง๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. logrus๋ go์ log ํจํค์ง์ ํธํ๋๋ฉด์ ์์ ์งํฉ์ฒด๋ผ๊ณ ๋ณผ ์ ์์ต๋๋ค.(๊ณต์ ๋งํฌ)go get -u github.com/sirupsen/logrus์๋์ ๊ฐ์ด ์ฌ์ฉ.. 2025. 11. 10. [Go] ์ผ์ ์๊ฐ๋ง๋ค ์ค์ผ์ค๋ฌ ๋์ํ๊ธฐ(Ticker) . time.Ticker ๋๋ time.AfterFunc, time.Sleep ๋ฑ์ ์ด์ฉํด ์ฃผ๊ธฐ์ ์ผ๋ก ๋์ํ๋ ์ค์ผ์ค๋ฌ๋ฅผ ๊ตฌํํ ์ ์์ต๋๋ค.์๋์์๋ ์ค๋ฌด์์ ์์ฃผ ์ฐ์ด๋ n์ด ๊ฐ๊ฒฉ์ผ๋ก ๋ฐ๋ณต ์คํ๋๋ ์์ ํ๋ก์ธ์ค๋ฅผ ๋จ๊ณ์ ์ผ๋ก ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค.๊ธฐ๋ณธ์ ์ธ time.Ticker ์ฌ์ฉ ์์package mainimport ( "fmt" "time")func main() { ticker := time.NewTicker(5 * time.Second) // 5์ด๋ง๋ค ๋ฐ๋ณต defer ticker.Stop() for { select { case t := ํต์ฌ ํฌ์ธํธtime.NewTicker(d)๋ ์ผ์ ์ฃผ๊ธฐ๋ก ์ฑ๋์ ์ด๋ฒคํธ๋ฅผ ๋ณด๋ ๋๋ค.for + select ๊ตฌ๋ฌธ์ผ๋ก .. 2025. 11. 7. ์ด์ 1 2 3 4 ยทยทยท 24 ๋ค์