2015-05-13 6 views
0

Я пытаюсь получить входящие сообщения из API на Mandrill, но когда я вызываю метод sendRaw, API выходит из строя с ошибкой, говорящей, что мне нужно указать значение необработанного сообщения. Я полагаю, что SendRaw отправляет сообщение, которое я указываю, вместо того, чтобы возвращать сообщение, которое я запрашиваю?Извлечение входящего сообщения с использованием API Mandrill

static async Task<string> SendRaw(string key)//,string) 
    { 
     string sendRaw = mandrillAPI + "inbound/send-raw.json"; 
     HttpClient client = new HttpClient(); 
     client.BaseAddress = new Uri(sendRaw); 
     HttpResponseMessage response = await client.GetAsync(key); 
     string s = await response.Content.ReadAsStringAsync(); 
     return s; 
    } 

Необработанные сообщение содержание Я пытаюсь получить, так что я не вижу, как я могу поставить его.

Есть ли способ получить сообщения с сервера с помощью API? И если это неправильный способ сказать это ... давайте так выразимся: я создал домен с Mandrill и отправил сообщение в вымышленный почтовый ящик в этом домене. Сервер передал сообщение - я могу перейти на панель мониторинга Mandrill и увидеть вызов API SendRaw для сообщения. Я хотел бы получить сообщение от того, где он когда-либо находится ... независимо от того, находится ли он на серверах Mandrill или был ли он отправлен в мой домен, где мне нужно было что-то прослушивать для отправки, я не знаю. Я очень новичок в этом (около вчера). В любом случае, мне нужно получить это сообщение. Можно ли это сделать с помощью API?

Или Mandrill просто передает сообщение на мой url, когда он изначально отправлен, и мне нужно настроить URL-адрес, чтобы получить сообщение, чтобы получить его?

+0

Какая линия в методе не удается? – Taegost

+0

API-метод ... поэтому я вызываю https://mandrillAPI.com/api/1.0/, и метод «inbound/send-raw.json». Ответ, который я получаю от API, - это «ошибка проверки: вы должны указать значение необработанного сообщения». Я думаю, это означает, что send-raw для буквальной отправки сырого сообщения; но он является входящим/отправленным-сырым, поэтому я думал, что он может отправить сообщение, входящее ... но на самом деле это может быть отправка необработанного сообщения, которое я указываю. В любом случае, я хотел бы как-то получить сообщение, которое я отправил ... – bordeo

+0

В какой строке вы называете «API-метод», на который вы ссылаетесь? Это первая строка (объявление строки), 4-я строка (объявление HttpResponsemessage) или 5-я строка (ответ для чтения)? – Taegost

ответ

1

Невозможно получить входящую почту через API Mandrill. Входящая почта получена Mandrill, преобразована в inbound/send-raw API call, а затем отправлена ​​на веб-сайт, указанный вами для вашего входящего маршрута. Mandrill не сохраняет содержимое сообщения для поиска API. После того, как они будут отправлены на ваш URL веб-ссылки, сообщение будет отброшено. Обратите внимание, что inbound/send-raw отличается от messages/send-raw. Вызов API входящего/отсылаемого сырья позволяет вам подражать тому, что произойдет, если вы отправите сообщение на маршрут, который вы настроили (то есть, POSTing на URL веб-хостинга).

Более подробную информацию о том, как въездной работы почты и webhooks можно найти в Mandrill КБ: https://mandrill.zendesk.com/hc/en-us/categories/200277247-Inbound-Email-Processing

+0

Спасибо. Закончилось перенаправление писем в gmail с использованием маршрута. Хотелось бы надеяться, что эта работа задержит работу с webhook. – bordeo

Смежные вопросы