11 * |
11 * |
12 * Contributors: |
12 * Contributors: |
13 * |
13 * |
14 * Description: Utility class for conersationengine. |
14 * Description: Utility class for conersationengine. |
15 */ |
15 */ |
|
16 #include <QFile> |
|
17 #include <qversitcontactimporter.h> |
|
18 #include <qversitdocument.h> |
|
19 #include <qversitreader.h> |
|
20 #include <qtcontacts.h> |
|
21 #include <qmobilityglobal.h> |
|
22 #include <senduiconsts.h> |
|
23 |
16 #include "conversationsengineutility.h" |
24 #include "conversationsengineutility.h" |
17 #include "convergedmessage.h" |
25 #include "convergedmessage.h" |
18 #include <senduiconsts.h> |
26 |
|
27 QTM_USE_NAMESPACE |
|
28 |
19 |
29 |
20 //--------------------------------------------------------------- |
30 //--------------------------------------------------------------- |
21 // ConversationsEngineUtility::messageType |
31 // ConversationsEngineUtility::messageType |
22 // @see header |
32 // @see header |
23 //--------------------------------------------------------------- |
33 //--------------------------------------------------------------- |
24 int ConversationsEngineUtility::messageType(TCsType value) |
34 int ConversationsEngineUtility::messageType(TCsType value) |
25 { |
35 { |
26 int mMessageType; |
36 int mMessageType; |
27 switch(value) |
37 switch (value) { |
28 { |
38 case ECsSMS: |
29 case ECsSMS: |
39 mMessageType = ConvergedMessage::Sms; |
30 mMessageType = ConvergedMessage::Sms; |
40 break; |
31 break; |
41 case ECsMMS: |
32 case ECsMMS: |
42 case ECsAudio: |
33 mMessageType = ConvergedMessage::Mms; |
43 mMessageType = ConvergedMessage::Mms; |
34 break; |
44 break; |
35 case ECsBioMsg: |
45 case ECsBioMsg: |
36 mMessageType = ConvergedMessage::BioMsg; |
46 case ECsRingingTone: |
37 break; |
47 case ECsProvisioning: |
38 case ECsBlueTooth: |
48 case ECsBioMsg_VCard: |
39 mMessageType = ConvergedMessage::BT; |
49 case ECsBioMsg_VCal: |
40 break; |
50 mMessageType = ConvergedMessage::BioMsg; |
41 case ECsRingingTone: |
51 break; |
42 mMessageType = ConvergedMessage::RingingTone; |
52 case ECsBlueTooth: |
43 break; |
53 mMessageType = ConvergedMessage::BT; |
44 case ECsProvisioning: |
54 break; |
45 mMessageType = ConvergedMessage::Provisioning; |
55 case ECsMmsNotification: |
46 break; |
56 mMessageType = ConvergedMessage::MmsNotification; |
47 case ECsBioMsg_VCard: |
57 break; |
48 mMessageType = ConvergedMessage::VCard; |
58 default: |
49 break; |
59 mMessageType = ConvergedMessage::None; |
50 case ECsBioMsg_VCal: |
60 break; |
51 mMessageType = ConvergedMessage::VCal; |
61 } |
52 break; |
|
53 default: |
|
54 mMessageType = ConvergedMessage::Sms; |
|
55 break; |
|
56 } |
|
57 return mMessageType; |
62 return mMessageType; |
58 } |
63 } |
59 |
64 |
60 //--------------------------------------------------------------- |
65 //--------------------------------------------------------------- |
61 // ConversationsEngineUtility::mapMsgType |
66 // ConversationsEngineUtility::mapMsgType |
62 // @see header |
67 // @see header |
63 //--------------------------------------------------------------- |
68 //--------------------------------------------------------------- |
64 int ConversationsEngineUtility::messageType(TInt32 value) |
69 int ConversationsEngineUtility::messageType(TInt32 value) |
65 { |
70 { |
66 int type = ConvergedMessage::Sms; |
71 int type; |
67 |
72 switch (value) { |
68 switch(value) |
73 case KSenduiMtmSmsUidValue: |
69 { |
74 type = ConvergedMessage::Sms; |
70 case KSenduiMtmSmsUidValue: |
75 break; |
71 type = ConvergedMessage::Sms; |
76 case KSenduiMtmBtUidValue: |
72 break; |
77 type = ConvergedMessage::BT; |
73 case KSenduiMtmBtUidValue: |
78 break; |
74 type = ConvergedMessage::BT; |
79 case KSenduiMtmMmsUidValue: |
75 break; |
80 type = ConvergedMessage::Mms; |
76 case KSenduiMtmMmsUidValue: |
81 break; |
77 type = ConvergedMessage::Mms; |
82 case KSenduiMtmBioUidValue: |
78 break; |
83 type = ConvergedMessage::BioMsg; |
79 case KSenduiMtmBioUidValue: |
84 break; |
80 type = ConvergedMessage::BioMsg; |
85 default: |
81 break; |
86 type = ConvergedMessage::None; |
82 default: |
87 break; |
83 type =ConvergedMessage::Sms; |
88 } |
84 break; |
89 return type; |
|
90 } |
|
91 |
|
92 //--------------------------------------------------------------- |
|
93 // ConversationsEngineUtility::messageSubType |
|
94 // @see header |
|
95 //--------------------------------------------------------------- |
|
96 int ConversationsEngineUtility::messageSubType(TCsType value) |
|
97 { |
|
98 int messageSubType; |
|
99 switch (value) { |
|
100 case ECsRingingTone: |
|
101 messageSubType = ConvergedMessage::RingingTone; |
|
102 break; |
|
103 case ECsProvisioning: |
|
104 messageSubType = ConvergedMessage::Provisioning; |
|
105 break; |
|
106 case ECsBioMsg_VCard: |
|
107 messageSubType = ConvergedMessage::VCard; |
|
108 break; |
|
109 case ECsBioMsg_VCal: |
|
110 messageSubType = ConvergedMessage::VCal; |
|
111 break; |
|
112 case ECsAudio: |
|
113 messageSubType = ConvergedMessage::Audio; |
|
114 break; |
|
115 default: |
|
116 messageSubType = ConvergedMessage::None; |
|
117 break; |
|
118 } |
|
119 return messageSubType; |
|
120 } |
|
121 |
|
122 //--------------------------------------------------------------- |
|
123 // ConversationsEngineUtility::getVcardDisplayName |
|
124 // @see header |
|
125 //--------------------------------------------------------------- |
|
126 QString ConversationsEngineUtility::getVcardDisplayName(QString filePath) |
|
127 { |
|
128 QString displayName; |
|
129 //open file for parsing |
|
130 QFile file(filePath); |
|
131 if (!file.open(QIODevice::ReadOnly)) { |
|
132 return displayName; |
|
133 } |
|
134 // parse contents |
|
135 QVersitReader reader; |
|
136 reader.setDevice(&file); |
|
137 if (reader.startReading()) { |
|
138 if (reader.waitForFinished()) { |
|
139 QList<QVersitDocument> versitDocuments = reader.results(); |
|
140 // Use the resulting document |
|
141 if (versitDocuments.count() > 0) { |
|
142 QVersitContactImporter importer; |
|
143 QList<QContact> contacts = importer.importContacts(versitDocuments); |
|
144 // get display-name |
|
145 if (contacts.count() > 0) { |
|
146 QContactManager* contactManager = new QContactManager("symbian"); |
|
147 displayName = contactManager->synthesizedDisplayLabel(contacts[0]); |
|
148 delete contactManager; |
|
149 } |
|
150 } |
85 } |
151 } |
86 return (type); |
|
87 } |
152 } |
|
153 file.close(); |
88 |
154 |
|
155 return displayName; |
|
156 } |
89 |
157 |
90 // End of file |
158 // End of file |