Le Café Central de DeVa
let.us.develop.share.messaging.more... DeVa blogs!!
I changed the way of blogging. Re-designed the site & started using the latest Windows Live Writer 2011!! Additionally added Microsoft Translator gadget available @ top of page, so that you can change the page in your preferred language!!
Hi, I am Deva working with Microsoft Dev. Messaging & Collaboration team.
This blog will assist developers who design/develop custom applications using Microsoft Messaging libraries. I will try to touch base other developer related info too.
Let us talk.develop.messaging.share.more.
Oops!! I'm quite late to talk about this, but it's worthy one.
Do you know about Anywhere access facility and other new features available with Exchange Server 2007?
With Exchange Server 2007, employees get anywhere access* to their e-mail, voice mail, calendars, and contacts from a variety of clients and devices.
Please find this article to know more?
Please find the list of Ports used by Exchange Server:
Ports used by Exchange Server
Protocol
Port
Description
SMTP
TCP: 25
The SMTP service uses TCP port 25.
DNS
TCP/UDP: 53
DNS listens on port 53. Domain controllers use this port.
LSA
TCP: 691
The Microsoft Exchange Routing Engine service (RESvc) listens for routing link state information on this port.
LDAP
TCP/UPD: 389
Lightweight directory access protocol (LDAP) used by Microsoft Active Directory® directory service, Active Directory Connector, and the Microsoft Exchange Server 5.5 directory use this port.
LDAP/SSL
TCP/UDP: 636
LDAP over Secure Sockets Layer (SSL) uses this port.
TCP/UDP: 379
The Site Replication Service (SRS) uses this port.
TCP/UDP: 390
This is the recommended alternate port to configure the Exchange Server 5.5 LDAP protocol when Exchange Server 5.5 is running on an Active Directory domain controller.
TCP: 3268
Global catalog. The Windows 2000 and Windows Server 2003 Active Directory global catalog (a domain controller "role") listens on TCP port 3268.
LDAP/SSLPort
TCP: 3269
Global catalog over SSL. Applications that connect to TCP port 3269 of a global catalog server can transmit and receive SSL encrypted data.
IMAP4
TCP: 143
Internet Message Access Protocol (IMAP) uses this port.
IMAP4/SSL
TCP: 993
IMAP4 over SSL uses this port.
POP3
TCP: 110
Post Office Protocol version 3 (POP3) uses this port.
POP3/SSL
TCP: 995
POP3 over SSL uses this port.
NNTP
TCP: 119
Network News Transfer Protocol (NNTP) uses this port.
NNTP/SSL
TCP: 563
NNTP over SSL uses this port.
HTTP
TCP: 80
HTTP uses this port.
HTTP/SSL
TCP: 443
HTTP over SSL uses this port.
When we execute the SMTP command, we'll receive a reply from the mail server in the form of a three digit number followed by information describing the reply. For example,
250 OK
Please find the list of reply codes from the Server.
211
A system status or help reply.
214
Help Message.
220
The server is ready.
221
The server is ending the conversation.
250
The requested action was completed.
251
The specified user is not local, but the server will forward the mail message.
354
This is a reply to the DATA command. After getting this, start sending the body of the mail message, ending with "\r\n.\r\n."
421
The mail server will be shut down. Save the mail message and try again later.
450
The mailbox that you are trying to reach is busy. Wait a little while and try again.
451
The requested action was not done. Some error occurs in the mail server.
452
The requested action was not done. The mail server ran out of system storage.
500
The last command contained a syntax error or the command line was too long.
501
The parameters or arguments in the last command contained a syntax error.
502
The mail server has not implemented the last command.
503
The last command was sent out of sequence. For example, you might have sent DATA before sending RECV.
504
One of the parameters of the last command has not been implemented by the server.
550
The mailbox that you are trying to reach can't be found or you don't have access rights.
551
The specified user is not local; part of the text of the message will contain a forwarding address.
552
The mailbox that you are trying to reach has run out of space. Store the message and try again tomorrow or in a few days-after the user gets a chance to delete some messages.
553
The mail address that you specified was not syntactically correct.
554
The mail transaction has failed for unknown causes.
Please find the following steps and SMTP commands to test SMTP communication using Telnet on Port 25.
1. At a command prompt, type telnet, and then press ENTER. This command opens the Telnet session.
2. Type set localecho and then press ENTER. This optional command lets you view the characters as you type them. This setting may be required for some SMTP servers.
3. Type set logfile <filename>. This optional command enables logging of the Telnet session to the specified log file. If you only specify a file name, the location of the log file is the current working directory. If you specify a path and a file name, the path must be local to the computer. Both the path and the file name that you specify must be entered in the Microsoft DOS 8.3 format. The path that you specify must already exist. If you specify a log file that doesn't exist, it will be created for you.
4. Type open mail1.fabrikam.com 25 and then press ENTER.
5. Type EHLO contoso.com and then press ENTER.
6. Type MAIL FROM:chris@contoso.com and then press ENTER.
7. Type RCPT TO:kate@fabrikam.com NOTIFY=success,failure and then press ENTER. The optional NOTIFY command defines the particular delivery status notification (DSN) messages that the destination SMTP server must provide to the sender. DSN messages are defined in RFC 1891. In this case, you are requesting a DSN message for successful or failed message delivery.
8. Type DATA and then press ENTER. You will receive a response that resembles the following
354 Start mail input; end with <CLRF>.<CLRF>
9. Type Subject: Test Sampleand then press ENTER.
10. Press ENTER. RFC 2822 requires a blank line between the Subject: header field and the message body.
11. Type This is a test message and then press ENTER.
12. Press ENTER, type a period ( . ) and then press ENTER. You will receive a response that resembles the following:
250 2.6.0 <GUID> Queued mail for delivery
13. To disconnect from the destination SMTP server, type QUIT and then press ENTER. You will receive a response that resembles the following:
221 2.0.0 Service closing transmission channel
14. To close the Telnet session, type quit and then press ENTER.
Please find the list of SMTP commands and its definitions, which can be used on multiple places. For example it can be used to check event SMTP sinks by sending mails.
SMTP commands
SMTP command
Command function
HELO
Sent by a client to identify itself, usually with a domain name.
EHLO
Enables the server to identify its support for Extended Simple Mail Transfer Protocol (ESMTP) commands.
MAIL FROM
Identifies the sender of the message; used in the form MAIL FROM:.
RCPT TO
Identifies the message recipients; used in the form RCPT TO:.
TURN
Allows the client and server to switch roles and send mail in the reverse direction without having to establish a new connection.
ATRN
The ATRN (Authenticated TURN) command optionally takes one or more domains as a parameter. The ATRN command must be rejected if the session has not been authenticated.
SIZE
Provides a mechanism by which the SMTP server can indicate the maximum size message supported. Compliant servers must provide size extensions to indicate the maximum size message that can be accepted. Clients should not send messages that are larger than the size indicated by the server.
ETRN
An extension of SMTP. ETRN is sent by an SMTP server to request that another server send any e-mail messages that it has.
PIPELINING
Provides the ability to send a stream of commands without waiting for a response after each command.
CHUNKING
An ESMTP command that replaces the DATA command. So that the SMTP host does not have to continuously scan for the end of the data, this command sends a BDAT command with an argument that contains the total number of bytes in a message. The receiving server counts the bytes in the message and, when the message size equals the value sent by the BDAT command, the server assumes it has received all of the message data.
DATA
Sent by a client to initiate the transfer of message content.
DSN
An ESMTP command that enables delivery status notifications.
RSET
Nullifies the entire message transaction and resets the buffer.
VRFY
Verifies that a mailbox is available for message delivery; for example, vrfy ted verifies that a mailbox for Ted resides on the local server. This command is off by default in Exchange implementations.
HELP
Returns a list of commands that are supported by the SMTP service.
QUIT
Terminates the session.
The following table lists the extended SMTP commands that Exchange makes available to the SMTP service.
Extended SMTP commands
Extended SMTP command
X-EXPS GSSAPI
A method that is used by Microsoft Exchange Server 2003 and Exchange 2000 Server servers to authenticate.
X-EXPS=LOGIN
A method that is used by Exchange 2000 and Exchange 2003 servers to authenticate.
X-EXCH50
Provides the ability to propagate message properties during server-to-server communication.
X-LINK2STATE
Adds support for link state routing in Exchange.
What is an Offline Address Book?
An offline address book is a container that stores a collection of offline address lists. Administrators configure available offline address books, and Outlook users can choose which offline address lists they want to download.
What is an Offline address list?
An offline address list is a set of address lists in files that are created and stored on an offline address list server. Users who work offline can connect to an Exchange Server computer and download offline address lists to obtain information about other users in the organization. When you create an offline address book, the specified address lists are converted to a separate set of files and stored in a public folder. When users download the offline address book, this data file is used as the source of information. Outlook 2003 uses offline address book to provide offline access to directory information from global address list (GAL) and from other address lists.
How it's getting created?
Where it will be displayed?
What will be the size of Offline address book?
Note: Address book size refers to the size of the compressed offline address book files on the Exchange Server, and not the uncompressed, expanded file size for the offline address book files on the Outlook client.
1: <SCRIPT LANGUAGE="VBScript">
2: Sub ISMTPOnArrival_OnArrival(ByVal Msg, EventStatus)
3: TextDisclaimer = vbCrLf & "DISCLAIMER:" & vbCrLf & "Sample Disclaimer added in a VBScript."
4: HTMLDisclaimer = "<p></p><p>DISCLAIMER:<br>Sample Disclaimer added in a VBScript."
5:
6: If Msg.HTMLBody <> "" Then
7: 'Search for the "</body>" tag and insert our disclaimer before that tag.
8: pos = InStr(1, Msg.HTMLBody, "</body>", vbTextCompare)
9: szPartI = Left(Msg.HTMLBody, pos - 1)
10: szPartII = Right(Msg.HTMLBody, Len(Msg.HTMLBody) - (pos - 1))
11: Msg.HTMLBody = szPartI + HTMLDisclaimer + szPartII
12: End If
13:
14: If Msg.TextBody <> "" Then
15: Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf
16: End If
17:
18: 'Commit the content changes to the transport ADO Stream object.
19: Msg.DataSource.Save ' Commit the changes into the transport Stream
20: EventStatus = cdoRunNextSink
21: End Sub
22: </SCRIPT>
Visual Basic 6.0 sample
Dim TextDisclaimer As StringDim HTMLDisclaimer As StringImplements IEventIsCacheableImplements CDO.ISMTPOnArrivalPrivate Sub IEventIsCacheable_IsCacheable() 'Just returns S_OK.End SubPrivate Sub Class_Initialize() 'TODO: Replace the sample disclaimer text with your own text. TextDisclaimer = vbCrLf & "DISCLAIMER:" & vbCrLf & "Sample Disclaimer Text." HTMLDisclaimer = "<p></p><p>DISCLAIMER:<br>Sample Disclaimer Text"End SubPrivate Sub ISMTPOnArrival_OnArrival(ByVal Msg As CDO.IMessage, EventStatus As CDO.CdoEventStatus) If Msg.HTMLBody <> "" Then Dim szPartI As String Dim szPartII As String Dim pos As Integer 'Search for the "</body>" tag and insert the disclaimer before that tag. pos = InStr(1, Msg.HTMLBody, "</body>", vbTextCompare) szPartI = Left(Msg.HTMLBody, pos - 1) szPartII = Right(Msg.HTMLBody, Len(Msg.HTMLBody) - (pos - 1)) Msg.HTMLBody = szPartI + HTMLDisclaimer + szPartII End If If Msg.TextBody <> "" Then Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf End If 'Commit the content changes to the transport ADO Stream object. Msg.DataSource.Save EventStatus = cdoRunNextSinkEnd Sub
Whenever if we work with event sink, we need to check the event registration, what're the associated items, its item properties and its importance (whether it is required or not)...
Event Registration
To receive event notifications, you must register with Exchange by creating and saving event registration items.
Event Registration items
An item becomes an event registration item when you set the content class of the item to urn:content-class:storeeventreg.
Note: For more information, we can get more details from the Content Classes article.
The following table defines the event properties for an event registration item http://schemas.microsoft.com/exchange/events/ namespace:
Property
Required? Use
Use
* This field is required only if you use a script to handle the event.** This field is used only for the OnTimer event.
Microsoft Entourage:mac
News
Microsoft Office 2004 for Mac 114 update released Tuesday, February 12, 2008. There is no update for Office 2008 at this time. Still a bit early.
Updates
Today i found Amir's couple of blog posts which has information on Office 2008.
How Entourage works
How Does Entourage Work?
Entourage 2008 - New features
Entourage 2008 – New Features Part I Part I describes features for all users.
Entourage 2008 – New Features Part II In Part II, Amir describes features which are exclusive to Entourage 2008 users in an Exchange organization where they are working with other Outlook users.