When reading about the Punic Wars, I encountered the part stating that Hannibal was recalled by the Carthaginians when their city was attacked. I'm curious about the logistics of contacting an army in enemy territory in ancient times - Did the Carthaginian leadership gather several messengers and tell them to sail to Italy, track down Hannibal's army and deliver the message? Did the Romans allow this through some diplomatic immunity or would they have killed such messengers if they found them?
Carthage and Hannibal were in contact throughout the war. Hannibal sent his brother Mago back after Cannae to ask for money and reinforcements, both of which Carthage sent and Livy records that Hannibal received them. Hannibal was also aware that Hasdrubal was going to cross into Italy prior to his defeat at the Battle of Metaurus.
The picture which Livy paints is of messengers passing between Hannibal and Carthage despite the Roman navy. Certainly there does not appear to have been any diplomatic immunity and, given the Roman attitude towards negotiation, it seems highly unlikedly. In all likelihood, Carthage and Hannibal sent messengers to each other whenever they had something to say.
Source: Livy, The War with Hannibal
I have answered a similar question some time ago here.
My answer is in line with what others have said in this thread, but it includes that little detail which appears to have been overlooked here so far: how did Hannibal get his army safely from Italy to Carthage after being recalled?