1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
# Bluetooth MAP (Message Service Profile) Service
## Overview
Bluetooth MAP (Message Access Profile) service uses the respective profile support from BlueZ
to enable message notifications from SMS/email/etc.
### Important Notes
Message composition and message access isn't available on iOS devices due to respective security
polices, and in turn isn't supported in Apple's implementation of the (MAP) Message Access Profile.
## Verbs
| Name | Description | JSON Response |
|-------------------|------------------------------------------|-------------------------------------------|
| compose | send message | see **compose verb** section |
| message | display message | see **message verb** section |
| list_messages | list messages in folder | see **list_messages** section |
| subscribe | subscribe to MAP service events | *Request:* {"value": "notification"} |
| unsubscribe | unsubscribe to MAP service events | *Request:* {"value": "notification"} |
## Events
| Name | Description | JSON Event Data |
|-------------------|------------------------------------------|-------------------------------------------|
| notification | report notification message | see **notification event** section |
### compose verb
Send a message (if supported) via MAP profile:
<pre>
{
"recipient": "+13605551212",
"message": "Sounds good. See you then."
}
</pre>
### message verb
Request a message via the respective handle:
<pre>
{
"handle": "message288230376151711769"
}
</pre>
Response:
<pre>
{
"response": {
"status": "UNREAD",
"type": "SMS_GSM",
"folder": "telecom/msg/INBOX",
"sender": {
"tel": "+13605551212"
},
"message": "Meet at Victor 23 at 6p?"
},
</pre>
### list_messages verb
Request a folder listing of messages:
<pre>
{
"folder":"INBOX"
}
</pre>
Response which the message handle as the key and includes its properties:
<pre>
{
"response": {
"message288230376151711769": {
"folder": "/telecom/msg/INBOX",
"subject": "Meet at Victor 23 at 6p?",
"timestamp": "20190614T093341",
"sender": "",
"senderaddress": "+13605551212",
"recipient": "",
"recipientaddress": "",
"type": "sms-gsm",
"size": 24,
"status": "complete",
"priority": false,
"read": false,
"sent": false,
"protected": false
},
...
},
</pre>
### notification event
<pre>
{
"status": "UNREAD",
"type": "SMS_GSM",
"folder": "telecom/msg/inbox",
"sender": {
"fn": "Satoshi Nakamoto",
"n": "Satoshi"
},
"message": "Meet at Victor 23 at 6p?"
}
</pre>
|