# Google Sheets → SMS

Gotowy skrypt Apps Script do ręcznego wysłania maksymalnie 20 zaznaczonych wierszy. Nie jest dodatkiem z Google Workspace Marketplace.

1. Utwórz prywatny arkusz. Nagłówki A–G: `numer`, `tresc`, `operacja`, `status`, `id_sms`, `migawka`, `poczatek`. Kolumnę A ustaw jako zwykły tekst i wpisuj numery `+48600100200`.
2. Otwórz **Rozszerzenia → Apps Script**, wklej [Code.gs](Code.gs), zapisz i odśwież arkusz.
3. W menu **Przypominamy.com → Zapisz mój klucz API** podaj klucz z zakresami `send` i `read`. Google poprosi o autoryzację skryptu. Klucz jest w User Properties, poza komórkami. Edytorzy skryptu mogą zmieniać wykonywany kod — używaj zaufanego, prywatnego arkusza.
4. Najpierw użyj konta testowego i własnego numeru zweryfikowanego w panelu. Wpisz gotowy SMS w B (bez `{{placeholderów}}`). Zaznacz wiersze i wybierz wysyłkę. Dialog pokazuje liczbę wiadomości i szacowany koszt netto.
5. Wynik pojawia się w D–E. Identyfikator operacji i migawka są zapisywane przed żądaniem. Przy przerwaniu uruchom te same wiersze ponownie bez zmieniania C–G. Po 23 godzinach nierozstrzygnięta próba wymaga sprawdzenia historii; skrypt jej nie ponowi.

Zablokowany/odrzucony numer również ma wynik. Nową, świadomą wysyłkę przygotuj w nowym wierszu. Nie sortuj pojedynczych kolumn. Blokada skryptu zapobiega równoległym wykonaniom, ale nie zatrzymuje ręcznej edycji komórek; nie edytuj arkusza podczas wysyłki. Funkcje i limity konta Apps Script obowiązują niezależnie od SMS. Integracja obsługuje krajowe SMS; odpowiedzi 2-way wymagają osobnego uruchomienia numeru odbiorczego.

Dokumentacja: [właściwości użytkownika](https://developers.google.com/apps-script/guides/properties), [UrlFetchApp](https://developers.google.com/apps-script/reference/url-fetch/url-fetch-app), [blokady](https://developers.google.com/apps-script/reference/lock/lock-service).
