
اين سيستم به اين صورت كار ميكند كه صداي ضبطشده از طريق API به AT&T فرستاده ميشود و نتيجه در قالب يك متن برگردانده ميشود. اينكه چه كارهايي با متن بازگشتي انجام شود، به دلخواه برنامهنويس است و ميتواند استفادههاي مختلفي از آن ببرد. از جمله:
- جستجوي وب
- جستجوي متني در نرمافزار
- تبديل Voicemail به متن
- ارسال پيامك
- پرسيدن سوال و دريافت جواب
- كنترل تلويزيون
- و...
API توليدي در محيطهاي مختلفي از جمله HTML5، مايكروسافت، اندرويد و iOS قابل استفاده و پيادهسازي است. از قابليتهاي كليدي اين API ميتوان به SDKهاي هر سيستم عامل و SDK مخصوص HTML5 اشاره كرد. استفاده از اين APIها فقط محدود به سيستم مخابراتي AT&T نيست و ميتواند با هر اپراتوري فعاليت كند.
براي استفاده از اين API، كافي است مواردي را رعايت كنيم. نخست، فرمت فايل صوتي است كه با سرور تبادل ميشود. اين فايل بايد به يكي از دو فرمت زير باشد:
audio/amr (preferred format)
audio/wav
كه بهصورت جزئيتر ميتوان آنها را به صورت زير تنظيم كرد تا بهترين حالت ممكن وجود داشته باشد.
16 bit PCM WAV, single channel,
8 kHz sampling
AMR (narrowband), 12.2 kbit/s, 8 kHz sampling
فايل صوتي بايد كمتر يا مساوي 4 دقيقه باشد.
در حال حاضر، حوزههاي معنايي زير توسط AT&T پشتيباني ميشوند:
Business Search، Web Search، SMS، Voicemail to Text، Question and Answer، UverseEPG
براي تعيين حوزه معنايي بايد آن را در هدر HTTP ارسال كرد.
ارسال فايل به سرور به دو صورت فايلي و استريم انجام ميشود. در حالت فايلي بايد حجم فايل ارسالي در هدر HTTP مشخص شده باشد و در حالت استريم بايد كدك، ميزان هر بسته اطلاعاتي و تعداد آنها مشخص شود.
تبديل ناموفق در اين سيستم با بازگرداندن ارور HTTP 400 انجام ميشود و يكي از اين موارد را در بر ميگيرد:
ـ صدايي دريافت نشده است.
ـ كلمات به اندازه كافي نبود.
ـ كلمات بيش از حد بود.
ـ صدا بسيار آرام بود.
ـ صدا قطع و وصل شده است.
API قادر به تلاش دوباره براي دريافت اطلاعات نيست و اين برنامه است كه بايد تشخيص دهد آيا تمايل به ارسال مجدد فايل دارد يا خير.
در زير نمونهاي از بسته ارسالي از سوي نرمافزار را مشاهده ميكنيد:
POST/rest/1/SpeechToText HTTP/1.1
Host: api.att.com
Authorization: Bearer 38C2399A23999
Accept: application/xml
Content-Length: 5655
Connection: Close
Content-Type: audio/amr
X-SpeechContext: BusinessSearch
متد SpeechToText، تعدادي پارامتر ورودي دارد كه به اين صورت است:
پارامتر Accept كه فرمت اطلاعات را تعيين ميكند. فرمتهاي مجاز، application/json و application/xml هستند.
پارامتر Content-Length، طول فايل صوتي را مشخص ميكند.
پارامتر Content-Type ، فرمت فايل صوتي را مشخص ميكند.
پارامتر Transfer-Encoding، هنگامي كه از روش استريم براي ارسال اطلاعات استفاده شود، كدك فايل صوتي را در خود دارد.
پارامتر X-SpeechContext، حوزه معنايي فايل صوتي را ارسال ميكند. و در نهايت، پارامتر باينري audio data، فايل صوتي را به سرور ارسال ميكند.
جام جم