This API is used for communicating with the client. It provides the following functionality for apps:
The API is exclusively provided by the myApps client. The corresponding provider name is "@client".
The API doesn't define any service info.
{
"user": {
"domain": string,
"sip": string,
"guid": string,
"dn": string,
"num": string,
"email": string,
"prefix": {
"intl": string,
"ntl": string,
"subs": string,
"area": string,
"country": string,
"subscriber": string
}
},
"connInfo": {
"up": boolean,
"standby": boolean,
"cur": string,
"pri": string,
"sec": string,
"phys": string
},
"home": [ string ],
"deviceApps": [
{
"name": string,
"title": string,
"deviceapp": string
}
],
"profileApp": string,
"tutorialApp": string,
"standby": boolean,
"lang": string,
"scheme": string,
"launcher": boolean,
"launcherUpdateBuild": string,
"appStoreUrl": string,
"adminSettings": object
}
All messages are JSON objects that have a mandatory attribute "mt" that specifies the message type. Providers must echo the "src" attribute from requests in the corresponding responses.
{
"mt": string,
"src": string
}
Tells the client that the profile picture of the user has changed and shall be reloaded.
{
"mt": "UpdateProfile"
}
Opens an app link within myapps.
{
"mt": "ShowApp",
"app": string
}
Attaches or detaches an app link to the home screen.
{
"mt": "SetAttachedToHome",
"reference": string,
"attached": boolean
}
{
"mt": "SetAttachedToHome",
"link": string,
"attached": boolean
}
Opens an HTML page in the client as a status information. It is only shown, while the originating app is in the background. When the originating app is closed, the client closes all related status informations.
{
"mt": "ShowStatusInfo",
"url": string,
"id": string
}
Closes a status information that has been opened using ShowStatusInfo.
{
"mt": "CloseStatusInfo",
"id": string
}
Starts a presence subscription to a given SIP URI or phone number. The provider will send PresenceUpdated messages until the consume stops the subscription using UnsubscribePresence.
{
"mt": "SubscribePresence",
"sip": string,
"num": string
}
{ mt: "SubscribePresence", sip: "atlantis" }
{ mt: "SubscribePresence", num: "201" }
Closes a presence subscription that was started using SubscribePresence. If no sip
or num
is given, all presence subscriptions of the consumer are closed.
{
"mt": "UnsubscribePresence",
"sip": string,
"num": string
}
{ mt: "UnsubscribePresence", sip: "atlantis" }
{ mt: "UnsubscribePresence", num: "201" }
{ mt: "UnsubscribePresence" }
Starts a dialog subscription to a given SIP URI or phone number. The provider will send DialogInfo messages until the consume stops the subscription using UnsubscribeDialog.
{
"mt": "SubscribeDialog",
"sip": string,
"num": string
}
{ mt: "SubscribeDialog", sip: "atlantis" }
{ mt: "SubscribeDialog", num: "201" }
Closes a dialog subscription that was started using SubscribeDialog. If no sip
or num
is given, all dialog subscriptions of the consumer are closed.
{
"mt": "UnsubscribeDialog",
"sip": string,
"num": string
}
{ mt: "UnsubscribeDialog", sip: "atlantis" }
{ mt: "UnsubscribeDialog", num: "201" }
{ mt: "UnsubscribeDialog" }
An update for a presence subscription that was started using SubscribePresence
.
{
"mt": "PresenceUpdated",
"sip": string,
"num": string,
"up": boolean,
"ep": {
"sip": string,
"num": string,
"dn": string
},
"presence" : [
{
"contact": string,
"activity", string,
"displayNote": string,
"note": string,
"status": string,
"params": object
}
]
}
{
"mt": "PresenceUpdated",
"sip": "atlantis",
"up": true,
"ep": {
"sip": "atlantis",
"dn": "Atlantis",
"num": "201"
},
"presence": [
{
"contact": "calendar:",
"status": "open",
"activity": "",
"note": "Frei bis 26.04.2018, 11:00 (Beschäftigt: Fixes) #free #until:1524733200000 #next-activity:busy #next:41:5:42:5",
"displayNote": "Frei bis 26.4.2018 11:00 (Beschäftigt: Fixes)",
"params": {
"free": "",
"until": 1524733200000,
"next-activity": "busy",
"next": "41:5:42:5"
}
},
{
"contact": "im:",
"status": "closed",
"activity": "",
"displayNote": "",
"params": {}
}
]
}
An update for a dialog subscription that was started using SubscribeDialog
.
{
"mt": "DialogInfo",
"sip": string,
"callId": string,
"confId": string,
"remote": {
"sip": string,
"dn": string,
"num": string,
},
"state": {
"name": string,
"outgoing": boolean,
"hold": boolean
}
}
true
for outgoing calls. false
for incoming calls.true
if the call is put on hold by the monitored endpoint.true
if the call is put on hold by the remote endpoint.true
if the call is waiting.true
if the call is finished. The consumer can remove the call from its local model.{
"mt": "DialogInfo",
"sip": "endeavour",
"callId": "e44379a033ec5a01ebd500903328631a",
"confId": "13d9c5a033ec5a01ead500903328631a",
"remote": {
"sip": "atlantis",
"dn": "Atlantis",
"num": "201"
},
"state": {
"name": "connected",
"outgoing": true,
"hold": true
}
}
The URI format for app links consists of
Example: contacts?id=13#s=doe&d=John%20Doe