status-go/services/mailservers
Ivan Belyakov 2df9df10ab fix(tests): moved test db setup to a common place 't/helpers', created
interface for initializing db, which is implemented for appdatabase and
walletdatabase. TBD for multiaccounts DB.
Unified DB initializion for all tests using helpers and new interface.
Reduced sqlcipher kdf iterations for all tests to 1.
2023-08-18 09:00:56 +02:00
..
README.md remove eth.beta fleet as it has been decomissioned 2020-02-21 14:48:47 +01:00
api.go Clean topics that we don't listen to 2021-01-26 09:39:57 +01:00
api_test.go fix(tests): moved test db setup to a common place 't/helpers', created 2023-08-18 09:00:56 +02:00
database.go fix: dropping peer in mailserver cycle 2023-01-18 09:28:08 -04:00
fleet.go fix: ping dns4 multiaddresses (#2678) 2022-05-19 10:23:25 -04:00
service.go Fix some tests and restore private/public RPC client 2021-07-20 10:57:38 +02:00
tcp_ping.go fix: ping dns4 multiaddresses (#2678) 2022-05-19 10:23:25 -04:00

README.md

Mailservers Service

Mailservers service provides read/write API for Mailserver object which stores details about user's mailservers.

To enable this service, include mailservers in APIModules:

{
  "MailserversConfig": {
    "Enabled": true
  },
  "APIModules": "mailservers"
}

API

Enabling service will expose three additional methods:

mailservers_addMailserver

Stores Mailserver in the database.

{
    "id": "1",
    "name": "my mailserver",
    "address": "enode://...",
    "password": "some-pass",
    "fleet": "prod"
}

mailservers_getMailservers

Reads all saved mailservers.

mailservers_deleteMailserver

Deletes a mailserver specified by an ID.

Mailserver requests gap service

Mailserver request gaps service provides read/write API for MailserverRequestGap object which stores details about the gaps between mailserver requests.

API

The service exposes four methods

mailserverrequestgaps_addMailserverRequestGaps

Stores MailserverRequestGap in the database. All fields are specified below:

{
  "id": "1",
  "chatId": "chat-id",
  "from": 1,
  "to": 2
}

mailservers_getMailserverRequestGaps

Reads all saved mailserver request gaps by chatID.

mailservers_deleteMailserverRequestGaps

Deletes all MailserverRequestGaps specified by IDs.

mailservers_deleteMailserverRequestGapsByChatID

Deletes all MailserverRequestGaps specified by chatID.

mailservers_addMailserverTopic

Stores MailserverTopic in the database.

{
    "topic": "topic-as-string",
    "chat-ids": ["a", "list", "of", "chatIDs"],
    "last-request": 1
}

mailservers_getMailserverTopics

Reads all saved mailserver topics.

mailservers_deleteMailserverTopic

Deletes a mailserver topic using topic as an identifier.

mailservers_addChatRequestRange

Stores ChatRequestRange in the database.

{
    "chat-id": "chat-id-001",
    "lowest-request-from": 1567693421154,
    "highest-request-to": 1567693576779 
}

mailservers_getChatRequestRanges

Reads all saved chat request ranges.

mailservers_deleteChatRequestRange

Deletes a chat request range by chat-id.