private void SendMessageReceipts()
        {
            if (ViewModels.SettingsPageViewModel.PacketSettingsPartViewModel.SendReceivedReceipt)
            {
                // do not send received receipt for receive receipt messages
                foreach (PacketMessage pktMsg in _packetMessagesReceived)
                {
                    if (pktMsg.Area.Length > 0)                                         // Do not send receipt for bulletins
                    {
                        continue;
                    }

                    try
                    {
                        // Find the Subject line
                        string[] msgLines = pktMsg.MessageBody.Split(new string[] { "\r\n" }, StringSplitOptions.None);
                        for (int i = 0; i < Math.Min(msgLines.Length, 10); i++)
                        {
                            if (msgLines[i].StartsWith("Date:"))
                            {
                                pktMsg.JNOSDate        = DateTime.Parse(msgLines[i].Substring(10, 21));
                                pktMsg.JNOSDateDisplay = $"{pktMsg.JNOSDate.Month:d2}/{pktMsg.JNOSDate.Date:d2}/{pktMsg.JNOSDate.Year - 2000:d2} {pktMsg.JNOSDate.Hour:d2}:{pktMsg.JNOSDate.Minute:d2}";
                            }
                            else if (msgLines[i].StartsWith("From:"))
                            {
                                pktMsg.MessageFrom = msgLines[i].Substring(6);
                            }
                            else if (msgLines[i].StartsWith("To:"))
                            {
                                pktMsg.MessageTo = msgLines[i].Substring(4);
                            }
                            else if (msgLines[i].StartsWith("Subject:"))
                            {
                                if (msgLines[i].Length > 10)
                                {
                                    pktMsg.Subject = msgLines[i].Substring(9);
                                }
                                break;
                            }
                        }

                        if (!pktMsg.Subject.Contains("DELIVERED:") && pktMsg.Area.Length == 0)
                        {
                            PacketMessage receiptMessage = new PacketMessage()
                            {
                                PacFormName   = "SimpleMessage",
                                MessageNumber = ViewModels.SettingsPageViewModel.GetMessageNumberPacket(),
                                BBSName       = _messageBBS,
                                TNCName       = _tncDevice.Name,
                                MessageTo     = pktMsg.MessageFrom,
                                MessageFrom   = ViewModels.SettingsPageViewModel.IdentityPartViewModel.UseTacticalCallsign ? ViewModels.SettingsPageViewModel.IdentityPartViewModel.TacticalCallsign : ViewModels.SettingsPageViewModel.IdentityPartViewModel.UserCallsign,

                                Subject = $"DELIVERED: {pktMsg.Subject}"
                            };
                            FormField[] formFields = new FormField[1];

                            FormField formField = new FormField()
                            {
                                ControlName    = "messageBody",
                                ControlContent = $"!LMI!{pktMsg.MessageNumber}!DR!{pktMsg.ReceivedTime?.ToString("G")}\r\n"
                            };
                            formField.ControlContent += "Your Message\r\n";
                            formField.ControlContent += $"To: {pktMsg.MessageTo}\r\n";
                            formField.ControlContent += $"Subject: {pktMsg.Subject}\r\n";
                            //formField.ControlContent += $"was delivered on {pktMsg.MessageReceiveTime.ToShortDateString()} {pktMsg.MessageReceiveTime.ToShortTimeString()}\r\n";
                            formField.ControlContent += $"was delivered on {pktMsg.ReceivedTime?.ToString("G")}\r\n";
                            formField.ControlContent += $"Recipient's Local Message ID: {pktMsg.MessageNumber}\r\n";
                            formFields[0]             = formField;

                            receiptMessage.FormFieldArray = formFields;
                            MessageControl packetForm = new MessageControl();
                            receiptMessage.MessageBody = packetForm.CreateOutpostData(ref receiptMessage);
                            receiptMessage.CreateFileName();
                            DateTime dateTime = DateTime.Now;
                            receiptMessage.SentTime        = dateTime;
                            receiptMessage.SentTimeDisplay = $"{dateTime.Month:d2}/{dateTime.Day:d2}/{dateTime.Year - 2000:d2} {dateTime.Hour:d2}:{dateTime.Minute:d2}";
                            receiptMessage.MessageSize     = receiptMessage.Size;
                            log.Info(receiptMessage.MessageBody);                               // Disable if not testing
                            //SendMessage(ref receiptMessage);		// Disabled for testing
                            _packetMessagesSent.Add(receiptMessage);
                        }
                    }
                    catch (Exception e)
                    {
                        log.Error("Delivered message exception: ", e);
                        _error = true;
                    }
                }
            }
        }