الأخطاء
كل رمز خطأ في حزم الـ SDK: ما الذي حدث، وما العمل حياله.
كل إخفاق في حزم الـ SDK نوع خطأ واحد له رمز ورسالة وجملة واحدة عمّا يجب فعله ورابط إلى مدخله هنا. والرموز نفسها في أندرويد و Apple والويب و C. الرسائل والأسطر التي تبيّن ما العمل مكتوبة بالإنجليزية، حرفيًا كما يطبعها الـ SDK.
26 رمزًا، SDK 3.0.0
invalid_argument
- الرسالة
- Invalid argument: {detail}.
- ما العمل
- Pass a value the API accepts: a context or head name the model lists, a sample rate the SDK can resample, a surah from 1 to 114 with ayahs inside it, a rule name of lower-case letters, digits and underscores.
invalid_key
- الرسالة
- Quran Lab does not accept this key.
- ما العمل
- Copy the key for this app and platform again from sdk.quranlab.ai; a revoked key has to be replaced by a new one there.
- على الجهاز
- إذا أجاب الخادم بأن المفتاح مُبطَل أو غير معروف، يتوقف الـ SDK أيضًا عن تشغيل النموذج ويحذفه من الجهاز. وحين يقبل الخادم مفتاحًا من جديد، يُنزَّل النموذج مرة أخرى كما في التثبيت الأول.
sdk_too_old
- الرسالة
- This key needs SDK {version} or later; this is {sdk}.
- ما العمل
- Upgrade the TajweedFormer SDK to {version} or later (the min_sdk of the server's answer), with the install line of the README.
server_rejected
- الرسالة
- Quran Lab refused this app: {detail}.
- ما العمل
- Check in sdk.quranlab.ai that the key belongs to this app id and platform and that the app is not blocked.
إذا ذكر الرفض أحد هذه الأسباب، بقي رمز الخطأ كما هو، وجاءت الرسالة و«ما العمل» من ذلك السبب.
- السبب
- developer_not_approved
- الرسالة
- The account behind this key has no access to Quran Lab yet (developer_not_approved).
- ما العمل
- Open https://sdk.quranlab.ai/start with the account that owns the key and finish the access request; the key works as soon as access is given.
- على الجهاز
- يتوقف الـ SDK أيضًا عن تشغيل النموذج ويحذفه من الجهاز. وحين يقبل الخادم المفتاح والتطبيق من جديد، يُنزَّل النموذج مرة أخرى كما في التثبيت الأول.
- السبب
- not_a_member
- الرسالة
- The account that made this key is not a member of the workspace that owns the app (not_a_member).
- ما العمل
- Ask an owner of that workspace on sdk.quranlab.ai to add the account, or make a new key from an account that is a member.
- السبب
- key_type_mismatch
- الرسالة
- This key is of the wrong type for this platform (key_type_mismatch).
- ما العمل
- Use an apps key on Android and iOS, a desktop key on macOS, Windows and Linux, and a web key in a browser page; sdk.quranlab.ai makes each of them under the same app.
- على الجهاز
- يتوقف الـ SDK أيضًا عن تشغيل النموذج ويحذفه من الجهاز. وحين يقبل الخادم المفتاح والتطبيق من جديد، يُنزَّل النموذج مرة أخرى كما في التثبيت الأول.
- السبب
- origin_not_allowed
- الرسالة
- This page's origin, {origin}, is not on the key (origin_not_allowed).
- ما العمل
- Add this page's origin (scheme, host and port, for example https://app.example.org) to the key on its page at https://sdk.quranlab.ai/keys.
- على الجهاز
- يتوقف الـ SDK أيضًا عن تشغيل النموذج ويحذفه من الجهاز. وحين يقبل الخادم المفتاح والتطبيق من جديد، يُنزَّل النموذج مرة أخرى كما في التثبيت الأول.
- السبب
- app_not_allowed
- الرسالة
- This key belongs to another app (app_not_allowed).
- ما العمل
- A key works for the first app that used it. Make a key for this app at https://sdk.quranlab.ai/keys, or allow this app's identifier on the key's page.
- على الجهاز
- يتوقف الـ SDK أيضًا عن تشغيل النموذج ويحذفه من الجهاز. وحين يقبل الخادم المفتاح والتطبيق من جديد، يُنزَّل النموذج مرة أخرى كما في التثبيت الأول.
- السبب
- app_blocked
- الرسالة
- Quran Lab does not serve this app at the moment: it is blocked by Quran Lab or paused by its developer (app_blocked).
- ما العمل
- Open the app's page on sdk.quranlab.ai: unpause the app there, or read the reason for the block and write to Quran Lab from the account that owns the app.
- على الجهاز
- يتوقف الـ SDK أيضًا عن تشغيل النموذج ويحذفه من الجهاز. وحين يقبل الخادم المفتاح والتطبيق من جديد، يُنزَّل النموذج مرة أخرى كما في التثبيت الأول.
- السبب
- environment_mismatch
- الرسالة
- This key's environment (development or production) does not match this app (environment_mismatch).
- ما العمل
- Use the development key in the builds you run yourself and the production key in the build you publish; both are on the app's page on sdk.quranlab.ai.
- السبب
- local_needs_development_key
- الرسالة
- This page runs on {origin}, and a production key does not work on a local address (local_needs_development_key).
- ما العمل
- Use this app's development key for local work, with http://localhost:* among its origins (https://sdk.quranlab.ai/keys); keep the production key for the deployed site.
- السبب
- model_attestation_required
- الرسالة
- Quran Lab could not confirm that this is the app as its store delivers it, running on a real device, and does not send it the model (model_attestation_required).
- ما العمل
- Run the app as the store or TestFlight installs it, on a real device: a simulator, an emulator and a changed app or device cannot be confirmed. While you develop, use this app's development key, which is not asked for this.
- السبب
- model_not_allowed
- الرسالة
- Quran Lab does not send model files to this platform at the moment (model_not_allowed).
- ما العمل
- Nothing in the app is wrong. See sdk.quranlab.ai for the state of this platform, or write to Quran Lab from the account that owns the app.
client_exists
- الرسالة
- This process already has a TajweedClient.
- ما العمل
- Keep the first client and reuse it, or close it before making another.
needs_connection
- الرسالة
- The model is not on this device yet.
- ما العمل
- Connect once so the model can be downloaded; call prefetch() at app start so later starts work offline.
network_not_permitted
- الرسالة
- This app is not allowed to use the network.
- ما العمل
- Android: keep the INTERNET permission that the SDK's manifest declares (take out a tools:node="remove" for android.permission.INTERNET). A sandboxed Mac app: turn on Outgoing Connections (Client) under App Sandbox.
download_failed
- الرسالة
- The model download stopped: {detail}.
- ما العمل
- Call model() or prefetch() again when the network is back; the download resumes where it stopped.
storage_full
- الرسالة
- Not enough free space for the model: {needed} bytes needed, {available} free.
- ما العمل
- Free that much space on the device, or call removeModels() to drop model versions that are no longer used.
storage_failed
- الرسالة
- The SDK's folder cannot be read or written: {detail}.
- ما العمل
- Give the client a storage folder the app can write to, and make sure only one process uses it.
model_missing
- الرسالة
- No model here: {detail}.
- ما العمل
- Let client.model() download the model: a model comes from Quran Lab's server through the Client, and a model folder that the Client did not download itself is not opened.
model_invalid
- الرسالة
- The model folder is damaged: {detail}.
- ما العمل
- Call removeModels() and then model() to download the model again.
signature_invalid
- الرسالة
- The model's manifest is not signed by Quran Lab.
- ما العمل
- Use only model files from cdn.quranlab.ai; call removeModels() and then model() to download them again.
checksum_mismatch
- الرسالة
- A model file differs from the manifest: {file}.
- ما العمل
- Call removeModels() and then model() to download the model again; if it repeats, the storage is failing.
model_incompatible
- الرسالة
- This model build does not run on this SDK: {detail}.
- ما العمل
- Upgrade the SDK to the version the message names, or let client.model() pick the build for this SDK instead of opening a folder.
runtime_unsupported
- الرسالة
- The SDK cannot run here: {detail}.
- ما العمل
- Run the app where the SDK is supported: {minimum}.
reference_missing
- الرسالة
- The reference data is not on this device.
- ما العمل
- Call model.reference.fetch() once, with a connection, before asking for units.
session_open
- الرسالة
- This model already has an open session.
- ما العمل
- Finish or cancel the open session before starting the next take.
session_closed
- الرسالة
- The session has ended.
- ما العمل
- Start a new session with model.listen() or model.session() for the next take.
cancelled
- الرسالة
- The take was cancelled.
- ما العمل
- Nothing to fix: cancel() was called, or the app's task was cancelled; start a new session for the next take.
engine_failed
- الرسالة
- The engine failed: {detail}.
- ما العمل
- Call client.diagnose() and send the report to Quran Lab; a new session on the same model can be tried.
microphone_denied
- الرسالة
- The microphone permission was refused.
- ما العمل
- Explain why the app listens and send the learner to the system settings; listen() asks again only where the platform allows it.
interrupted
- الرسالة
- The take ended on an interruption: {detail}.
- ما العمل
- Start a new session when the app has the audio again; what was heard so far is in the last chunk.