d6626d60fc88e5c0af0b950467645076183d3686
[osmocom-bb.git] / include / osmocom / gsm / gsm0480.h
1 #ifndef gsm0480_h
2 #define gsm0480_h
3
4 #include <osmocom/core/msgb.h>
5 #include <osmocom/gsm/protocol/gsm_04_08.h>
6 #include <osmocom/gsm/protocol/gsm_04_80.h>
7
8 #define MAX_LEN_USSD_STRING     31
9
10 struct ussd_request {
11         char text[MAX_LEN_USSD_STRING + 1];
12         uint8_t transaction_id;
13         uint8_t invoke_id;
14 };
15
16 int gsm0480_decode_ussd_request(const struct gsm48_hdr *hdr, uint16_t len,
17                                 struct ussd_request *request);
18
19 struct msgb *gsm0480_create_ussd_resp(uint8_t invoke_id, uint8_t trans_id, const char *text);
20 struct msgb *gsm0480_create_unstructuredSS_Notify(int alertPattern, const char *text);
21 struct msgb *gsm0480_create_notifySS(const char *text);
22
23 int gsm0480_wrap_invoke(struct msgb *msg, int op, int link_id);
24 int gsm0480_wrap_facility(struct msgb *msg);
25
26 #endif