1. 있는 것 사용 하기
- 당연, SMS 서비스를 제공하는 메신저나 사이트를 방문해 사용하는 방법입니다. 가장 많이 아시는 방법이지요. 수많은 메신저와 서비스를 제공하는 사이트가 만들어져 있으며, 대부분 월 10개 이상의 문자 메시지를 사용 할 수 있습니다. 각종 검색엔진에서 "sms 제공"등의 단어를 검색해 만만한 것 하나 쓰시면 되겠지요. 아래는 아래 출처에서 퍼온 리스트입니다.
- 모바이어리
http://www.mobiary.com
스폰서에 따라 1인당 하루 최소 3건~50건 동시전송가능. 주소록 지원함. 강추site!!
포이브넷
http://www.foreve.net
무료회원가입시 50건 무료.
마이핫
http://www.myhot.co.kr
무료회원가입후 한달간 공짜
1004 KT&G
http://www.1004ktng.com
무료회원가입시 50건 무료.
잉크풀
http://www.inkpool.co.kr
무료회원가입후 60건 무료.
스포
http://www.spo.com
하루10건
진포유
http://www.jean4u.co.kr
하루5건
ABC 클리닉
http://www.abcclinic.co.kr
하루 5건, 월 100건
클릭벨
http://www.clickbell.com
1인당 하루10건
Notiplus
http://www.notiplus.com
12건 무료
smsphone
http://www.smsphone.co.kr
광고배너클릭 및 광고수신을 하면 클릭건당 문자 무료
쏜다넷
http://www.xonda.net
매일5건 무료, 포토메시지도 무료
mcrm
http://www.mcrm.co.kr
무료회원가입시 10건 무료.
네이트온
http://nateon.nate.com
네이트 온으로 로그인시 네이트아이디 100건 라이코스 아이디 100건 합계 200건 한달 무료
슈어엠
http://www.surem.com
1일 5건 무료
smsbible
http://www.smsbible.co.kr
매일 성경말씀 1건 무료
sms cafe
http://web2.smscafe.co.kr
매일 3건 무료
팬텍앤큐리텔
http://www.curitel.com
1일 5건 무료
삼성카드
http://www.samsungcard.co.kr
월 900원에 한달 3000건 하루 100건
농협
http://ums.nonghyup.co.kr
무료회원가입시 200건 무료
수원시청
http://sms.suwon.ne.kr/webuser
1일 5건 (월 100건)
아푸지마
http://www.apugima.com
무료회원가입 30건 무료
웹아이피(w3ip)
http://www.w3ip.com
인증시 최소요구금액 100원을 결제하면
하루4건, 한달20건
동부화재
http://www.idongbu.com
사이버창구-슈팅메신저 (1일 10건)
광명시청
http://gm.go.kr
10건 가능
강남구청
http://www.gangnam.go.kr
월 30건 무료(My 강남 - 부가서비스)
마이이유
http://mye-u.com
1일 5건 무료
포스타운
http://www.postown.net
1일 5건 무료
Mylgt (019 사용자)
http://www.mylgt.co.kr
019간 월 30건 무료
KTF Members
http://www.ktfmembers.com
KTF 사용자는 60건, 미사용자는 15건 무료( 016, 018 로 발송시)
032life
http://www.032life.com
무료회원가입 5000포인트
문자메시지 건당 30포인트
중구청
http://www.junggu.seoul.kr
1일 10건
애니콜
http://www.anycall.com
멤버십 회원가입시 3000포인트, 프랜드회원가입시 500포인트
문자 전송시 멤버십 20 , 프랜드 30 가 사용됩니다.
싸이언 아바타 이벤트
http://avatarmall.daum.net
12월 10일까지 10건 무료
아로마러버
http://www.aromalover.co.kr
월 10건 무료
을지병원
http://www.eulji.or.kr
이번달 마감 - 매달 5000건 선착순으로
아사달
http://www.asadal.com
매일 10건 공짜
위의 사이트들 처럼 SMS 서비스를 제공하는 사이트와 (비공식적으로?)연동하는 유틸리티를 개인적으로 만드신 분도 계십니다. 즉, 해당 사이트를 찾아가지 않고서도 유틸리티 내에서 SMS 를 보낼 수 있도록 제작된 유틸리티를 쓰는 것입니다.
3. SMS 제공 사이트와 연동하는 프로그램 만들기
네, 위의 2번 예처럼 웹사이트의 SMS를 이용하는 유틸리티를 만드는 방법입니다. 가령, 웹브라우저상에서 로그인하고, SMS 정보를 입력 한 후 전송 버튼을 누르듯, 그 모든 과정을 대신하는 프로그램을 만드는 것이죠. 어떤 사이트는 그러한 프로그램을 쉽게 만들수 있도록 서비스를 유료로 제공하기도 합니다. 해당 사이트와의 연동은 HTTP 프로토콜로 이루어지기 때문에 TCP/IP 소켓 프로그래밍을 하실 수만 있다면 손쉽게 프로그램 하실 수 있습니다. 아래는 그 한 예입니다.
출처는 제 홈페이지(http://airpage.org/xe/language_data/6943) 입니다.
- // sms.h
- class CSms : public CAsyncSocket
- {
- // Attributes
- :
- :
- };
- :
- :
- //sms.cpp
- //
- BOOL CSms::SendSMSNow(BOOL isGET)
- {
- char sendBuffer[4096];
- char recvBuffer[4096];
- int ret;
- //자신의 소켓을 Create 한다
- if(Create() == FALSE) return FALSE;
- //서비스 제공사이트의 IP 주소를 80(보통HTTP)포트로 접속한다.
- Connect(m_ServerIP, 80);
- //
- if(isGET == TRUE)
- {
- //해당사이트에서 요구하는 CGI 쿼리 포멧으로 자신의 보내는 내용/번호, 받는 번호를 설정하고 해당사이트에서 전송시 요구하는 아이디와 패스워드를 담는다.
- //즉, 이와 같이 한번의 쿼리에 아이디와 패스워드가 맞고 쿼리가 바를 경우 SMS를 날릴 수 있도록 서비스를 제공해주는 사이트에 미리 가입이 되어 있어야 한다.
- //아래는 nicesms.co.kr 이라는 사이트의 서비스를 예로 들었다.
- sprintf(sendBuffer,"GET %s?%s=%s&%s=%s&%s=%s&%s=%s&%s=%s&%s HTTP/1.0\r\n\r\n",
- m_CGIAddr, m_Param_ID, m_ID, m_Param_PW, m_PW, m_Param_MSG, m_strMessage,
- m_Param_RecvNum, m_strRecvNum, m_Param_SendNum, m_strSendNum,
- m_Param_etc);
- }
- else
- {
- CString strPacket, strContentLength;
- CString strParam;
- strParam.Format("%s=%s&%s=%s&%s=%s&%s=%s&%s=%s&%s",
- m_Param_ID, m_ID, m_Param_PW, m_PW, m_Param_MSG, m_strMessage,
- m_Param_RecvNum, m_strRecvNum, m_Param_SendNum, m_strSendNum,
- m_Param_etc);
- strContentLength.Format("%d",strParam.GetLength());
- strPacket = "POST ";
- strPacket += m_CGIAddr;
- strPacket += " HTTP/1.1\r\n";
- strPacket += "Accept: */*\r\n";
- //strPacket += "Referer: http://" + m_ServerIP + m_CGIAddr + "\r\n";
- strPacket += "Accept-Language: ko\r\n";
- strPacket += "Content-type: application/x-www-form-urlencoded\r\n";
- strPacket += "Accept-Encoding: gzip, deflate\r\n";
- strPacket += "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)\r\n";
- strPacket = strPacket + "Host: " + m_ServerIP + "\r\n";
- strPacket = strPacket + "Content-Length: " + strContentLength + "\r\n";
- strPacket += "Cache-Control: no-cache\r\n";
- strPacket += "Connection: Keep-Alive\r\n";
- strPacket += "\n";
- strPacket += strParam;
- strPacket += "\r\n\r\n";
- sprintf(sendBuffer, strPacket);
- //AfxMessageBox(sendBuffer);
- }
- //AfxMessageBox(sendBuffer);
- Sleep(1500);
- //쿼리를 날린다.
- if(Send(sendBuffer,strlen(sendBuffer),0) <= 0)
- return FALSE;
- //잠시 대기후...
- Sleep(1000);
- memset(recvBuffer,0,sizeof(recvBuffer));
- // 응답 데이터를 수신한다.
- do{
- ret = Receive(recvBuffer,4096,0);
- }while(ret > 0);
- // 수신된 데이터를 파싱하여 송신의 성공 유무를 확인하는 코드를 작성할 수 있을 것이다.
- //recvBuffer[ret] = NULL;
- //AfxMessageBox(recvBuffer);
- // 소켓을 닫는다.
- Close();
- return TRUE;
- }
4. 내 휴대폰을 제어해서 보내기
가지고 있는 휴대폰을 제어해서 보내는 방법 입니다. 휴대폰 데이터 통신 케이블을 가지고 계시다면 한번쯤 자신의 휴대폰에 벨소리나 음악, 여타의 데이터를 넣고, 받기 위해 휴대폰 연동 프로그램을 사용해 보신적이 있으실 겁니다. 그처럼 휴대폰과 직접 연동하는 프로그램을 만들거나 연동하는 방법이 있습니다. 무슨 말이냐 하면, 휴대폰이 데이터 통신 케이블과 연결되면 마치 시리얼 통신을 하듯 COM포트 하나를 열수 있게 제공됩니다. 개발자는 그 COM포트를 열어 데이터를 주고 받을 수 있습니다. 먼 옛날 모뎀으로 채팅할 때 많이 사용했던 "이야기", "잠들지 않는 시간" 등의 프로그램을 통해 썼던 방법으로 자신의 휴대폰을 사용하실 수 있다는 말입니다.
아래는 간단히 윈도우에서 기본으로 제공하는 "하이퍼 터미널"을 이용해 제 휴대폰에서 SMS를 날리는 모습입니다.
단, 아래의 방법은 AT 커맨드를 사용하는 것이며, 제가 알아낸 AT 커맨드는 삼성의 SPH-E3200 단말기에서만 동작했습니다. 그외의 단말기에서는 동작되는 것을 확인하지 못했으며, 이는 모든 사업자, 단말기마다 다르기에 일치하는 커맨드를 찾으시지 못할 경우 유용한 방법이 아닙니다.
A. 먼저 자신의 휴대폰을 위한 드라이버를 설치하셔야 합니다. 해당 방법은 자신의 휴대폰 업체 사이트에 있습니다.
B. 휴대폰에 통신 케이블을 꽂고 PC에도 연결합니다.
C. 내 컴퓨터 -> 속성 -> "하드웨어" 텝 -> "장치 관리자" 버튼을 누릅니다.
D. 리스트 된 항목들 중 아래 그림처럼 "모뎀" -> "SAMSUNG Mobile Modem #2" 를 선택해 마우스의 오른쪽 버튼을 누르면 나오는 컨텍스트 메뉴에서 "속성" 을 클릭합니다. (타사 제품의 경우 다른이름으로 나타나겠죠?)
E. 아래 처럼 나타난 등록정보 다이얼로그에서 "모뎀" 탭을 클릭하면 상단에 "포트"정보가 나타납니다. 이 때 나타는 포트 이름을 기억하세요. 아래는 "COM4" 이군요.
F. Windows 의 "시작" 버튼 -> "보조프로그램" -> "통신" -> "하이퍼 터미널" 을 실행합니다.
G. 아래 그림처럼 묻는 화면에서 지역번호와 외부회선 번호 등을 아무렇게나 넣고 "확인"버튼을 누릅니다.
H. 다음 화면에서도 그냥 "확인" 버튼을 누릅니다.
I. 또 귀찮게 나타나는 다음 화면에서는 아무이름이나 입력하시고 "확인" 버튼을 누릅니다.
J. 그리고 아래와 같은 화면이 나오면 조금전 기억하셨던 COM 포트 이름을 선택합니다.
K. 아래과 같이 등록정보 화면이 나타나면 아래와 같이 설정합니다. "비트/초" 항목과 "흐름제어" 항목만 바꾸시면 될겁니다.
L. 자, 이제 내 휴대폰을 제어할 준비가 끝났습니다. 그 옛날 전화선을 이용해 채팅하던 때를 떠올리시며 "AT"를 입력해 보세요. 그러면 아래와 같이 "OK"가 나올 경우 정상 연결이 된 것입니다.
M. 여기서 문제가 하나 있습니다. 전화를 걸고, 받고, SMS 를 날리는 방법이 사업자마다, 폰마다 방식이 다릅니다. >.< 저역시 겨우 인터넷에서 찾아 나오는 수많은 AT 캐맨드 중에서 삼성폰 - SPH-E3200 에서 통하는 방법을 찾았습니다. 즉,
AT+CDV 전화번호 => 전화걸기
AT+CHV => 전화끊기
이며,
AT#PMODE=1 => 단말기를 PC Link 모드로 변환
AT#PSTRM=보내는번호,받는번호,3,"보내는메시지내용",0,0,0, 4098 => SMS 보내기
AT#PMODE=0 => PC Link 모드에서 빠져나옴
위의 커맨드만 알 뿐입니다. (죄송...^^;)
이 방법을 (RS232C) 시리얼 통신 프로그램을 하신다면 위의 AT 커맨드 문장 뒤에 (CR Carriage Return)만 붙여 COM 포트에 쓰시고, 수신되는 값(OK) 만 확인하도록 한다면 휴대폰으로 SMS 를 보내는 프로그램을 하실 수 있습니다.
5. 하드웨어 구입하기
CDMA 모뎀과 같은 장비를 구입하는 방법이 있습니다. 즉, 위의 4에서 나온 방법으로 SMS를 보낼 수 있도록 만들어진 장비입니다. 시리얼포트등으로 해당 장비에 연결해 장비에서 제공해주는 커맨드를 이용해서 SMS를 보내는 것이죠. 물론, 이는 휴대폰과 비슷하게 가입을 하시고, 요금을 지불하는 것으로 알고 있습니다. 게다가, 프로그램이 쉽도록 각종 라이브러리를 제공해 주는 것으로 알고 있습니다.