기본 콘텐츠로 건너뛰기

추천 가젯

리눅스 홈서버 알림용 텔레그램 봇(Telegram Bot) 연동 및 쉘 스크립트 구축 가이드

개인 홈서버를 운영하다 보면 백업 완료 여부나 시스템 에러 같은 단방향 알림을 스마트폰으로 빠르게 받아보고 싶어집니다. 외부 메일 서버나 복잡한 SMTP 설정을 거치지 않고, 가장 확실하고 가볍게 쓸 수 있는 텔레그램 봇을 이용한 홈서버 알림 구축 방법 을 정리합니다. 1단계: 텔레그램 봇 생성하기 (BotFather) 텔레그램 앱을 켜고 상단 검색창에 BotFather 를 검색하여 공식 봇(파란색 체크마크 확인)을 엽니다. 대화창에 아래 명령어를 입력하여 새로운 봇을 만듭니다. Plaintext /newbot 봇의 이름(Name)을 입력합니다. (예: My Home Server Bot ) 봇의 아이디(Username)를 입력합니다. (반드시 영문이며 끝에 bot 또는 _bot 으로 끝나야 합니다. 예: my_home_backup_bot ) 생성이 완료되면 HTTP API 토큰(Token)이 발급됩니다. 이 토큰을 안전하게 보관합니다. 2단계: 내 Chat ID(채팅방 고유 번호) 확인하기 텔레그램은 보안상 사용자가 먼저 봇에게 말을 걸어야 메시지를 받을 수 있으며, 봇이 나에게 메시지를 보내려면 고유 Chat ID 가 필요합니다. 텔레그램 검색창에 userinfobot 을 검색하여 들어갑니다. 하단의 [시작하기] 버튼을 누르면 내 계정의 정보와 함께 Id (숫자) 값을 알려줍니다. 이 숫자를 복사해 둡니다. [중요] 1단계에서 만든 내 봇의 아이디(예: @my_home_backup_bot )를 검색해서 대화창을 열고, [시작] 버튼을 누르거나 아무 메시지나 먼저 한 번 전송해 둡니다. 3단계: 리눅스 쉘 스크립트 작성 및 테스트 서버(터미널)에서 환경변수를 설정하고 curl 명령어를 통해 테스트 메시지를 보낼 수 있습니다. 특히 인자값이 없을 때를 대비해 기본값 처리를 해두면 유용합니다. 아래 내용을 포함하는 쉘 스크립트 파일(예: send_telegram.sh )을 작성합니다. Bash #!/bin/bash # 환경변수 설정 (실제 토큰과 C...

리얼텍 내장 사운드 칩의 위대함. alc887 코덱 메세지 관찰하기


ᅟcat /proc/asoud/card1/codec#0 으로 얻은 메세지이다.

그중에 조금을 발췌하면 다음과 같다.

Node 0x1a [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
 Control: name="Surround Playback Switch", index=0, device=0
   ControlAmp: chs=3, dir=Out, idx=0, ofs=0
 Control: name="Line Boost Volume", index=0, device=0
   ControlAmp: chs=3, dir=In, idx=0, ofs=0
 Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
 Amp-In vals:  [0x00 0x00]
 Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
 Amp-Out vals:  [0x00 0x00]
 Pincap 0x00003736: IN OUT Detect Trigger
   Vref caps: HIZ 50 GRD 80 100
 Pin Default 0x0181304f: [Jack] Line In at Ext Rear
   Conn = 1/8, Color = Blue
   DefAssociation = 0x4, Sequence = 0xf
 Pin-ctls: 0x20: IN VREF_HIZ
 Unsolicited: tag=05, enabled=1
 Power states:  D0 D1 D2 D3 EPSS
 Power: setting=D0, actual=D0
 Connection: 5
    0x0c* 0x0d 0x0e 0x0f 0x26

스테레오 입출력 단자이다.  

출력으로 서라운드 플레이백을 할 수 있다. 
입력으로 라인레벨로 들어오는 것을 boost할 수 있다. 

입력 출력 Detect trigger가 있다. 의미하는 바를 정확히는 모른다. 
trs핀간의 전위차를 가지고 하는 것 같은데, 지원하는 바를 나타내는듯 하다. 


핀의 기본 동작은 라인입력이고 뒷면이며 connector는 1/8인치 (3.5mm)
파란색 단자이다.  (여기서 의미하는 바는 아무래도 디폴트로 동작을 안할 수 있으며 조절이 가능하다는 것 같다. )

가장 중요한 정보이다. HIZ 입력을 지원한다. 


realtek에서 배포하는 문서들을 보면 상황에 따라 balanced 출력을 지원하는 경우도 있다. 하지만 내꺼는 전혀 작동하지 않는다. 굳이 원하면 모노음원을 구해서 오른쪽을 반전한 다음, stereo로 출력하시라.



HIZ가 지원한다는건 그냥 기타줄 - 3.5 mono 케이블을 사용해서 연결해서 녹음하면 된다는 거다.

뭐 노이즈는 ... 방법이 없는데,  메인보드 비싼거면 안들어올거고 싼거면 들어오지 않을까???


뭐 나머지 여러가지 버리는 정보들도 있다.


Node 0x1f [Pin Complex] wcaps 0x400681: Stereo Digital
 Pincap 0x00000020: IN
 Pin Default 0x411111f0: [N/A] Speaker at Ext Rear
   Conn = 1/8, Color = Black
   DefAssociation = 0xf, Sequence = 0x0
   Misc = NO_PRESENCE
 Pin-ctls: 0x20: IN
 Unsolicited: tag=00, enabled=0
 Power states:  D0 D1 D2 D3 EPSS
 Power: setting=D0, actual=D0

보면 Jack이라고 적혀 있던 부분이 해당없음 즉 [N/A]라고 되어있다.
칩은 지원하나 납땜이 안되어 있던지 기능을 죽였던지 그러한 정보가 적혀있는 듯 하다.

이 메세지들을 보면  gpio 핀도 워낙은 있는 것 같은데, 날려먹기 쉬우니 제조사가 음악에 맞춘 LED 같은 용도로 안쓰는 이상 죽여 놓은 듯하다.

좀 비싼 장비들에 대해서 이 codec을 보면 좀 재미난 정보들이 많을 것으로 보인다. 나중에 살펴보자.





아 중요한 사실, realtek 내장 사운드카드로 기타 녹음이 가능하다.
물론 자기 카드가 지원하는지는 본인이 알아보셔야 하고,
윈도우는 코덱메시지를 어떻게 읽는지 모른다.

댓글