internal static void DoEntrySideJobs(MachinesDTO senderMachine)
        {
            //simule ok
            easyModbusCommunication = new EasyModbusCommunication(senderMachine.IpAddress, 502);
            easyModbusCommunication.WriteToPLC(0, new int[] { 100 });//plcden ye done göndermesi için
            //


            var rd = ReadAsrsPLC(senderMachine);
            var id = easyModbusCommunication.ConvertRegistersToInt(new int[] { rd.MW202, rd.MW203 });


            if (id > 0 && rd.MW200 == (int)Plc_Task.DONESUCCESSFULLY)
            {
                log.Info(id);


                var incomingTask = machineTasksData.GetMachineTaskById(id);
                var prodNotif    = productionNotificationData.GetProductionNotificationById(incomingTask.ProductNotificationId);

                if (!incomingTask.IsCompleted)
                {
                    if (incomingTask.TaskType == (int)TaskType.CTA)
                    {
                        palletsAtAddressesData.InsertPalettesAtAddresses(incomingTask, prodNotif);
                        addressData.AddressesChangeFirstRowInfo(incomingTask.TargetAddress, false, incomingTask.EndTime, Location.WH_IN);
                        machineTasksData.CreateTaskForFirstRowPalette(incomingTask);
                    }
                    else if (incomingTask.TaskType == (int)TaskType.CTB)
                    {
                        buffersData.UpdateBufferWithPalette(incomingTask); //buffer transaction logu tablosu oluşturup tutulmalı mı?
                        machineTasksData.CreateTaskForBufferPalette(incomingTask);
                    }
                    else if (incomingTask.TaskType == (int)TaskType.BTA) //TODO:check
                    {
                        buffersData.UpdateBufferWithOutPalette(incomingTask);
                        palletsAtAddressesData.InsertPalettesAtAddresses(incomingTask, prodNotif);
                        addressData.AddressesChangeFirstRowInfo(incomingTask.TargetAddress, false, incomingTask.EndTime, Location.WH_IN);
                        machineTasksData.CreateTaskForFirstRowPalette(incomingTask);
                    }

                    machineTasksData.UpdateMachineTaskWithPlcCompletedById(id);
                }


                //task ata
                AssignTask(senderMachine);
            }
            else if (rd.MW200 == (int)Plc_Task.DONEWITHERROR) // hata kontrolu
            {
                //yarım iş??
            }
        }