diff options
Diffstat (limited to 'src/mm-modem-gsm-ussd.h')
-rw-r--r-- | src/mm-modem-gsm-ussd.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/mm-modem-gsm-ussd.h b/src/mm-modem-gsm-ussd.h index c8f652b..04d2be8 100644 --- a/src/mm-modem-gsm-ussd.h +++ b/src/mm-modem-gsm-ussd.h @@ -54,6 +54,14 @@ struct _MMModemGsmUssd { void (*cancel) (MMModemGsmUssd *modem, MMModemFn callback, gpointer user_data); + + gchar* (*encode) (MMModemGsmUssd *modem, + const char* command, + guint *scheme); + + gchar* (*decode) (MMModemGsmUssd *modem, + const char* command, + guint scheme); }; GType mm_modem_gsm_ussd_get_type (void); @@ -72,4 +80,16 @@ void mm_modem_gsm_ussd_cancel (MMModemGsmUssd *self, MMModemFn callback, gpointer user_data); +/* CBS data coding scheme - 3GPP TS 23.038 */ +#define MM_MODEM_GSM_USSD_SCHEME_7BIT 0b00001111; +#define MM_MODEM_GSM_USSD_SCHEME_UCS2 0b01001000; + +char *mm_modem_gsm_ussd_encode (MMModemGsmUssd *self, + const char* command, + guint *scheme); + +char *mm_modem_gsm_ussd_decode (MMModemGsmUssd *self, + const char* reply, + guint scheme); + #endif /* MM_MODEM_GSM_USSD_H */ |