2010-03-03 4 views
1

나는 수백 명의 사용자에게 전자 메일을 보내야합니다. 각각은받는 사람에게 맞는 링크를 가지므로 스크립트/코드에서 전자 메일을 생성해야합니다. Notes 개발자가 아니기 때문에 Notes에서이 작업을 수행 할 수 없습니다. C#을 사용하고 SQL 데이터베이스에서 목록을 가져옵니다. 링크 포인트는 Windows 통합 인증을 사용메일에 링크 단추를 삽입하여 Notes 클라이언트로 보낼 수있는 방법은 무엇입니까?

  • 사이트 :

    몇 가지 제약이 있습니다.

  • 보낸 사람이 링크가 텍스트가 아닌 단추가되기를 원합니다. 내가 버튼을 제출하여 양식을 사용하는 경우

    • : 나는 HTML 메일을 만드는 시도했지만 문제가 있었다 7.

  • 받는 사람의 대부분은 로터스 노츠를 실행 링크가 가리키는 동작 인 경우 Notes는 내부 Windows 인증을 사용하기 때문에 실패한 내부 브라우저를 사용하려고합니다.

  • 웹 서버의 이미지를 가리키는 img 태그가있는 href 태그를 사용하는 경우 Notes가 이미지 표시를 거부합니다. 태그가 포함 된 경우 유효한 태그 임에도 불구하고 빨간색 x 상자 만 표시됩니다. 웹 페이지에서.

누구든지이 작업을 수행 할 수 있습니다.

답변

1

마지막으로 작동하는 방법을 발견했습니다. 이메일 자체. 솔루션 here을 찾았습니다. 여기에 중요한 것들을 포함시킬 것입니다.일반 텍스트 버전, HTML 버전과 이미지, 모든 AlternateViews로 consructed :

string imagePath = @"C:\Work\images\clickhere.jpg"; 
AlternateView imageView = new AlternateView(imagePath, MediaTypeNames.Image.Jpeg); 
imageView.ContentId = "uniqueId"; 
imageView.TransferEncoding = TransferEncoding.Base64; 
    : 
//loop to generate the url and send the emails containing 
    AlternateView plainTextView = AlternateView.CreateAlternateViewFromString(
     BuildPlainTextMessage(url), null, "text/plain"); 
    AlternateView htmlView = AlternateView.CreateAlternateViewFromString(
     BuildHtmlMessage(url), null, "text/html"); 
    //set up MailAddress objects called to and from 
     : 
    MailMessage mail = new MailMessage(from, to); 
    mail.Subject = "ACTION REQUIRED: Do this by then or else"; 
    mail.AlternateViews.Add(plainTextView); 
    mail.AlternateViews.Add(htmlView); 
    mail.AlternateViews.Add(imageView); 
    //send mail using SmtpClient as normal 
     : 
//endloop 

BuildHtmlMessage (문자열)와 BuildPlainTextMessage (문자열) 만 포함 된 문자열을 반환

이메일에 대한 세 가지 주요 구성 요소가 있습니다 메시지들. 언젠가, 누군가 다른 사람이 사용하다

sb.AppendLine("<div>"); 
sb.AppendFormat("<a href=\"{0}\" target=\"_blank\">", url); 
sb.Append("<img alt=\"Click here button image\" hspace=0 src=\"cid:uniqueId\" "); 
sb.Append("align=baseline border=0 >"); 
sb.Append("</a>"); 
sb.AppendLine("</div>"); 

희망 : BuildHtmlMessage이가 'URL'에 대한 링크에서 이미지를 표시하기 위해 포함되어 있습니다.

0

당신이 사용하는 링크 (버튼, 텍스트)에 상관없이 Notes 클라이언트가 내부 브라우저를 실행하는 것과 동일한 문제가 발생한다고 생각합니다. 이는 Notes 클라이언트의 환경 설정이며 모든 시스템에서 다를 수 있습니다.

먼저 표준 텍스트 링크를 사용하여 동일한 동작이 있는지 확인합니다. 어쩌면 그것이 어떤 이유로 작동한다면 적어도 해결 방법을 제공 할 수 있습니다.

이미지 관련 문제 - Windows 인증을 사용하여 서버에서 오는 이미지입니까? 공개 이미지가 공개되어 있는지 확인하고 인증을 요구하지 않습니다 (Firefox에서 테스트하고 비밀번호 프롬프트가 표시되지 않으면 안전 함)

나는 싫지만 사용자가 이메일에서 특정 브라우저로 URL을 복사하도록 요청해야 할 수 있습니다. 적어도 그것이 효과가 있다는 것을 알 것입니다.

+0

감사합니다. 나는 원래 AuthN 사이트에 이미지를 넣는 실수를했지만 익명 액세스만으로 다른 사이트로 옮겼습니다. Firefox에서 확인해 보겠습니다. 또한 표준 링크로 전자 메일을 보았습니다. 전자 메일에 직접 URL을 입력하고 Notes에서 링크로 변환 할 수 있도록 허용하여 컴퓨터에서 IE를 열었습니다. – serialhobbyist

0

나는 내부 브라우저에 대한 기본 설정에 동의합니다. 빨간색 x가 표시된 이미지가 표시되지 않을 수도 있습니다. R7에서 사용할 수 있었다면 기억이 나지 않지만 R8에서는 자동으로 원격 이미지를 표시하지 않는 것이 좋습니다. 이것은 보안 기능입니다. 또한 프록시 문제 일 수 있습니다. 인터넷에 연결하기 위해 인터넷 프록시 서버에 로그인해야하고 이미지가 인터넷에있는 경우 ...

+0

모든 것이 내부 용이므로 무언가 잘못 구성하지 않으면 프록시 서버가 문제가되지 않아야합니다. 또한 원격 이미지 아이디어를 확인할 것입니다. – serialhobbyist

0

이이를하지만 내 노트 설정으로 사용자에게 보안 경고를 발생시킵니다 : 답장을

<input type='button' 
     onclick=document.location.href='http://server/path'; 
     value='Click here' 
     id='buttonID' class='button' 
     xstyle='background-color:red;color:white;'/> 
관련 문제