Riferimento API

SMS

Legge e invia messaggi SMS/MMS. Richiede l'autorizzazione SMS. Non disponibile nella build di Google Play.

Definizioni di tipo

bash
type Message {
  id: ID!
  body: String!
  address: String!       # phone number
  date: String!          # ISO 8601
  serviceCenter: String!
  read: Boolean!
  threadId: String!
  type: Int!             # 1=inbox 2=sent 3=draft 5=failed
  subscriptionId: Int!
  isMms: Boolean!
  attachments: [MessageAttachment!]!
}

type MessageAttachment {
  path: String!
  contentType: String!
  name: String!
}

type SmsConversation {
  id: String!
  address: String!
  snippet: String!
  date: String!
  messageCount: Int!
  read: Boolean!
}

type SmsCounts {
  inbox: Int!
  sent: Int!
  draft: Int!
  failed: Int!
}

Operazioni

query

sms

Cerca messaggi SMS. Usa una stringa vuota come query per elencarli tutti.

bash
query GetSms($offset: Int!, $limit: Int!, $query: String!) {
  sms(offset: $offset, limit: $limit, query: $query) {
    id body address date read threadId type subscriptionId isMms
    attachments { path contentType name }
  }
}
query

smsCount

Conta i messaggi SMS corrispondenti a una query.

bash
query GetSmsCount($query: String!) {
  smsCount(query: $query)
}
query

smsConversations

Elenca le conversazioni SMS (thread), con paginazione.

bash
query GetSmsConversations($offset: Int!, $limit: Int!, $query: String!) {
  smsConversations(offset: $offset, limit: $limit, query: $query) {
    id address snippet date messageCount read
  }
}
query

smsConversationCount

Conta le conversazioni SMS corrispondenti a una query.

bash
query GetSmsConversationCount($query: String!) {
  smsConversationCount(query: $query)
}
query

smsAllCounts

Restituisce i conteggi di tutte le categorie SMS.

bash
query GetSmsAllCounts {
  smsAllCounts { inbox sent draft failed }
}
query

archivedConversations

Elenca le conversazioni archiviate (nascoste).

bash
query GetArchivedConversations {
  archivedConversations { id address snippet date messageCount read }
}
mutation

sendSms

Invia un SMS. Passa subscriptionId=-1 per usare la SIM predefinita.

bash
mutation SendSms($number: String!, $body: String!, $subscriptionId: Int!) {
  sendSms(number: $number, body: $body, subscriptionId: $subscriptionId)
}
mutation

sendMms

Avvia l'app SMS predefinita precompilata con un MMS (uno o più allegati). Restituisce un id MMS in sospeso; PlainApp esegue il polling dello stato di invio e segnala l'esito tramite eventi WebSocket. attachmentPaths deve puntare a file nell'AppFile store di PlainApp (URI fid:).

bash
mutation SendMms($number: String!, $body: String!, $attachmentPaths: [String!]!, $threadId: String!) {
  sendMms(number: $number, body: $body, attachmentPaths: $attachmentPaths, threadId: $threadId)
}
mutation

archiveConversation

Archivia una conversazione per ID thread e data.

bash
mutation ArchiveConversation($id: String!, $date: Long!) {
  archiveConversation(id: $id, date: $date)
}
mutation

unarchiveConversation

Rimuove una conversazione dall'archivio.

bash
mutation UnarchiveConversation($id: String!) {
  unarchiveConversation(id: $id)
}