Jednym ze sposobów dodawania treści innych firm do Classroom jest wklejenie linku jako załącznika linku na stronie tworzenia projektu. Aby ułatwić nauczycielom korzystanie z funkcji, z których już korzystają, możesz skonfigurować dodatek, aby umożliwić nauczycielom przekształcenie załącznika Link w załącznik dodatku.
Omówienie
Jeśli skonfigurujesz dodatek z tą funkcją, nauczyciele otrzymają prośbę o uaktualnienie linku do załącznika dodatku, gdy wklejają załącznik linku na stronie tworzenia projektu. Nauczyciele otrzymują taką prośbę tylko wtedy, gdy mają już zainstalowany dodatek.
Gdy nauczyciel wyrazi zgodę na uaktualnienie linku do załącznika dodatku, zostanie wyświetlony iframe Link Upgrade z tymi parametrami zapytania:
courseId
itemId
itemType
addOnToken
urlToUpgrade
login_hint
(tylko jeśli użytkownik zatwierdził już Twoją aplikację)
Pierwsze 4 parametry zapytania odpowiadają parametrom zapytań wywoływanych w elementach iframe usługi Attachment Discovery. Nowy parametr zapytania urlToUpgrade
może Ci pomóc w ocenie, jak utworzyć załącznik dodatku. Następnie możesz użyć innych parametrów zapytania, aby sprawdzić, czy użytkownik jest zalogowany, i wywołać metodę CreateAddOnAttachment
courseWork
, courseWorkMaterials
lub announcements
na podstawie wartości itemType
. W ramach iframe możesz wyświetlić ekran wczytywania, aby poinformować nauczyciela, że tworzony jest załącznik dodatku.
Gdy załącznik dodatku zostanie utworzony, iframe zostanie zamknięty, a nauczyciel będzie mógł wyświetlić załącznik w projekcie w zwykły sposób.
Szczegóły techniczne implementacji
W tej sekcji znajdziesz ważne informacje techniczne dotyczące tej funkcji.
Czytanie parametru zapytania urlToUpgrade
Parametr zapytania urlToUpgrade
jest kodowany w identyfikatorze URI, gdy jest przekazywany w ramce elementu odnośnika Upgrade. Aby uzyskać pierwotną postać adresu URL, musisz go zdekodować. Jeśli na przykład używasz JavaScriptu, możesz użyć funkcji decodeURIComponent()
.
Zamknij element iframe aktualizacji linku
Aby zapewnić użytkownikom optymalną obsługę tej funkcji, po utworzeniu załącznika dodatku wyślij postMessage
. Spowoduje to zamknięcie elementu iframe. Więcej informacji znajdziesz na stronie z szczegółami implementacji iframe.
Szczegóły konfiguracji
Aby zintegrować tę funkcję z dodatkiem, musisz ustawić te opcje:
Adres URL elementu iframe Link Upgrade: adres URL, który otwiera się w elemencie iframe, gdy nauczyciel zgadza się na przeniesienie.
Wzorce adresów URL, które Classroom powinien wykrywać i próbować uaktualniać: wzorce adresów URL mogą składać się z hosta i wielu prefiksów ścieżki.
- Możesz podać wiele wzorców adresów URL.
- Jeśli nie podasz żadnych prefiksów ścieżki, można uaktualnić dowolny adres URL pasujący do hosta.
- Tylko adresy URL o schemacie
https
można przekształcić. - Wzorce adresów URL nie mogą zawierać
localhost
. - Prefiksy ścieżek nie mogą zawierać parametrów zapytania ani fragmentów adresu URL.
- Prefiksy ścieżek mogą obecnie obsługiwać symbole wieloznaczne, ale hosty nie:
-
example.com
to prawidłowy host, a/foo
i/bar/*/baz
to prawidłowe prefiksy ścieżki. -
example.*.host.com
nie jest prawidłowym hostem.
-
- Symbol wieloznaczny między komponentami prefiksu ścieżki pasuje tylko do jednego komponenta i nie pasuje do wielu komponentów rozdzielonych ukośnikami.
Rozważ wzór adresu URL z hostem
example.com
i prefiksem ścieżki/bar/*/baz
:-
https://example.com/bar/123/baz
jest prawidłowym dopasowaniem do wzorca adresu URL. -
https://example.com/bar/123/baz/456/789
jest prawidłowym dopasowaniem do wzorca adresu URL. -
https://example.com/bar/123/456/baz
nie jest prawidłowym dopasowaniem do wzorca URL, ponieważ symbol wieloznaczny w prefiksie ścieżki nie pasuje do/123/456/
.
-
Proces tworzenia
Wyślij adres URL iframe Link Upgrade i wzorce adresów URL wersji testowej lub produkcyjnej dodatku, wysyłając e-maila na adres classroom-link-upgrade-external@google.com.
Konfiguracje możesz podać dla dowolnego projektu Google Cloud, który reprezentuje dodatek do Google Classroom. Zalecamy najpierw udostępnienie konfiguracji dodatku z prywatną widocznością, aby umożliwić tworzenie i testowanie w domenie demonstracyjnej bez wpływu na użytkowników w wersji produkcyjnej.
Otrzymasz odpowiedź na e-maila, gdy skonfigurujemy Twoje konto. Pamiętaj, że wzorce adresów URL, które używają localhost
, nie są obsługiwane w przypadku tej funkcji.
W e-mailu umieść te informacje:
Google Cloud Project number: GCP_PROJECT_NUMBER
Link Upgrade iframe URL: LINK_UPGRADE_IFRAME_URL
URL Patterns:
- Host:HOST_1
- Path prefixes:
- PATH_PREFIX_1
- PATH_PREFIX_2
- Host:HOST_2
- Path prefixes:
- PATH_PREFIX_3
- PATH_PREFIX_4
// add more hosts and path prefixes as needed
Zastąp następujące elementy:
- GCP_PROJECT_NUMBER: numer projektu Google Cloud, z którym jest powiązany dodatek.
- LINK_UPGRADE_IFRAME_URL: adres URL, który powinien otwierać się w elementzie iframe Link Upgrade.
- HOST_1: host, który powinien wykryć Classroom. Obsługiwany jest tylko schemat
https
. - PATH_PREFIX_1 i PATH_PREFIX_2: ścieżki z prefiksami powiązanymi z
HOST_1
, które Classroom powinien wykryć i spróbować uaktualnić. - HOST_2: host, który powinien wykryć Classroom. Obsługiwany jest tylko schemat
https
. - PATH_PREFIX_3 i PATH_PREFIX_4: ścieżki z prefiksami powiązanymi z
HOST_2
, które Classroom powinien wykryć i spróbować uaktualnić.
Zalecane wrażenia użytkowników
Oto kilka sugestii, które warto wziąć pod uwagę podczas implementowania tej funkcji.
Unikaj dodatkowej pracy nauczycieli
Zdecydowanie zalecamy użycie ramki iFrame, aby ułatwić logowanie (jeśli jest wymagane), lub wyświetlić wskaźnik wczytywania. Ze względu na wygodę użytkowników nauczyciel nie powinien otrzymywać prośby o dodatkowe informacje po wyrażeniu zgody na przekształcenie wklejonego linku w załącznik dodatku. Jeśli jednak nie jest to możliwe w przypadku Twojego dodatku, możesz użyć iframe Link Upgrade, aby zebrać potrzebne informacje. Element iframe może też służyć do informowania nauczyciela, jeśli nie można uaktualnić linku lub wystąpił błąd.
Dołącz przyjazne dla użytkownika komunikaty o błędach dostępu
Jeśli nauczyciele wklejają i aktualizują link, do którego nie mają dostępu, wyświetl w iFrame przyjazny dla użytkownika komunikat o błędzie, aby nauczyciele wiedzieli o problemie. Iframe może też służyć do nadawania nauczycielowi odpowiednich uprawnień dostępu do treści.