logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[SIM900] Potwierdzenie wysłania SMS'a w trybie textowym

jousto 15 Kwi 2012 11:39 2717 14
REKLAMA
  • #1 10795696
    jousto
    Poziom 17  
    Szanowni koledzy
    Mam pytanie odnoście modemu SIM900.
    Po wysłaniu SMS'a komendą AT+CMGS modem odpowiada:
    +CMGS:<mr> : gdzie jak opisuje to dokumentacja mr to wartość referencyjna.
    [/code]
    Response
    TA sends message from a TE to the network (SMS-SUBMIT). Message
    reference value <mr> is returned to the TE on successful message delivery.
    [code]

    Kolejne wysłania zwiększają licznik mr o 1.
    Czy ktoś z was wie jaka jest graniczna wartość <mr>?
    I co się stanie po jej przekroczeniu?
    Czy jest możliwe jest zresetowanie?
  • REKLAMA
  • #2 10795772
    mirekk36
    Poziom 42  
    Najczęściej ta wartość jest zapisywana w bajcie a zatem graniczna wartość to 255, potem się licznik przekręca i zaczyna od nowa liczyć - czyli od 0.

    A po co chcesz ją resetować ? nie ma większego sensu.
  • REKLAMA
  • #3 10796923
    jousto
    Poziom 17  
    OK. Faktycznie nie ma sensu jej resetować o ile ona sama się przekręca. Pytanie było z tego powodu że urządzenie będzie wysyłać trochę smsów a nie chciałbym mieć przykrych niespodzianek w trakcie jak będzie ono działać docelowo.
  • REKLAMA
  • #5 11235046
    LosRabinos
    Poziom 10  
    Witam

    Ponieważ mój problem dotyczy modułu SIM900, dlatego podpiąłem się pod ten post.

    Mam taką sytuację, że wysyłam z telefonu komórkowego do modułu SIM900 esemesa np. o treści: "Hello world".
    Następnie w programie do obsługi modułu SIM900 próbuję odczytać tego esemesa komendą AT+CMGR=1 (wiedząc, że esemes jest zapisany na karcie SIM na pozycji 1).

    Przeszukując dokumentację do modułu, jak i strony internetowe znalazłem, że odpowiedź modemu na taką komendę będzie wyglądała mniej więcej tak:

    +CMGR: “REC READ”,”+61xxxxxx”,,”04/08/28,22:26:29+40″
    Hello world

    OK



    Mam wyłączone echo, więc zgodnie z formatem zwracanym przez moduł gsm na początku i końcu wiadomości powinny być znaki <CR><LF>. Poniżej przedstawiam jak ja to widzę:

    <CR><LF>+CMGR: “REC READ”,”+61xxxxxx”,,”04/08/28,22:26:29+40″<CR><LF>
    Hello world<???>

    <CR><LF>OK<CR><LF>


    Moje pytanie jest takie:
    Jakimi znakami zakończona jest sama treść esemesa, tzn. "Hello world" (zaznaczyłem to trzema pytajnikami na powyższym przykładzie)?

    Z góry dziękuję za wszelką pomoc.
    Pozdrawiam.
  • #7 11235279
    LosRabinos
    Poziom 10  
    Dziękuję za odpowiedź.
    Myślałem, że może treść esemesa zakończona jest np. <ctrl+z>, albo np. znakiem pustym lub czymś innym.
    Pozdrawiam
  • #8 11236125
    Konto nie istnieje
    Konto nie istnieje  
  • #9 13940320
    ciko
    Poziom 12  
    Witam.
    Odgrzeje trochę temat.
    Mam problem z wysłaniem SMSa.
    Mam moduł Quectel M10.
    Wipsuje:

    AT+CMGF=1
    OK
    AT+CMGS=+48792480020
    > TEST (tutaj wciskam Ctrl+Z)
    +CMS ERROR: 3518


    Dlaczego wyskakuje mi takie Error?
    Pozdrawiam,
  • #10 13940424
    vania
    Poziom 24  
    ciko napisał:
    Witam.
    Odgrzeje trochę temat.
    Mam problem z wysłaniem SMSa.
    Mam moduł Quectel M10.
    Wipsuje:

    AT+CMGF=1
    OK
    AT+CMGS=+48792480020
    > TEST (tutaj wciskam Ctrl+Z)
    +CMS ERROR: 3518


    Dlaczego wyskakuje mi takie Error?
    Pozdrawiam,


    Spróbuj nr telefonu podać tak: "+48792480020"
  • REKLAMA
  • #11 13940590
    ciko
    Poziom 12  
    Teraz mam Error 3779.
    Więc to nie to.
  • #12 13940704
    vania
    Poziom 24  
    ciko napisał:
    Teraz mam Error 3779.
    Więc to nie to.


    Według tego dokumentu ten kod oznacza "FOTA write data fail" co to jest to nie wiem.
    W tej specyfikacji komend Link tego kodu nie ma.
    Natomiast +CMS ERROR: 3518 oznacza "Invalid parameter".
    spróbuj może jeszcze tak wysłać
    AT+CMGS="+48792480020",145 lub AT+CMGS="48792480020",129
  • #13 13941589
    ciko
    Poziom 12  
    Dzięki.
    Pierwszy sposób działa.
    Przy drugim zawiesił się układ.
    A możesz mi jeszcze napisać dlaczego 145 i co to za parametr?
    Pozdrawiam i dziękuję.
  • #14 13941841
    vania
    Poziom 24  
    ciko napisał:
    Dzięki.
    Pierwszy sposób działa.
    Przy drugim zawiesił się układ.
    A możesz mi jeszcze napisać dlaczego 145 i co to za parametr?
    Pozdrawiam i dziękuję.


    "+CMGS=<da>[,<toda>]<CR>

    <da> GSM 03.40 TP-Destination-Address Address-Value field in
    string format; BCD numbers (or GSM default alphabet
    characters) are converted to characters of the currently
    selected TE character set (specified by +CSCS in TS 07.07);
    type of address given by <toda>
    <toda> GSM 04.11 TP-Destination-Address Type-of-Address octet
    in integer format (when first character of <da> is + (IRA 43)
    default is 145, otherwise default is 129)"


    Ten parametr niby jest opcjonalny, jeśli w nr telefonu pierwszy znak to + to domyślnie jest on przyjmowany na 145 (numeracja międzynarodowa) jśli nie ma + to 129 (numeracja lokalna). Może w Twojej wersja softu ten parametr nie jest opcjonalny.
  • #15 13942890
    ciko
    Poziom 12  
    Dzięki wielkie za pomoc :)
    Pozdrawiam,
REKLAMA