Pop3LowLevelDataSent Event
Occurs when data is sent to the connected socket.

Namespace: MailBee.Pop3Mail
Assembly: MailBee.NET (in MailBee.NET.dll) Version: 12.4 build 677 for .NET 4.5
public event DataTransferEventHandler LowLevelDataSent


Type: MailBeeDataTransferEventHandler

If the transmission channel is encrypted, this event will be raised each time an encrypted chunk of data is successfully sent. Thus, this event can be used to record the data which is actually sent to the network.

The typical use of this property is to calculate the network traffic produced during the POP3 session. SSL encryption increases the length of the transmitted data blocks, thus it's more accurate to calculate traffic by counting the length of data actually transmitted over the network.

If the transmission channel is not encrypted or otherwise scrambled, this property is equivalent to DataSent.

This sample calculates all outgoing traffic to the server during the POP3 session, and prints the result into console.
using System;
using MailBee;
using MailBee.Pop3Mail;
using MailBee.Mime;

class Sample
    // Total bytes sent counter.
    private static int _totalBytes = 0;

    // LowLevelDataSent event handler.
    private static void OnLowLevelDataSent(object sender,
        DataTransferEventArgs e)
        _totalBytes += e.Data.Length;

    // The actual code.
    static void Main(string[] args)
        Pop3 pop = new Pop3();

        // Subscribe to the LowLevelDataSent event.
        pop.LowLevelDataSent += new DataTransferEventHandler(OnLowLevelDataSent);

        // Do something which would produce some network traffic.
        pop.Login("jdoe", "secret");
        MailMessageCollection msgs = pop.DownloadMessageHeaders();

        // Print the total number of bytes previously sent to the server.
        Console.WriteLine(_totalBytes + " bytes sent in all");
See Also