Archived:Send SMS using Qt Mobility
jimgilmour1
(Talk | contribs) m (minor spelling) |
|||
| Line 58: | Line 58: | ||
===Source file=== | ===Source file=== | ||
<code cpp> | <code cpp> | ||
| − | // connect | + | // connect messages state-change signal to our slot, to get notification |
connect(&m_MessageServiceAction, SIGNAL(stateChanged(QMessageServiceAction::State)), this, SLOT(messageStateChanged(QMessageServiceAction::State))); | connect(&m_MessageServiceAction, SIGNAL(stateChanged(QMessageServiceAction::State)), this, SLOT(messageStateChanged(QMessageServiceAction::State))); | ||
| Line 78: | Line 78: | ||
void send_sms::messageStateChanged(QMessageServiceAction::State s) { | void send_sms::messageStateChanged(QMessageServiceAction::State s) { | ||
if (s == QMessageServiceAction::Successful) { | if (s == QMessageServiceAction::Successful) { | ||
| − | // message send | + | // message send successful |
} | } | ||
else { | else { | ||
Revision as of 20:03, 26 June 2010
| ID | Creation date | 15th Mar 2010 | |
| Platform | S60 5th Edition, Maemo 5 | Tested on devices | Nokia N97 Mini, Nokia N900 |
| Category | Qt | Subcategory | Qt Mobility API |
| Keywords (APIs, classes, methods, functions): QMessageServiceAction, QMessageId |
Tip: Read this article before moving forward: Setting up environment for Qt Mobility API
Contents |
Overview
The below code shows how to send a SMS using Qt Mobility
Keywords
Project configuration file (.Pro file)
- Add the Qt Mobility project configuration option in the .Pro file as shown below
CONFIG += mobility
MOBILITY += messaging
Using Messaging needs ReadUserData, [[WriteUserData] capabilities from user granted category. It also needs ReadDeviceData and WriteDeviceData capabilities from open signed online category. Read more about Capabilities.
symbian {
TARGET.CAPABILITY = ReadUserData \
WriteUserData \
ReadDeviceData \
WriteDeviceData
}
Headers
#include <qtmessaging.h>
private slots:
void messageStateChanged(QMessageServiceAction::State s);
private:
QMessageServiceAction m_MessageServiceAction;
QMessageId m_sendId;
Source file
// connect messages state-change signal to our slot, to get notification
connect(&m_MessageServiceAction, SIGNAL(stateChanged(QMessageServiceAction::State)), this, SLOT(messageStateChanged(QMessageServiceAction::State)));
void send_sms::QtSendSMSMessage(QString address, QString body) {
// Prepare QMessage with address & body
QMessage message;
message.setType(QMessage::Sms);
message.setTo(QMessageAddress(address, QMessageAddress::Phone));
message.setBody(body);
if (iMessageServiceAction.send(message)) {
sendId = message.id();
}
else {
// message sending failed
}
}
void send_sms::messageStateChanged(QMessageServiceAction::State s) {
if (s == QMessageServiceAction::Successful) {
// message send successful
}
else {
// message sending failed
}
}
Classes
- QMessageServiceAction
- QMessageId
Reference links
- Qt - cross-platform application and UI framework
- Qt Mobility API
- New Qt APIs Beta - Mobility Project
- SDK help
--skumar_rao 02:41, 16 March 2010 (UTC)

