Отправить фактическое приглашение на собрание Outlook без использования Outlook
Итак, используя rails/ruby & linux, я хочу иметь возможность отправлять настоящий, аутентичный запрос на встречу в стиле Outlook. Подлинный в том, что он должен вести себя так, как будто приглашение на собрание ведет себя при отправке из Outlook.
Обратите внимание, что я не имею в виду отправку iCal/vCal в качестве вложения в электронное письмо - я уже могу это сделать. Проблема с маршрутом iCal:
- В Outlook вы должны открыть вложение.ics (двойной щелчок), чтобы получить сведения о собрании и принять его.
- Если получатель электронной почты является организатором собрания (электронная почта организатора == электронная почта текущего пользователя), то этот пользователь не может добавить собрание в свой календарь (Outlook предупредительно считает, что, поскольку вы организатор, вы уже знаете об этом)
- На iPhone (я знаю...) электронные письма с прикрепленными ссылками НЕ отображаются в списке полученных вами приглашений. Все присутствующие здесь, кто использует iPhone, ищут в этом списке приглашения, которые им нужно принять, поэтому мои тоже должны появиться там. Приглашения на собрание Outlook отображаются здесь.
Так кто-нибудь знает, как отправить запрос на встречу Outlook с рельсов?
ОБНОВЛЕНИЕ Я думал, что было бы полезно описать то, чего я хочу достичь:
3 человека: James@company.com, Bob@company.com и Alice@company.com
В приложении "Рельсы" Джеймс устраивает встречу с Алисой и приглашает Боба в качестве посетителя. Приложение rails теперь должно отправлять приглашение на собрание (с Джеймсом в качестве организатора) Джеймсу, Алисе и Бобу (в качестве участника), чтобы все трое могли легко добавить это собрание в свой календарь Outlook (на данный момент я не заботиться о снижении / maybes). Кроме того, Боб использует свой iPhone, связанный через ActiveSync с учетной записью Exchnage, так что это должно работать и для него.
ОБНОВЛЕНИЕ 2: Вот содержимое моего файла ics (он прикреплен к электронному письму в формате HTML), который был отправлен по электронной почте james@company.com (организатор) плюс участникам. Каждый должен иметь возможность добавить это в свой календарь:
BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:REQUEST
PRODID:iCalendar-Ruby
BEGIN:VEVENT
ORGANIZER:james@company.co.uk
ATTENDEE:srg@company.co.uk
ATTENDEE:at@company.co.uk
DESCRIPTION:QBR meeting\nWe will discuss the following:\n\nLocal Market\nBusinessPlanning\nProduct Range\nMarketing & Retailing Activity\n
DTEND:20130914T154500Z
DTSTAMP:20130911T140600Z
DTSTART:20130914T134500Z
CLASS:PRIVATE
LAST-MODIFIED:20130911T140600Z
LOCATION:Somewhere in a far off land
SEQUENCE:0
SUMMARY:Meeting with The Wizard
UID:MEETING71
URL:http://internal.company.co.uk/meetings/71
END:VEVENT
END:VCALENDAR
Когда это электронное письмо появляется в моем представлении (james), появляется вложение.ics (в противном случае это обычное письмо в формате HTML). Открывая вложение, мне говорят, что, как организатору собрания, мне не нужно отвечать, и нет опции "принять" или "добавить в календарь"
ОБНОВЛЕНИЕ 3:
Это то, что я сейчас отправляю:
Date: Mon, 16 Sep 2013 16:02:52 +0100
From: app@company.co.uk
To: james@company.co.uk
Message-ID: <52371d9c820c2_475537fe74518a2@rails-devel.mail>
Subject: Meeting with Someone Interesting
Mime-Version: 1.0
Content-Type: text/calendar;
charset=UTF-8;
method=REQUEST;
name='meeting.ics'
Content-Transfer-Encoding: 7bit
BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:iCalendar-Ruby
BEGIN:VEVENT
ATTENDEE:james@company.co.uk
ATTENDEE:sjt@company.co.uk
ATTENDEE:at@company.co.uk
DESCRIPTION:QBR meeting\nWe will discuss the following:\n\nProfit\nProfit &
Loss\n
DTEND:20130913T113000Z
DTSTAMP:20130911T133500Z
DTSTART:20130913T093000Z
CLASS:PRIVATE
LAST-MODIFIED:20130916T150200Z
LOCATION:Someplace
ORGANIZER:james@company.co.uk
SEQUENCE:0
SUMMARY:Meeting with Someone Interesting
UID:MEETING69
URL:http://10.0.0.29:3000/meetings/69
END:VEVENT
END:VCALENDAR
2 ответа
Не отправляйте файл iCal как вложение. Указанные выше данные должны быть единственной частью MIME в сообщении, а тип контента должен быть text/calendar
MIME-Version: 1.0
Subject: test
To: <someuser@dom,ain.demo>
Content-Type: text/calendar;
method=REQUEST;
name="meeting.ics"
BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:REQUEST
PRODID:iCalendar-Ruby
BEGIN:VEVENT
ORGANIZER:james@company.co.uk
ATTENDEE:srg@company.co.uk
ATTENDEE:at@company.co.uk
DESCRIPTION:QBR meeting\nWe will discuss the following:\n\nLocal Market\nBusinessPlanning\nProduct Range\nMarketing & Retailing Activity\n
DTEND:20130914T154500Z
DTSTAMP:20130911T140600Z
DTSTART:20130914T134500Z
CLASS:PRIVATE
LAST-MODIFIED:20130911T140600Z
LOCATION:Somewhere in a far off land
SEQUENCE:0
SUMMARY:Meeting with The Wizard
UID:MEETING71
URL:http://internal.company.co.uk/meetings/71
END:VEVENT
END:VCALENDAR
Все они не работают с файлом ICS, в Outlook один из этих файлов ICS или EML (outlook express) никогда не отправляются в формате MSG (формат outlook), поэтому для преобразования EML в MSG необходим процесс "импорта". "и Outlook есть и то, и другое отлично работает, но в Outlook Express, встреча не существует, и Outlook не может импортировать, потому что не имеют механизма, чтобы сделать это, с другой стороны, ICS не является файлом запроса на встречу Outlook, не является то же самое, вы можете попытаться создать приглашение на собрание и сохранить его в файле с расширением msg, после этого вы увидите, что значок является значком совещания, а когда откроете этот файл, он покажет вам приглашение на собрание Outlook.
Вам нужно создать формат приглашения на собрание Outlook и отправить его в сеть Outlook, если вы хотите, чтобы он работал так, как вы хотите.