Programování

Jak posílat textové zprávy z R.

Věděli jste, že můžete posílat textové zprávy přímo z R? Je to snadné . . . a pokud vás zajímá, proč byste chtěli, opravdu potřebujete důvod nad rámec „protože mohu“?

Ale vážně, skriptované textové zprávy mohou být užitečné nad rámec jednoduché zábavy. Nechcete dostávat text, když dokončí dlouhý skript nebo způsobí chybu? Nebo pokud automatický skript vrátí hodnotu, kterou jste nečekali, nebo dokonce poslat texty na seznam telefonních čísel?

Existuje několik způsobů, jak generovat texty v R. Jedním z nejjednodušších je použití služby Twilio a balíčku twilio R.

Nejprve budete potřebovat účet Twilio. Přejděte na Twilio.com a zaregistrujte si bezplatný účet. Jakmile zadáte své údaje, budete muset ověřit své telefonní číslo - buď tak, že jim dáte SMS nebo zavoláte pomocí kódu.

Po registraci by se měl zobrazit panel, který vypadá podobně jako snímek obrazovky níže.

Screenshot Sharon Machlis,

Musíte si všimnout SID ÚČTU a AUTH TOKEN. Získejte také zkušební číslo, jak navrhuje červené tlačítko.

Každá zpráva stojí méně než jeden cent a zkušební verze má kredity 15 $ - dost na hraní. Důležitějším omezením je, že můžete odesílat zprávy pouze na telefonní čísla, která jste ověřili a přidali do svého účtu. Další čísla můžete ověřit na řídicím panelu Twilio (nebo získat placený účet).

Po nastavení účtu Twilio nainstalujte balíček twilio R z aplikace CRAN pomocí install.packages ("twilio") a poté jej načíst obvyklým způsobemknihovna (twilio). Uložte SID a TOKEN svého účtu do konkrétních proměnných prostředí R, které balíček očekává: TWILIO_SID a TWILIO_TOKEN. Můžete to udělat na začátku každé relace pomocí kódu, jako jsou řádky níže.

Sys.setenv (TWILIO_SID = "Vaše SID")

Sys.setenv (TWILIO_TOKEN = "Váš token")

Alternativně můžete tyto proměnné uložit jednou do souboru .Renviron, který je snadno přístupný pomocí usethis :: edit_r_environ (). K tomu budete potřebovat nainstalovaný tento balíček.

Konečně jsme připraveni poslat SMS.

Telefonní čísla pro odesílání a přijímání by měla být ve formátu, jako je +15088970700. To znamená, že před kódem země začněte znaménkem plus, následovaným pouze čísly - žádné závorky, pomlčky nebo tečky.

Funkce pro odeslání SMS je tw_send_message () se syntaxí tw_send_message (the_receiving_number, my_sending_number, my_message_body) a volitelný čtvrtý argument pro URL média. A je to! Jednoduchý příklad může vypadat takto:

tw_send_message (

to = "+16035551212",

od = "+15088970700",

body = paste ("Posílám tuto zprávu ze skriptu R!")

)

Pokud výsledky uložíte do proměnné, budete mít seznam s více než tuctem hodnot:

my_message <- tw_send_message (

to = Sys.getenv ("to_number"),

from = Sys.getenv ("from_number"),

body = paste ("Posílám tuto zprávu ze skriptu R!")

)

jména (my_message)

[1] „sid“ „date_created“ [3] „date_updated“ „date_sent“ [5] “na„ „od“ [7] „body“ „status“ [9] „num_segmenty“ „num_media“ [11] “směr "" api_version "[13]" price "" price_unit "[15]" error_code "" error_message

Pokud vytisknete text zprávy, uvidíte, že zkušební účty přidávají „Odesláno z vašeho zkušebního účtu Twilio.“

> my_message $ body [1] "Odesláno z vašeho zkušebního účtu Twilio - tuto zprávu posílám ze skriptu R."

Jakmile nastavíte účet Twilio a své proměnné SID a token, zbytek je snadný.

Chcete místo toho poslat e-mail nebo zprávu Slack z R? Máme pro vás krytí! E-mail: Jak odesílat e-maily z R a Gmailu. Slack: Jak zpomalit od R.

Další tipy R najdete na stránce Do More With R na adrese //bit.ly/domorewithR nebo v playlistu Do More With R na kanálu TECHtalk na YouTube.