<?php
$sample = json_decode('{
    "object": "whatsapp_business_account",
    "entry": [
        {
            "id": "639871912520412",
            "changes": [
                {
                    "value": {
                        "messaging_product": "whatsapp",
                        "metadata": {
                            "display_phone_number": "573053370116",
                            "phone_number_id": "959898150536936"
                        },
                        "contacts": [
                            {
                                "profile": { "name": "Usite" },
                                "wa_id": "573168950803"
                            }
                        ],
                        "messages": [
                            {
                                "from": "573168950803",
                                "id": "wamid.HBgMNTczMTY4OTUwODAzFQIAEhgUM0JDQTEzMDI0MTU1MENBMEFGNzUA",
                                "timestamp": "1769010091",
                                "type": "document",
                                "document": {
                                    "filename": "usuarios_blancos(5).csv",
                                    "mime_type": "text/csv",
                                    "sha256": "id9kq9uEkgJB9OmjciqDCqFLPJmPh5xtWvtdu8U8JRI=",
                                    "id": "1379066300634610",
                                    "url": "https://lookaside.fbsbx.com/whatsapp_business/attachments/?mid=1379066300634610&source=webhook&ext=1769010393&hash=EXAMPLE"
                                }
                            }
                        ]
                    },
                    "field": "messages"
                }
            ]
        }
    ]
}', true);

$message = $sample['entry'][0]['changes'][0]['value']['messages'][0];

$mediaUrl = null; $filename = null; $mimeType = null;

if (isset($message['document'])) {
    $filename = $message['document']['filename'] ?? null;
    $mimeType = $message['document']['mime_type'] ?? null;
    $mediaUrl = $message['document']['url'] ?? ($message['document']['id'] ?? null);
}

echo "Computed mediaUrl: "; var_export($mediaUrl); echo "\n";
echo "Computed filename: "; var_export($filename); echo "\n";
echo "Computed mimeType: "; var_export($mimeType); echo "\n";
