Amazon Q Embedding Developer Business intelligence Service
Masharti
- Akaunti ya AWS ambayo QuickSight Q imewezeshwa
- Angalau Mada moja imewekwa kwa QuickSight Q (na kitambulisho cha mada hiyo)
- Usanidi wa mfumo wa upachikaji wa kipindi cha QuickSight na akaunti ya AWS
- Warsha kwa hili: https://learnquicksight.workshop.aws/en/session-embedding.html
- Hakikisha kuwa umeruhusu kuorodhesha kikoa chako katika ukurasa wa Dhibiti QuickSight
Kuamua Mada ya Kuonyesha
Upachikaji wa QuickSight Q huauni hali mbili tofauti za utumiaji kuhusu mada. Ya kwanza ni wakati mada moja itabainishwa, na ni mada hiyo pekee inayoweza kuulizwa maswali kupitia upau wa kutafutia. Ya pili ni matumizi ya kawaida ndani ya programu ya QuickSight, ambapo mtumiaji ana orodha ya mada na anaweza kutumia menyu kunjuzi katika upau wa kutafutia kuchagua mada ambayo angependa kuuliza dhidi yake. Kabla ya kuendelea, hakikisha unajua ikiwa kesi yako ya utumiaji inahitaji mada moja, au orodha ya mada katika utumiaji uliopachikwa.
Kikoa cha Kuruhusu
Kulingana na miongozo ya upachikaji wa QuickSight, utagundua unahitaji kuorodhesha kikoa cha programu yako katika ukurasa wa `Dhibiti QuickSight'. Kwa kawaida, haya ndiyo tu unayohitaji kufanya, lakini kwa upande wa Q tutahitaji pia kuongeza kikoa cha QuickSight kwenye orodha ya wanaoruhusiwa. Hii inaonekana kuwa ya ajabu, lakini kwa kuwa chini ya kifuniko Q pia inatumia iframe, tunahitaji, angalau kwa sasa, kuorodhesha kikoa `sawa'. Kikoa cha QuickSight unachohitaji ili orodha ya ruhusa kinategemea eneo unalotumia. Kwa mfanoample, kupachika kwa kutumia eneo la `us-east-1′, letu URL kwa orodha ya ruhusa itakuwa:
https://us-east-1.quicksight.aws.amazon.com
The URL itakuwa vivyo hivyo kwa mikoa mingine, huku sehemu husika ya kikanda (us-mashariki-1) ikibadilishwa.
Inazalisha kipindi kipya URL
Kwanza sehemu ya mfumo wa upachikaji unaozalisha kipindi URL kupitia getSessionEmbedURL API inahitaji kurekebishwa kidogo. Upachikaji wa kipindi cha QuickSight Q unatumika katika `eneo la kuingilia' tofauti na matumizi ya kawaida ya dashibodi iliyopachikwa. Hati za API hii zinaweza kuwa kupatikana hapa. Kigezo cha mahali pa kuingilia kwa simu hii ya API kitahitaji kubadilishwa - mahali mpya pa kuingilia inategemea matumizi ya mada. Kwa kesi ya mada moja:
entry-point = /q/search/<topicId>
Ili kuonyesha mada zote katika kiteuzi, tutaacha mada ya Kitambulisho:
entry-point = /q/search
Hii inapaswa kutoa uthibitisho wa wakati mmoja URL ambayo itatoa ukurasa na upau wa utafutaji wa QuickSight Q pekee.
Kwa kutumia JS SDK kupachika
Pamoja na URL, tunaweza kutumia QuickSight Embedding Javascript SDK ili kupachika upau wa utafutaji wa Q katika programu. Kwanza, hakikisha kuwa unayo nakala ya SDK kutoka kwa timu ya QuickSight - kumbuka kwani hii ni mapemaview kipengele na bado hakijatolewa, SDK itakuwa toleo tofauti na linalopatikana kwa umma SDK kwenye github. Tutataka kutumia mbinu ya EmbedSession kutoka SDK na kipindi kilichoundwa URL. Chaguo zinazofaa za chaguo za kukokotoa za embedSession ni (pia zinapatikana katika type.js katika SDK):
url: url of the session or dashboard to embed container: parent html element or query selector string errorCallback: callback when error occurs loadCallback: callback when visualization data load complete className: optional className to be given to iframe element isQEmbedded: embeddable object is Q search bar flag maxHeightForQ: height for Q to resize to when it expands onQBarOpenCallback: optional callback for Q search bar open onQBarCloseCallback: optional callback for Q search bar close
Hoja mbili zinazohitajika hapa ni url na chombo. Tutatumia URL imetolewa kutoka getSessionEmbedURL Simu ya API, na kwa kontena hii inategemea programu yako. Utataka angalau rahisi kama `chombo' cha iframe iliyopachikwa; toa chombo hiki kitambulisho na upitishe kitambulisho katika hoja za SDK. Kipindi chaguo-msingi cha kupachika simu, makosaCallback na loadCallback fanya kama jina linavyoweza kupendekeza - ikiwa
unahitaji tabia maalum wakati ukurasa uliopachikwa unapopakia, au unapokumbana na hitilafu, bainisha mantiki hiyo katika virudishio hivi. Unapotumia hali iliyopachikwa ya Q na SDK, iframe itakuwa urefu usiobadilika (urefu wa upau wa kutafutia yenyewe) na upana wa 100% wa kontena kuu la HTML. Hii ina maana kwamba upau wa utafutaji utakuwa tu upana kama chombo; utataka kuhakikisha kuwa upau wa kutafutia una angalau 600px ya upana (ikiwa imetafsiriwa kutoka view-upana/asilimiatage au kupewa moja kwa moja). Kwa mtindo wa iframe, kigezo cha Jina la darasa kinaweza kubainishwa kwa hiari pia.
MUHIMU:
Wito muhimu hapa ni kuhakikisha kuwa au kijenzi unachopitisha kwani kipengele cha html cha kontena kina muundo wa `nafasi: kabisa'. Hili ndilo linaloruhusu upau wa kutafutia kupanuka kama wekeleo badala ya kuhamisha maudhui ya programu yako chini.
Mabadiliko ya Upachikaji wa QuickSight Q
Kuna tofauti chache muhimu kati ya upachikaji wa kipindi/dashibodi na upachikaji wa upau wa utafutaji wa Q (ingawa kwa sasa upachikaji wa Q hutumia upachikaji wa kipindi). Kwa dashibodi na upachikaji wa kipindi, fremu kwa ujumla huwa na ukubwa mmoja, ikizuia kubadilisha ukubwa kulingana na ukubwa wa dashibodi au laha ya uchanganuzi. Ukiwa na Q, mwanzoni fremu iliyopachikwa kwenye ukurasa wako ni ndogo (tunataka tu upau halisi wa utafutaji uonyeshe). Wakati upau wa kutafutia unatumika, fremu hii inahitaji kupanuka (ili kuonyesha vipengele vya ziada vya kunjuzi kama vile matokeo ya kuona, mapendekezo, n.k). Ili kupanua fremu hii bila kuhamisha maudhui ya programu yako, tumeiweka kama wekeleo juu ya ukurasa uliopo, sawa na jinsi upau wa kutafutia unavyofanya kazi katika programu ya QuickSight leo - tazama picha za skrini hapa chini.
Kwa maelezo machache kuhusu jinsi upachikaji wa Q unavyofanya kazi akilini, hebu tuangalie vigezo mahususi vya SDK ya QuickSight Q. Kwanza, tutahitaji isQEmbedded ili kuwekwa kuwa kweli. maxHeightForQ ni hoja ya hiari inayobainisha kubwa zaidi ambayo fremu ya Q inaweza kuwa kwenye ukurasa wako; kama ilivyotajwa hapo awali, tutahitaji iframe na kontena lake ili kupanua yaliyomo kwenye ukurasa. Tunaweza kutumia hoja ya maxHeightForQ ili kuhakikisha fremu/kontena haibadilishi ukubwa kupita urefu wa juu wa ukurasa wako na kusababisha kusogeza kuonekana au tabia nyingine isiyotakikana. Ikiwa haijawekwa, sura ya Q itabadilisha ukubwa hadi 100vh.
Vigezo viwili mahususi vya Q ni upigaji simu tena ambao hutokea wakati fremu iliyopachikwa inabadilishwa ukubwa. Tabia chaguomsingi ni kuunda kipengee cha mandhari, na kitumia hiki ili kutoa mandharinyuma meusi zaidi tunayoona kwenye picha za skrini zilizo hapo juu kutoka kwa programu ya QuickSight. Huu ni utendakazi wa `nje ya kisanduku' ambao tunataka kutoa ili kufanya upachikaji wa Q uwe rahisi iwezekanavyo - hata hivyo, tunajua hii haitafanya kazi kwa kila programu ambayo Q inahitaji kupachikwa. Ikiwa unahitaji kupachika. kubatilisha tabia hii, andika tu mantiki kwenye onQBarOpenCallback na onQBarCloseCallback. Hii itazuia mandhari-msingi isionekane pia.
Chaguo za Mitindo ya QuickSight Q
Kuna chaguo chache za mitindo/vipodozi ambazo tunaweza kutumia ili kubinafsisha mwonekano wa upau wa utafutaji wa Q.
qBarIconDisabled: option to hide the Q search bar
qBarTopicNameDisabled: option to hide the Q search bar topic name
themeId: option to apply Quicksight theme to Q search bar
Ikiwa ungependa kuzima ikoni ya `Q' (katika upande wa kushoto wa upau wa kutafutia, tumia kigezo cha qBarIconDisabled. Vile vile, kuzima jina la mada, ikiwa unaonyesha tu mada ya umoja katika hali iliyopachikwa, tumia qBarTopicNameDisabled. Kigezo: Kumbuka kuwa urekebishaji huu wa vipodozi unapatikana tu kwa kesi wakati unapachika mada moja.
Iwapo ungependa kuweka mandhari ya upau wa Q uliopachikwa ili kufanya mwonekano ulingane na programu yako, unaweza kufanya hivyo kwa kuunda mandhari mapya katika QuickSight na kupitisha Id ya mandhari kwa SDK (mf.ample chini).
Exampchini
Ex ifuatayoamples itadhani kuna kontena katika DOM na kitambulisho `q-bar-container'.
Kupachika kwa Tabia Chaguomsingi ya Mandhari (iliyo na q/njia ya utafutaji)
Wacha tuchukue kuwa kontena lina ukingo wa juu wa 75px, kwa hivyo tutahesabu hilo kwa kutumia kigezo cha maxHeightForQ, ili iframe isipanue zaidi kuliko ukurasa unavyoruhusu, kuunda upau wa kusogeza au tabia nyingine isiyotakikana.
function embedQSession(embedUrl) {
var containerDiv = document.getElementById("q-bar-container");
containerDiv.innerHTML = "";
var params = {
url: embedUrl, container: containerDiv,
isQEmbedded: true,
maxHeightForQ: "calc(100vh - 75px)",
};
QuickSightEmbedding.embedSession(params);
}
Kupachika kwa Tabia ya Mandhari Iliyozimwa (na q/njia ya utafutaji)
Kwa huyu exampna tutadhani kontena iko juu ya ukurasa ili iweze kupanuka hadi 100% bila suala; hatutahitaji maxHeightForQ. Tutatumia onQBarOpenCallback na onQBarCloseCallback kama vitendaji vya no-op ili kuzuia mandhari-msingi isionekane.
function embedQSession(embedUrl) { var containerDiv = document.getElementById("q-bar-container"); containerDiv.innerHTML = "";
var params = {
url: embedUrl, container: containerDiv,
isQEmbedded: true,
onQBarOpenCallback: () => {},
onQBarCloseCallback: () => {},
};
QuickSightEmbedding.embedSession(params);
}
Kupachika kwa Tabia Maalum ya Mandhari (iliyo na q/njia ya utafutaji)
Tutachukulia tena chombo kiko juu ya ukurasa kwa hivyo kinaweza kupanuka hadi 100% bila suala; hatutahitaji maxHeightForQ. Tutatumia onQBarOpenCallback na onQBarCloseCallback kama simu zinazorudisha nyuma ambazo hubadilisha sehemu nyingine ya mandharinyuma (customBackdropComponent) katika programu yetu ambayo tungependa kutumia badala ya ile chaguomsingi. Kumbuka simu zako za nyuma zinaweza kuwa ngumu zaidi, mfample ni kwa urahisi tu.
function onQBarOpen() {
customBackdropComponent.style.height = "100%";
}
function onQBarClose() {
customBackdropComponent.style.height = 0;
}
function embedQSession(embedUrl) {
var containerDiv = document.getElementById("q-bar-container");
containerDiv.innerHTML = "";
var params = {
url: embedUrl,
container: containerDiv,
isQEmbedded: true,
onQBarOpenCallback: () => {},
onQBarCloseCallback: () => {},
};
QuickSightEmbedding.embedSession(params);
}
Kupachika Kwa Tabia Chaguomsingi ya Mandhari (kwa q/search/topicId njia)
Tutachukulia tena kuwa kontena lina ukingo wa juu wa 75px, kwa hivyo tutahesabu hilo kwa kutumia kigezo cha maxHeightForQ, ili iframe isipanuke kuwa kubwa kuliko ukurasa unavyoruhusu, kuunda upau wa kusogeza au tabia nyingine isiyotakikana. Kwa kuwa tunatumia upau wa utafutaji uliopachikwa wenye mada moja, tunaweza kutumia ubinafsishaji wa qBarIconDisabled na qBarTopicNameDisabled. Ex huyuample itatupa upau wa kutafutia usio na ikoni au jina la mada, ukiwa tayari kuuliza ni kitambulisho chochote cha mada kinachopitishwa.
kazi embedQSession(embedUrl) {
var containerDiv = document.getElementById("q-bar-chombo");
containerDiv.innerHTML = "";
vigezo vya var = {
url: pachikaUrl,
chombo: chomboDiv,
isQEmbedded: kweli,
maxHeightForQ: "calc(100vh - 75px)",
qBarIcon Disabled: uongo,
qBarTopicNameDisabled: uongo,
};
QuickSightEmbedding.embedSession(vigezo);
}
Kupachika Kwa Kitambulisho cha Mandhari
Unda mandhari mapya ndani ya QuickSight ikiwa huna. Fungua uchanganuzi, au uunde mpya. Chagua Mandhari upande wa kushoto.
Na kisha chagua moja ya mandhari ya kuanza unayopendelea kisha ubofye "Hifadhi kama". Ikiwa tayari una mandhari, unaweza kuruka hatua ya kuunda mandhari.
Itakupeleka kwenye ukurasa wa kuhariri mandhari, ipe jina, rekebisha rangi unavyopenda kisha uihifadhi kwenye sehemu ya juu kulia.
Kwa kuwa sasa una mandhari, unahitaji kupata kitambulisho cha mandhari hayo na uyapitishe kwa SDK. Chagua "Badilisha" kwenye mada uliyounda.
Itakupeleka tena kwenye ukurasa wa kuhariri mandhari, lakini wakati huu, utapata kitambulisho cha mandhari hapo kwenye url bar. Katika kesi hii "d39c0065bf69-4b3d-927b-9dd3a241f094" ni kitambulisho cha mandhari niliyounda.
Mwishowe, unapitisha kitambulisho cha mandhari kama kigezo kwa SDK, kisha utapata upau wa mandhari wa Q katika programu yako.
kazi embedQSession(embedUrl) {
var containerDiv = document.getElementById("q-bar-chombo");
containerDiv.innerHTML = "";
vigezo vya var = {
url: pachikaUrl,
chombo: chomboDiv,
isQEmbedded: kweli,
maxHeightForQ: "calc(100vh - 75px)",
qBarIcon Disabled: uongo,
qBarTopicNameDisabled: uongo,
mandhariId: “d39c0065-bf69-4b3d-927b-9dd3a241f094”
};
QuickSightEmbedding.embedSession(vigezo);
}
Kipengele chenye mada
Tunataka kukuonyesha vipengele gani ndani ya upau wa Q vinaweza kuwa na mada, na tutachukua mandhari ya QuickSight Midnight kama ex.ample (unaweza kuipata katika mada za mwanzo)
Kutatua matatizo
'Imekataa kuunda *.quicksight.aws.amazon.com kwa sababu babu hukiuka..' Error
Hitilafu hii inasababishwa na kutokuruhusu kuorodhesha kikoa chako katika ukurasa wa udhibiti wa QuickSight katika programu ya QuickSight. Hakikisha umeruhusu kuorodhesha kikoa cha eneo cha QuickSight (kwa sisi-mashariki-1, hii ni https://us-east-1.quicksight.aws.amazon.com , kwa mfanoample), pamoja na kikoa cha programu yako.
Haiwezi Kuona Upau wa Kutafuta Baada ya Kupachika kwa Mafanikio
Iwapo unaweza kuzalisha kwa mafanikio na kufikia na kupachika kiungo (bila ruhusa au makosa mengine dhahiri), lakini pata skrini `tupu' bila upau wa kutafutia unaoonekana, kuna mambo machache ya kuangalia. Moja ni kwamba lazima kuwe na angalau mada moja iliyoshirikiwa na mtumiaji unayepachika naye. Pili, utataka kuhakikisha kuwa kuna angalau mada moja ambayo imeundwa kwa ufanisi na katika hali `ya kufaulu' baada ya kujengwa awali. Njia rahisi ya kujaribu hii ni kutumia tu mada katika Q katika programu ya QuickSight; ikiwa inafanya kazi kawaida, ni vizuri kutumia katika hali iliyopachikwa.
Sababu nyingine ambayo upau wa kutafutia unaweza kuwa hauonekani ni kwamba chombo ambacho iframe ya kupachika kimo huenda hakitoi upana wa kutosha. Kama inavyoitwa kwenye hati, utataka kuhakikisha kuwa upau wa kutafutia umepewa angalau 600px ya upana ili ifanye kazi kama kawaida.
Upau wa Utafutaji Hupanuka Lakini Hubadilisha Maudhui Chini
Upau wa kutafutia ulio na SDK uliundwa ili kupanua juu ya maudhui yoyote ya ziada kwenye ukurasa. Ikiwa sivyo hivyo, tafadhali hakikisha kwamba chombo cha upau wa kutafutia imeundwa kwa `nafasi: kabisa', ambayo itairuhusu kutosogeza yaliyomo kwenye ukurasa chini. Kwa mfanoample:
<div id="q-search-container" style="position: absolute; width: 100%"></div>
Kumbukumbu ya Mabadiliko ya Marekebisho ya SDK
- V1(5/15/21): SDK maalum ya awali ya `Q-tayari'
- V1.1 (5/25/21)
- Badilisha urefu wa iframe ili urekebishwe hadi urefu wa upau wa kutafutia yenyewe, mtumiaji hawezi kubainisha katika hali ya Q
- Weka upana wa iframe hadi 100% ya kontena kuu kwa modi ya Q. Kumbuka kuwa upana wa upau wa kutafutia bado unaweza kuzuiwa na saizi ya kontena kuu.
- V1.1 (5/25/21)
Nyaraka / Rasilimali
![]() |
Amazon Q Embedding Developer Business intelligence Service [pdf] Mwongozo wa Mtumiaji Q Kupachika Huduma ya kijasusi ya Biashara ya Wasanidi Programu, Huduma ya akili ya Biashara ya Wasanidi Programu, huduma ya kijasusi |