Jednym ze sposobów dodawania treści innych firm do Classroom jest wklejanie 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 zgodzi się 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 istotne szczegóły techniczne tej funkcji.
Odczytywanie parametru zapytania urlToUpgrade
Parametr zapytania urlToUpgrade
jest kodowany w formacie URI, gdy jest przekazywany w ramach elementu iframe LinkUpgrade. 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 informacjami o 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 prefiksów ścieżek, można uaktualnić dowolny adres URL pasujący do hosta.
- Przejście na wyższy abonament jest możliwe tylko w przypadku adresów URL o schemacie
https
. - Wzorce adresów URL nie mogą zawierać
localhost
. - Prefiksy ścieżek nie mogą zawierać parametrów zapytania ani fragmentów adresu URL.
- Prefiksy ścieżki mogą obecnie obsługiwać symbole wieloznaczne, ale hosty nie mogą:
-
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
komponentu 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 adresu URL, bo symbol wieloznaczny w prefiksie ścieżki jest niezgodny z/123/456/
.
-
Proces tworzenia
Wyślij adres URL iframe Link Upgrade i wzorce adresów URL dla 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.
Po włączeniu konfiguracji otrzymasz odpowiedź na swojego e-maila. 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: prefiksy ścieżki powiązane z identyfikatorem
HOST_2
, które Classroom ma wykryć i próbować uaktualnić.
Zalecane wrażenia użytkowników
Oto kilka sugestii, które warto wziąć pod uwagę podczas implementowania tej funkcji.
uniknąć dodatkowej pracy nauczycieli,
Zdecydowanie zalecamy korzystanie z elementu iframe, by w razie potrzeby ułatwić logowanie lub wyświetlać 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.
Uwzględnij komunikaty o błędach łatwego dla użytkownika 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 poinformować ich o problemie. Iframe może też służyć do nadawania nauczycielowi odpowiednich uprawnień dostępu do treści.