sms-part: handle CDMA teleservice ID and service category
This commit is contained in:
@@ -48,6 +48,10 @@ struct _MMSmsPart {
|
||||
guint concat_reference;
|
||||
guint concat_max;
|
||||
guint concat_sequence;
|
||||
|
||||
/* CDMA specific */
|
||||
MMSmsCdmaTeleserviceId cdma_teleservice_id;
|
||||
MMSmsCdmaServiceCategory cdma_service_category;
|
||||
};
|
||||
|
||||
void
|
||||
@@ -162,6 +166,11 @@ mm_sms_part_should_concat (MMSmsPart *self)
|
||||
return self->should_concat;
|
||||
}
|
||||
|
||||
PART_GET_FUNC (MMSmsCdmaTeleserviceId, cdma_teleservice_id)
|
||||
PART_SET_FUNC (MMSmsCdmaTeleserviceId, cdma_teleservice_id)
|
||||
PART_GET_FUNC (MMSmsCdmaServiceCategory, cdma_service_category)
|
||||
PART_SET_FUNC (MMSmsCdmaServiceCategory, cdma_service_category)
|
||||
|
||||
MMSmsPart *
|
||||
mm_sms_part_new (guint index,
|
||||
MMSmsPduType pdu_type)
|
||||
@@ -173,6 +182,8 @@ mm_sms_part_new (guint index,
|
||||
sms_part->pdu_type = pdu_type;
|
||||
sms_part->encoding = MM_SMS_ENCODING_UNKNOWN;
|
||||
sms_part->delivery_state = MM_SMS_DELIVERY_STATE_UNKNOWN;
|
||||
sms_part->cdma_teleservice_id = MM_SMS_CDMA_TELESERVICE_ID_UNKNOWN;
|
||||
sms_part->cdma_service_category = MM_SMS_CDMA_SERVICE_CATEGORY_UNKNOWN;
|
||||
sms_part->class = -1;
|
||||
|
||||
return sms_part;
|
||||
|
@@ -116,4 +116,12 @@ void mm_sms_part_set_concat_sequence (MMSmsPart *part,
|
||||
|
||||
gboolean mm_sms_part_should_concat (MMSmsPart *part);
|
||||
|
||||
/* CDMA specific */
|
||||
MMSmsCdmaTeleserviceId mm_sms_part_get_cdma_teleservice_id (MMSmsPart *part);
|
||||
void mm_sms_part_set_cdma_teleservice_id (MMSmsPart *part,
|
||||
MMSmsCdmaTeleserviceId cdma_teleservice_id);
|
||||
MMSmsCdmaServiceCategory mm_sms_part_get_cdma_service_category (MMSmsPart *part);
|
||||
void mm_sms_part_set_cdma_service_category (MMSmsPart *part,
|
||||
MMSmsCdmaServiceCategory cdma_service_category);
|
||||
|
||||
#endif /* MM_SMS_PART_H */
|
||||
|
@@ -1500,8 +1500,8 @@ assemble_sms (MMSms *self,
|
||||
g_byte_array_ref (fulldata)),
|
||||
"smsc", mm_sms_part_get_smsc (sorted_parts[0]),
|
||||
"class", mm_sms_part_get_class (sorted_parts[0]),
|
||||
"teleservice-id", MM_SMS_CDMA_TELESERVICE_ID_UNKNOWN,
|
||||
"service-category", MM_SMS_CDMA_SERVICE_CATEGORY_UNKNOWN,
|
||||
"teleservice-id", mm_sms_part_get_cdma_teleservice_id (sorted_parts[0]),
|
||||
"service-category", mm_sms_part_get_cdma_service_category (sorted_parts[0]),
|
||||
"number", mm_sms_part_get_number (sorted_parts[0]),
|
||||
"validity", (validity_relative ?
|
||||
g_variant_new ("(uv)", MM_SMS_VALIDITY_TYPE_RELATIVE, g_variant_new_uint32 (validity_relative)) :
|
||||
|
Reference in New Issue
Block a user