×

Discussion Board

Results 1 to 11 of 11

Thread: SMS gateway

  1. #1
    Registered User
    Join Date
    Nov 2009
    Posts
    41

    SMS gateway

    Всем привет!
    Помогите пожалуйста решить проблему.
    Можно ли узнать с какого смс-шлюза пришла смс?
    Программа на основе - http://wiki.forum.nokia.com/index.php/SMS_Utilities_API. Возможен и любой другой подход для перехвата смс, главное чтобы был способ узнать какой смс-шлюз.

  2. #2
    Nokia Developer Moderator
    Join Date
    Jun 2007
    Location
    Moscow, Russia
    Posts
    1,355

    Re: SMS gateway

    Имхо, смс вы всегда получаете от СВОЕГО оператора сотовой связи. От его смс центра. А вот откуда ОН его получил - он может указывать в графе отправитель. Если он эту информацию не указал - то вы ничего не выясните.
    Вам нужно узнать номер СМС центра оператора? См CSmsHeader::ServiceCenterAddress().

  3. #3
    Registered User
    Join Date
    Nov 2009
    Posts
    41

    Re: SMS gateway

    СМС центр оператора не подойдет мне, мне нужно что-то выше стоящее. Что вы имели ввиду под графой отправителя?

  4. #4
    Nokia Developer Moderator
    Join Date
    Jun 2007
    Location
    Moscow, Russia
    Posts
    1,355

    Re: SMS gateway

    Quote Originally Posted by Alekzandr View Post
    Что вы имели ввиду под графой отправителя?
    CSmsHeader::FromAddress()

    В получаемых СМС это заполняет СМС Центр. Обычно, если СМС послана с другого телефона, то известно его IMSI. По IMSI ищется присвоенный тел. номер, проверяется, не включено ли его сокрытие. Если все как обычно - отправляется смс от этого номера. А в случае интернет-шлюза в поле отправитель СМС Центр может написать что угодно. По моему протокол SMPP даже позволяет указать СМС Центру, что именно шлюз хотел бы туда написать.

    Но это все мое личное имхо

  5. #5
    Registered User
    Join Date
    Dec 2005
    Posts
    93

    Re: SMS gateway

    Quote Originally Posted by truf View Post
    Но это все мое личное имхо
    Именно так все и есть. Тот, кто отправляет сообщение, никак не влияет на эти данные. Как заполнить эти поля в сообщении решает СМС-центр оператора и это его добровольное и личное дело. Как он "захочет" - так и будет.

  6. #6
    Registered User
    Join Date
    Nov 2009
    Posts
    41

    Re: SMS gateway

    Спасибо за ответы, я это понимаю, самому подписывать мне не нужно, мне нужно как-то проверить кто был отправитель. То есть если отправитель подпишет смс номером мобильного телефона (а не www....) и отправит смс через свой шлюз - то мне надо в программе увидеть, что отправитель был не мобильный телефон, а нечто другое. То есть номер смс центра не поможет, так как, например, в Мегафоне он почти всегда одинаковый.

  7. #7
    Registered User
    Join Date
    Dec 2005
    Posts
    93

    Re: SMS gateway

    Quote Originally Posted by Alekzandr View Post
    Спасибо за ответы, я это понимаю, самому подписывать мне не нужно, мне нужно как-то проверить кто был отправитель. То есть если отправитель подпишет смс номером мобильного телефона (а не www....) и отправит смс через свой шлюз - то мне надо в программе увидеть, что отправитель был не мобильный телефон, а нечто другое. То есть номер смс центра не поможет, так как, например, в Мегафоне он почти всегда одинаковый.
    Похоже, что не понимаете
    Еще раз: отправитель не может записать в смс свой номер мобильного телефона. Почему? Да потому что он его, просто-напросто, не знает!
    Номер записывает смс-центр оператора, который вычисляет номер отправителя из своей базы, основываясь на данных, которые телефон отправителя отдает сети. А может записать вообще что-то другое. Потенциально всё что угодно. И именно эту информацию об отправителе вы и увидите в итоге. Поэтому всё зависит от смс-центра оператора, а не от отправителя.

  8. #8
    Registered User
    Join Date
    Nov 2009
    Posts
    41

    Re: SMS gateway

    SiNoptik, есть сервис Clickatell (wikipedia). Вы можете подписать смс как угодно. Мне нужно проверять в своей программе - кто был отправитель - подобный сервис или мобильный телефон. На данный момент способа проверки у меня нет. Очень жду наводящих мыслей для решении проблемы.
    Last edited by Alekzandr; 2009-12-16 at 18:52.

  9. #9
    Nokia Developer Moderator
    Join Date
    Jun 2007
    Location
    Moscow, Russia
    Posts
    1,355

    Re: SMS gateway

    Я попробую тыкнуть пальцем в небо. Сравните CSmsPDU::ProtocolIdentifier() сообщений, переданных различным способом.
    Если одинаковые, то есть вариант попроще. СМС содержит поле, сигнализирующие о том, что на него можно ответить. На смс, посланное через интернет, ответить нельзя. Поле, вроде, это:
    CSmsHeader::ReplyPathProvided()

    По всем вопросам о внутренностях СМС рекомендую книжку: Ле-Бодик. Мобильные сообщения. Службы и технологии sms, ems, mms

  10. #10
    Registered User
    Join Date
    Nov 2009
    Posts
    41

    Re: SMS gateway

    truf, спасибо за идеи, но если я всё правильно проверил, то все параметры одинаковые у смс полученных различными путями. К тому же сервис Clickatell предоставляет возможность отвечать на смс.
    Проверял я так:
    Code:
    TBuf<20> s;
    CSmsPDU &pdu = iSmsMessage->SmsPDU(); //iSmsMessage - CSmsMessage
    		
    iConsole.Write(_L("Functions on protocol identifier:\n"));
    s.Num(pdu.PIDType());
    iConsole.Write(_L("PIDType: "));iConsole.Write(s);iConsole.Write(_L("\n"));	
    s.Num(pdu.TelematicDeviceIndicator());
    iConsole.Write(_L("TelematicDeviceIndicator: "));iConsole.Write(s);iConsole.Write(_L("\n"));	
    		
    iConsole.Write(_L("concern ShortMessageType:\n"));
    s.Num(pdu.ShortMessageType());
    iConsole.Write(_L("ShortMessageType: "));iConsole.Write(s);iConsole.Write(_L("\n"));	
    s.Num(pdu.TelematicDeviceType());
    iConsole.Write(_L("TelematicDeviceType: "));iConsole.Write(s);iConsole.Write(_L("\n"));	
    				
    iConsole.Write(_L("Functions on parameter indicator:\n"));
    s.Num(pdu.ProtocolIdentifierPresent());
    iConsole.Write(_L("ProtocolIdentifierPresent: "));iConsole.Write(s);iConsole.Write(_L("\n"));
    и:
    Code:
    TBuf<20> s;
    CSmsHeader& header = iSmsMtm->SmsHeader();  //iSmsMtm - CSmsClientMtm
    			
    s.Num(header.ReplyPathProvided());
    iConsole.Write(_L("\nReplyPathProvided: "));iConsole.Write(s);iConsole.Write(_L("\n"));
    Я новичок в этом деле и вероятно могут быть ошибки, буду рад любым замечаниям.
    Посоветуйте пожалуйста на что ещё можно обратить внимание для разрешения задачи.

  11. #11
    Registered User
    Join Date
    Jan 2011
    Posts
    2

    Re: SMS gateway

    для ответного сообщения лучше использовать 2-way sms gateway , через api

Similar Threads

  1. Sms Gateway
    By yiauko in forum General Messaging
    Replies: 9
    Last Post: 2010-08-04, 02:50
  2. Which is the best SMS Gateway ?
    By arpit2agrawal in forum Mobile Java General
    Replies: 9
    Last Post: 2010-04-21, 12:37
  3. Message from SMS gateway to j2me application
    By prajapati.ajay in forum Mobile Java Networking & Messaging & Security
    Replies: 2
    Last Post: 2009-01-09, 01:48
  4. reading SMS sent by the SMS gateway by specific application in mobile phone
    By amishra in forum Mobile Java Networking & Messaging & Security
    Replies: 2
    Last Post: 2008-08-05, 12:59
  5. SMS / MMS gateway
    By Nokia_Archive in forum General Messaging
    Replies: 1
    Last Post: 2002-05-20, 17:08

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •