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 ящика, который использует сервис.
Link
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. |
Возвращает: Код. Бросает исключение, если кода нет.