رفتن به محتوا

حساب، واژگان و حافظه

دو دسترسی روی حسابی کار می‌کنند که توکن مال آن است:

  • account:read («دیدن موجودی و تنظیمات» در گروه «حساب»): موجودی، تنظیمات، واژگان و حافظهٔ لُب.
  • account:write («تغییر تنظیمات» در گروه «حساب»): سه تنظیم، واژگان، و ویرایش یا حذف نکته‌های حافظه.

GET /account:

Terminal window
curl https://app.lobbe.ai/api/v1/account \
-H "Authorization: Bearer $LOBBE_TOKEN"
{
"schemaVersion": 1,
"owner": { "type": "user", "id": "USER_ID", "displayName": "Sara" },
"wallet": { "balanceMinutes": 312 },
"settings": {
"speakerNamingMode": "FORCE_ON",
"memoryLearningEnabled": true,
"summaryEmailEnabled": false,
"uiLocale": "fa"
}
}
  • شمارهٔ موبایل و نشانی ایمیل هرگز در پاسخ نیست. displayName نام صاحب حساب است، یا اگر نامی ثبت نشده باشد null: شمارهٔ موبایل هرگز به‌جای آن فرستاده نمی‌شود.
  • wallet.balanceMinutes موجودی به دقیقه است. جلسه‌هایی که رونوشتشان هنوز آماده نشده از آن کم نشده‌اند؛ وقتی دقیقه کم بیاید را ببینید.
  • settings.uiLocale زبان برنامه است. توکن آن را می‌خواند اما نمی‌تواند تغییرش دهد.

PATCH /account/settings سه تنظیم را تغییر می‌دهد، همان‌هایی که در بخش «حساب» برنامه هستند:

فیلد در برنامه مقدارها
speakerNamingMode «نام‌گذاری گوینده‌ها» FORCE_ON («بپرس»)، AUTO («بپرس، ولی منتظر نمان») یا FORCE_OFF («حدس خودکار»)؛ نام‌گذاری گوینده‌ها را ببینید
memoryLearningEnabled «یادگیری از جلسه‌های تازه»، در «حافظهٔ لُب» true یا false. با false فقط یادگیری متوقف می‌شود و نکته‌هایی که از پیش مانده‌اند همچنان به کار می‌روند
summaryEmailEnabled «ارسال خلاصه پس از هر جلسه» true یا false. هر لُب تازه همراه فایل PDF آن به ایمیل صاحب حساب فرستاده می‌شود؛ وقتی دوباره ساخته شود دوباره فرستاده نمی‌شود، و تا وقتی حساب نشانی ایمیلی ندارد هیچ‌چیز فرستاده نمی‌شود (این نشانی فقط در برنامه ثبت می‌شود)
Terminal window
curl -X PATCH https://app.lobbe.ai/api/v1/account/settings \
-H "Authorization: Bearer $LOBBE_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "speakerNamingMode": "AUTO" }'
  • یکی، دو تا یا هر سه را بفرستید. فیلدی که نفرستید مقدارش را نگه می‌دارد.
  • هیچ فیلد دیگری پذیرفته نمی‌شود. بدنه‌ای که فیلد دیگری داشته باشد، از جمله uiLocale، پاسخ 400 VALIDATION می‌گیرد و هیچ‌چیز نوشته نمی‌شود، حتی فیلدهایی که درست بوده‌اند. بدنهٔ خالی هم همین پاسخ را می‌گیرد.
  • پاسخ، کل حساب است، همان‌طور که GET /account می‌دهد.
  • هر جلسه تنظیم نام‌گذاری را وقتی می‌خواند که رونوشتش آماده می‌شود، پس تغییر این تنظیم روی جلسه‌هایی اثر دارد که رونوشتشان پس از آن آماده شود.

بقیهٔ موارد حساب (نام، شمارهٔ موبایل، ایمیل، گذرواژه، نشست‌های ورود، «حذف صدا پس از ساخت لُب» و زبان برنامه) در خود برنامه می‌مانند؛ کارهایی که هیچ توکنی نمی‌تواند بکند را ببینید.

واژگان («واژگان من» در برنامه) نام‌ها و اصطلاح‌هایی است که تبدیل گفتار به متن باید بشناسد: حداکثر ۱۰۰ واژه.

  • GET /account/keyterms آن را به شکل { "schemaVersion": 1, "keyterms": […] } می‌خواند.
  • PUT /account/keyterms آن را جایگزین می‌کند: کل فهرست تازه را بفرستید. برای افزودن یک واژه، فهرست را بخوانید، واژه را به آن اضافه کنید و کل فهرست را دوباره بنویسید.
Terminal window
rm -f keyterms.json new.json
curl -sS --fail-with-body https://app.lobbe.ai/api/v1/account/keyterms \
-H "Authorization: Bearer $LOBBE_TOKEN" -o keyterms.json || cat keyterms.json
jq -e '{ keyterms: ((.keyterms | arrays) + ["Kubernetes"]) }' keyterms.json >new.json &&
curl -sS --fail-with-body -X PUT https://app.lobbe.ai/api/v1/account/keyterms \
-H "Authorization: Bearer $LOBBE_TOKEN" \
-H "Content-Type: application/json" \
-d @new.json

اگر خواندن فهرست شکست بخورد، jq -e فهرستی پیدا نمی‌کند و نوشتن هرگز اجرا نمی‌شود: خواندنِ ناموفق نمی‌تواند فهرست را پاک کند.

  • فاصله‌های دو سر هر واژه حذف می‌شوند و فاصله‌های پشت‌سرهم درون آن به یک فاصله تبدیل می‌شوند.
  • بعد: حداکثر ۱۰۰ واژه؛ هر واژه ۱ تا ۴۹ نویسه و حداکثر ۵ کلمه؛ بدون <، >، {، }، [، ] یا \؛ و هیچ واژه‌ای دو بار.
  • فهرستی که قاعده‌ای را رعایت نکند پاسخ 400 VALIDATION می‌گیرد و هیچ‌چیز نوشته نمی‌شود. message نخستین مشکل را نام می‌برد: empty، too_long، too_many_words، forbidden_chars یا duplicate، یا اگر فهرست بیش از ۱۰۰ واژه داشته باشد، همین را در یک جمله می‌گوید.
  • رونوشت جلسه‌ای که در هیچ سری‌ای نیست با واژگان حساب ساخته می‌شود.
  • جلسه‌ای که در یک سری است اول واژه‌های خود سری را به کار می‌برد، سپس، اگر سری inheritAccountKeyterms: true داشته باشد، واژه‌های حساب را، تا سقف ۱۰۰ واژه در مجموع؛ سری جلسات را ببینید.
  • هر جلسه واژه‌هایی را نگه می‌دارد که با آن فرستاده شد، پس فهرست تازه فقط جلسه‌های بعدی را تغییر می‌دهد.
  • جلسه‌ای که از واژگان استفاده کند هزینهٔ بیشتری دارد. نوشتن فهرست دقیقه‌ای خرج نمی‌کند، اما هر جلسهٔ بعدی که از آن استفاده کند هزینهٔ افزودهٔ واژگان را دارد؛ چه چیزی دقیقه خرج می‌کند را ببینید. جلسه‌ای که با useKeyterms=off فرستاده شود هیچ واژگانی به کار نمی‌برد و این هزینه را هم ندارد.

لُب از جلسه‌هایتان نکته‌هایی یاد می‌گیرد، دربارهٔ خود شما، آدم‌هایی که با آن‌ها جلسه دارید و اصطلاح‌هایتان، و آن‌ها را نگه می‌دارد («حافظهٔ لُب» در برنامه). لُب این نکته‌ها را هنگام نوشتن هر لُب و پاسخ دادن به هر پرسش به‌عنوان زمینه می‌خواند تا نتیجه دقیق‌تر شود.

GET /account/memory:

{
"schemaVersion": 1,
"memoryEnabled": true,
"items": [
{
"id": "ITEM_ID",
"category": "PEOPLE",
"text": "Reza leads the Android team.",
"meetingCount": 4,
"pinned": false
}
]
}
  • category بخشی است که نکته در آن است: ABOUT_YOU («دربارهٔ شما»)، PEOPLE («آدم‌های تکرارشونده») یا TERMS («واژه‌های تخصصی»).
  • meetingCount شمار جلسه‌هایی است که نکته از آن‌ها یاد گرفته شده است.
  • pinned وقتی صاحب حساب، یا یک توکن، نکته را ویرایش کند true می‌شود.
  • تا وقتی حافظه در لُب خاموش است، memoryEnabled برابر false است و items خالی است.
  • PATCH /account/memory/{id} با { "text": "…" } یک نکته را بازنویسی می‌کند و با { "schemaVersion": 1, "item": … } پاسخ می‌دهد. فاصله‌های دو سر متن حذف می‌شوند و متن باید دست‌کم ۱ نویسه و در حد مجاز برنامه برای یک نکته باشد: متن بلندتر پاسخ 400 VALIDATION می‌گیرد. متنی که نکتهٔ دیگری در همان بخش از پیش دارد پاسخ 409 MEMORY_DUPLICATE می‌گیرد.
  • DELETE /account/memory/{id} یک نکته را برای همیشه حذف می‌کند و با { "schemaVersion": 1, "id": "ITEM_ID", "deleted": true } پاسخ می‌دهد. ممکن است جلسه‌ای در آینده آن را دوباره به لُب یاد بدهد.
  • شناسه‌ای که نکته‌ای از شما نیست پاسخ 404 می‌گیرد.
  • تا وقتی حافظه خاموش است، هر دو پاسخ 409 MEMORY_DISABLED می‌گیرند: نوشتن هرگز وانمود نمی‌کند که انجام شده است.
Terminal window
curl -X DELETE https://app.lobbe.ai/api/v1/account/memory/ITEM_ID \
-H "Authorization: Bearer $LOBBE_TOKEN"

برای این‌که لُب نکتهٔ تازه‌ای یاد نگیرد، memoryLearningEnabled را false کنید. این کار جلوی به کار رفتن نکته‌هایی را که از پیش مانده‌اند نمی‌گیرد: برای کنار گذاشتن یک نکته، آن را حذف کنید.