×

Discussion Board

Results 1 to 3 of 3
  1. #1
    Registered User
    Join Date
    Nov 2005
    Posts
    17

    Question Status Report Problem

    I am using Symbian OS 7.0. I create an sms in raw pdu format and send it out the radio interface with the status report bit set. If I send from a non-symbian phone I get the status report back. If I send from my Symbian phone, I do not get my status report back. However if I send using the messaging app I get a status report. I am assuming since I do not use the mtm I am not getting the status report. I noticed you can create a gsm pdu from a pdu using TGsmSms with the setPDU method or create one using the CSmsSubmit class. Once I have created one of these objects how do I use the mtm to create it in the message store and send it out. All the examples I have seen just set body and destination phone using a TMsvEntry. Please Help.

  2. #2
    Registered User
    Join Date
    Nov 2005
    Posts
    17

    Re: Status Report Problem

    I am trying to write some code to send this using the client mtm, but cannot figure out how to send the message, please help !!!!

    TGsmSms *tgsm = new TGsmSms();
    RFs fileSession;
    CSmsBufferBase *aBuffer = CSmsBuffer::NewL();

    *tgsm->SetPdu(_L8("21000B914180623932F3000011C377BB0C7ABB41C2B0380F0A854221"));
    fileSession.Connect();

    CSmsClientMtm* smsMtm = static_cast<CSmsClientMtm*>(iMtm);
    smsMtm->RestoreServiceAndSettingsL();

    CSmsHeader& header = smsMtm->SmsHeader();
    CSmsSettings& serviceSettings = smsMtm->ServiceSettings();

    CSmsSettings* sendOptions = CSmsSettings::NewL();
    sendOptions->CopyL(serviceSettings);


    CSmsMessage* smsMsg = CSmsMessage::NewL(fileSession, tgsm, aBuffer);
    CSmsHeader* smsHdr = CSmsHeader::NewL(smsMsg);
    header->CopyL(smsHdr);

    // set some set
    sendOptions->SetStatusReportHandling(EMoveReportToInboxVisible);
    sendOptions->SetDelivery(ESmsDeliveryImmediately);

    // put in header
    smsHdr->SetSmsSettingsL(sendOptions);

    // save settings to message store
    CMsvEntry& entry = iMtm->Entry();
    entry.ChangeL(msvEntry);
    iMtm->SaveMessageL();

    // send it out
    ???????


    fileSession.Close();

  3. #3
    Registered User
    Join Date
    Aug 2005
    Posts
    9

    Re: Status Report Problem

    hi, the hereinafter code may be help you:

    RSocketServ sockServ;
    User::LeaveIfError(sockServ.Connect());
    CleanupClosePushL(sockServ);
    RSocket socket;
    User::LeaveIfError(socket.Open(sockServ, KSMSAddrFamily, KSockDatagram, KSMSDatagramProtocol));
    CleanupClosePushL(socket);
    .....
    RSmsSocketWriteStream writestream(socket);
    writestream << *cSmsMessage; // this can Leave!
    writestream.CommitL();

    TRequestStatus status;
    TPckgBuf<TUint> sendBuffer;
    socket.Ioctl(KIoctlSendSmsMessage, status, &sendBuffer, KSolSmsProv);
    User::WaitForRequest(status);
    ......

Similar Threads

  1. About 6230 Bt Problem
    By eerkek in forum Bluetooth Technology
    Replies: 17
    Last Post: 2005-02-08, 12:33
  2. Hanging up status problem
    By sueggelh in forum Symbian
    Replies: 0
    Last Post: 2004-09-14, 11:06
  3. delete sms & status report
    By devindia in forum PC Suite API and PC Connectivity SDK
    Replies: 0
    Last Post: 2004-03-12, 12:04
  4. Status Report handling
    By keypad in forum General Messaging
    Replies: 2
    Last Post: 2004-02-19, 20:19
  5. Short Message Status Report
    By CBraun in forum PC Suite API and PC Connectivity SDK
    Replies: 1
    Last Post: 2003-10-27, 13:29

Posting Permissions

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