לאחר שעות של ניסיונות להבין פשר בעיה בהעלאת קבצים למערכת, ראיתי:
שאם בעת העלאת קובץ - שולחים: convertAudio=1
[המרת הקובץ] זה עובד טוב.
אבל אם שולחים: convertAudio=0
[לא להמיר] זה מחזיר שגיאה 110
שה"נתיב אינו חוקי".
מאידך, בקבצים גדולים [ששם מחלקים את הקובץ ושולחים פקודת חיבור בסוף], שם לא ראיתי את הבעיה הזאת
האם זה אכן באג? או שרק אצלי הבעיה?
את הקובץ אני מוריד ממערכת של ימות, כך שלא היה אמור להיות בעיה של חוסר המרה, חוץ מזה שהודעת השגיאה היא על נתיב לא חוקי.
<?php
// הגדרת שם הקובץ הזמני
$tempFilePath = 'temp';
// הורדת קובץ
$downloadUrl = "http://online.XX/XX.wav";
if (!copy($downloadUrl, $tempFilePath)) {
echo "noop&שגיאת הורדה";
exit;
}
$uploadUrl = "https://www.call2all.co.il/ym/api/UploadFile?token=XXXXXX&path=ivr2:4/&convertAudio=1&autoNumbering=true&";
// הכנת נתוני הקובץ
$data = [
'file' => curl_file_create($tempFilePath, 'audio/mpeg', $tempFilePath),
];
$ch = curl_init($uploadUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
curl_close($ch);