Написал 13.03.2015 в 13:23 • (Ур. 1)
Ну про то, зачем нужна временная почта рассказывать не буду. Я например использую её в своём софте, для регистраций. Собственно из за этого у меня и возникла идея создания сервиса временной почты, со своим API.
Мыслей и идей много, но хотелось бы услышать пожелания и начать получать багрепорты с самого начала разработки.
На данный момент доступен только 1 почтовый домен, но система уже реализована на выдачу рандомного домена для регистрации почтового ящика. В дальнейшем количество доменов будет значительно увеличено!
Обработаны все возможные ошибки с кодировкой писем, если Вы заметите какие либо баги в этом направлении - сообщайте, будем устранять!
И так, что мы на текущий момент имеем:
1. Создание нового ящика с жизнью на 10 минут
Вызываем API с параметром action, равным new:
Код http://post-shift.ru/api.php?action=new
Получаем ответ от сервера:
Где Reload - ссылка для получения нового ящика.
Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:
Код {"email":"bjlokwva72@post-shift.ru","key":"faf3f53538d0b5a52222ad7ef5040068"}
Где email - наш адрес, а key - ключ, необходимый для дальнейшего доступа к почте.
2. Получение списка писем
Вызываем API с параметром action, равным getlist и ключом key:
Код http://post-shift.ru/api.php?action=getlist&key=faf3f53538d0b5a52222ad7ef5040068
Получаем ответ от сервера со списком писем на почтовом ящике:
Код ID: 1
Тема: Подтверждение регистрации в ICQ?
От: noreply@icq.com
___________
Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:
Код [{"id":1,"subject":" Подтверждение регистрации в ICQ?","from":"noreply@icq.com"}]
Где id - номер нашего письма в ящике, subject - тема письма, from - адрес отправителя.
3. Получение текста письма
Вызываем API с параметром action, равным getmail, ключом key и номером письма (id):
Код http://post-shift.ru/api.php?action=getmail&key=faf3f53538d0b5a52222ad7ef5040068&id=1
В ответ получаем текст сообщения, в том виде, в котором он пришел.
Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:
Где message - содержание письма в ящике, с указанным id.
4. Оставшееся время жизние email'а
Вызываем API с параметром action, равным livetime и ключом key:
Код http://post-shift.ru/api.php?action=livetime&key=faf3f53538d0b5a52222ad7ef5040068
В ответ получим кол-во секунд или сообщение об ошибке, в случае если ящика не существует:
Код {"error":"key_not_found"}
Где error - текст ошибки.
Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:
Код {"key":"faf3f53538d0b5a52222ad7ef5040068","livetime":"479"}
Где key - ключ email'a, а livetime время жизни email'a.
5. Продливаем время жизни на 10 минут
Вызываем API с параметром action, равным update и ключом key:
Код http://post-shift.ru/api.php?action=update&key=faf3f53538d0b5a52222ad7ef5040068
В ответ получим кол-во оставшихся секунд (600) или сообщение об ошибке, в случае если ящика не существует.
Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:
Код {"key":"faf3f53538d0b5a52222ad7ef5040068","livetime":"600"}
Где key - ключ email'a, а livetime новое время жизни email'a.
6. Удаляем использованный email
Вызываем API с параметром action, равным delete и ключом key:
Код http://post-shift.ru/api.php?ction=delete&key=faf3f53538d0b5a52222ad7ef5040068
В ответ получим "OK", если нет ошибок, или сообщение об ошибке.
Если мы укажем дополнительный параметр type=json, то ответ вернется в виде JSON:
Код {"key":"faf3f53538d0b5a52222ad7ef5040068","delete":"ok"}
Где key - ключ email'a, который удалили, а delete содержащее об успешном удалении.
__________________
Что будет добавлено/изменено:
- * Со временем буду добавлять новые почтовые домены
- * Будет добавлена возможность выбора адреса почты и генерация "человеческих" логинов
Хочется услышать ваше мнение ну и протестировать сервис.
Продажа сообществ, аккаунтов в соцсетях
|