What is mean "pdpdeact"?

I am currently making firmware for MQTT communication with BG96 module.

My biggest problem is the following message comes in.
Two days after rebooting the modem, the following message is displayed.
+QIURC: “pdpdeact”,1

The current solution is when a QIURC message occurs as follows:
Rebooting the modem.

  1. What causes pdpdeact?
  2. Is the method I solved the right one?

void proc_MqttMsg(mqtt_LM5_type_t *p_mqtt_LM5)
{
char *commandPtr;
char *leftPtr;
const char qmtRecv[] = “+QMTRECV”;
const char qmtStat[] = “+QMTSTAT”;
const char qiURC[] = “+QIURC”;

commandPtr = strtok(p_mqtt_LM5->inputString, ":");
leftPtr = strtok(NULL, ":");

mqtt_inputStringInit(p_mqtt_LM5);

if (strstr(commandPtr, qmtRecv))
{
  // Serial.println("recv Go");
    proc_qmtRecv(p_mqtt_LM5, leftPtr);
}
else if (strstr(commandPtr, qmtStat))
{
  // Serial.println("stat Go");
    proc_qmtStat(p_mqtt_LM5, leftPtr);
}
else if (strstr(commandPtr, qiURC))
{
    // Serial.println("qiurc Go");
    proc_qiURC(p_mqtt_LM5, leftPtr);
}

mqtt_buffInit(p_mqtt_LM5);

}

Pls check, Have you send AT+QIDEACT=1 in you code, If not, pls send email to support@quectel.com , we need modem log for more analysis .