TempMail

class · пространство имён z3n7.Api · исходник Mail/TempMail.cs

public class TempMail

Клиент сервиса Temp Mail (Privatix) на RapidAPI. Id ящика — MD5 адреса; хранится в tempMailId.

Конструкторы

TempMail

public TempMail(IZennoPosterProjectModel project, string apikey, bool log = false, bool useNetHttp = false, string proxy = "")

исходник

Создаёт клиент.

Параметр Описание
apikey Ключ RapidAPI; обязателен.
log Писать запросы и ответы в лог.
useNetHttp Отправлять запросы через NetHttp, а не через HTTP-клиент ZennoPoster.
proxy Прокси в формате Rqst; пусто — без прокси.

Методы

CreateAddress

public static string CreateAddress(string login, string domain)

исходник

Склеивает логин и домен в адрес.

GetDomains

public string[] GetDomains()

исходник

Домены, которые предлагает сервис.

Возвращает: Бросает исключение, если список пуст.

GetHrefs

public HashSet<string> GetHrefs(int deadline = 120)

исходник

Ждёт письмо и собирает ссылки из его HTML, пропуская якоря, mailto:, tel:, javascript:, data: и ссылки на картинки, стили, скрипты и шрифты.

Параметр Описание
deadline Сколько секунд ждать; потом TimeoutException.

GetMail

public string GetMail(int deadline = 120)

исходник

Ждёт письмо, проверяя каждые 5 секунд.

Параметр Описание
deadline Сколько секунд ждать; потом TimeoutException.

Возвращает: JSON первого письма.

GetMessages

public string GetMessages()

исходник

Текущие письма ящика из tempMailId (иначе из mailId), без ожидания.

Возвращает: Сырой ответ в JSON. Бросает исключение, если ящик не создан.

HashEmail

public static string HashEmail(string email)

исходник

MD5 адреса в нижнем регистре, в hex: id ящика, который использует сервис.

public string Link(string urlPattern, int deadline = 120)

исходник

Ждёт письмо и возвращает первое совпадение urlPattern в его JSON с декодированием HTML.

Параметр Описание
urlPattern Регулярное выражение.
deadline Сколько секунд ждать; потом TimeoutException.

Возвращает: Совпадение. Бросает исключение, если совпадения нет.

NewMail

public string[] NewMail(string login = null, string domain = null)

исходник

Строит адрес на домене сервиса; запроса на создание нет, сервис принимает почту на любой логин. Сохраняет id в tempMailId и mailId, адрес — в email и project.Profile.Email.

Параметр Описание
login Локальная часть; если пусто — 10 случайных hex-символов.
domain Домен; если пусто — случайный домен сервиса.

Возвращает: [md5, email].

Otp

public string Otp(int deadline = 120)

исходник

Ждёт письмо и возвращает первое 6-значное число из темы, иначе из текста.

Параметр Описание
deadline Сколько секунд ждать; потом TimeoutException.

Возвращает: Код. Бросает исключение, если кода нет.