3g 동글을 사용하여 AT 명령으로 일본어 SMS 보내기

사전 쓰기



AT 명령에 대해 일본어로 작성된 기사가 거의 없습니다.

최근 Soracom은 AT 명령에 대해 작성되었지만 매우 공부합니다.
앞으로 시작해 보는 분은 매우 도움이 되는 것이 아닐까요.
  • htp // 베아 r미니. 하테나 bぉg. 코 m / 엔 트리 / 아 t 코만 d1

  • 하고 싶은 일



    AT 명령을 사용하여 휴대폰에 일본어(UCS2)로 SMS를 보냅니다.

    이하, 실수 등이 있으면 지적해 주시면 도움이 됩니다.

    환경



    RaspberryPi를 사용합니다.
  • RasbperryPi3
  • $ lsb_release -a
    No LSB modules are available.
    Distributor ID: Raspbian
    Description:    Raspbian GNU/Linux 9.1 (stretch)
    Release:        9.1
    Codename:       stretch
    
  • 3g 동글
  • AK-020 : htps : // 소라코 m. jp / p 로즈 cts / 아 k-020 /
  • Soracom Air Sim : htps : // 소라코 m. jp/p 로즈cts/

  • 모바일
  • HUAWEI P9 lite
  • Android 7.0


  • SMS 보내기



    우선은 보통으로(GSM 7 bit≒Ascii로) SMS를 보냅니다( 참고 ).

    리눅스의 경우 동글을 찔러 /dev/ttyUSB0~3 를 만듭니다.
    이 중 AT 명령을 발행하면 ttyUSB0ttyUSB1가 modem으로 작동하고 있음을 알 수 있습니다.
    어느 쪽을 사용해도 됩니다만, 이번은 ttyUSB1 를 사용합니다.

    예를 들어 screen를 설치하고 다음 명령을 실행합니다.
    이하, >> 는 단말에 입력하는 커멘드, << 는 modem으로부터의 응답을 나타냅니다.
    $ screen /dev/ttyUSB1 115200
    >> AT+CFUN=1
    << OK
    >> AT+CMGF=1
    << OK
    >> AT+CMGS="電話番号"
    > test(Ctrl-z)
    << +CMGS: ***
    <<
    << OK
    

    지났습니다. 좋았어요.


    각 명령은 각각 다음과 같은 의미를 갖습니다.
  • AT+CFUN=1
    modem의 기능 제한에 관한 설정입니다.
    1은 기능 제한을 가득 찼습니다.
  • AT+CMGF=1
    SMS 전송 모드를 설정합니다.
    text mode로 보냅니다.
  • AT+CMGS="전화번호"
    전화 번호로 SMS를 보냅니다.
    > test(Ctrl-z)
    는 test를 입력한 후 Ctrl-z를 입력합니다.

  • 일본어(UCS2)로 SMS 보내기



    USC2 (USC2 ⊂ UTF-16)로 SMS를 보냅니다.
    $ screen /dev/ttyUSB1 115200
    >> AT+CFUN=1
    << OK
    >> AT+CMGF=1
    << OK
    >> AT+CSMP=1,167,0,8
    << OK
    >> AT+CSCS="UCS2"
    << OK
    >> AT+CMGS="電話番号"
    > 3042(Ctrl-z)
    << +CMGS: ***
    <<
    << OK
    

    보냈습니다. 좋았어요.

  • AT+CSMP=1,167,0,8
    SMS 전송 및 저장에 대한 설정입니다.
    UCS2로 전송하는 경우 네 번째 요소가 중요하며 8이어야합니다.
    8이 아니라 24(Flash message)로 하면 지진 속보라든지 긴급 속보적인 메시지의 출방을 합니다( 참고 ).
  • AT+CSCS="UCS2"
    인코딩을 설정합니다.
    모듈에 따라 UCS2를 지원하지 않을 수 있습니다.
    대응하고 있는지는 AT+CSCS=? 로 확인할 수 있습니다.
    AK-020의 경우는 다음과 같은 느낌입니다.
  • AT+CSCS=?
    +CSCS: ("IRA", "GSM", "HEX", "PCCP437", "8859-1", "UCS2", "UCS2_0X81")
    

    이 인코딩의 설정은 수신하는 SMS에도 영향을 미치므로, 하나의 modem으로 SMS를 송수신하는 경우에는 주의합시다.
    GSM 7비트로 설정하려면 8859-1을 설정합니다.
    또한 휴대폰에 따라 표시가 다르지만 UCS2에서 사용할 수 있는 이모티콘도 보낼 수 있습니다.



    참고


  • h tp // w w. sm 그야말로 치온 s. 네 t/
  • h tp // w w. 로 ごぉぺぺ 쇼메. 코m/
  • htps : // 그럼.ぃきぺぢ아. 오 rg/우우키/우니코로 %에 3% 81% 아에모지%에 3% 81% 아에%에 ​​4% B8% 80%에 8%

  • 잡담



    SMS를 보내고 받는 것만이라면 직접 AT 명령을 실행하지 않아도 가무이라는 좋은 도구가 있습니다.
    GPL입니다만 Python등에 라이브러리도 공개되고 있어, 1행의 커멘드로 SMS의 송수신을 실시할 수도 있습니다.
    다만, 여러가지 시도했습니다만 아무래도 UCS2로 SMS를 송신할 수 없었습니다・・・.

    코드에서 사용하고 싶고, 자기 앞에서 매우 간단한 것을 만들었으므로, 좋으면 어서

    좋은 웹페이지 즐겨찾기