bs_post | R Documentation |
Make a post on Bluesky Social
bs_post(
text,
images,
images_alt,
video,
video_alt,
langs,
reply,
quote,
embed = TRUE,
emoji = TRUE,
max_tries,
created_at = bs_created_at(),
user = get_bluesky_user(),
pass = get_bluesky_pass(),
auth = bs_auth(user, pass),
clean = TRUE
)
text |
Text of post |
images |
Character vector of paths to images to attach to post |
images_alt |
Character vector of alt text for images. Must be same length as |
video |
Character vector of path for up to one video to attach to post |
video_alt |
Character vector, length one, of alt text for video, if used. |
langs |
Character vector of languages in BCP-47 format |
reply |
Character vector with link to the parent post to reply to |
quote |
Character vector with link to a post to quote |
embed |
Logical. Default is |
emoji |
Logical. Default is |
max_tries |
Integer, >= 2. Number of times to retry the request if the first fails. |
created_at |
Character, length 1 of the form "%Y-%m-%dT%H:%M:%OS6Z". Time to assign to a record. Default is |
user |
Character. User name to log in with. Defaults to |
pass |
Character. App password to log in with. Defaults to |
auth |
Authentication information. Defaults to |
clean |
Logical. Should output be cleaned into a |
a tibble::tibble of post information
:emoji:
parsing is not a formally supported Bluesky feature. This package
converts usages of this kind by identifying text within :
s, here "emoji
"
and then matches them to the emoji
package's list of emoji names. All
supported emoji names and corresponding images can be seen with
emoji::emoji_name
. This feature was introduced in v0.2.0
.
Embedding is a feature that allows for a link card to be created when a URL
or other media to be added as a preview to the post. This feature was
introduced in v0.2.0
.
Embeds are processed as follows:
If is.list(embed)
, it is assumed to be an embed object. These should be
created with bs_new_embed_external()
, unless you are certain of the
structure.
If is.character(embed)
, it is assumed to be a URL. The function will
use the open graph protocol to try to infer the embed from the URL.
If isTRUE(embed)
, the default, it tries to infer the embed from the text.
First, if a Tenor Gif link is found in the text, it will be embedded.
Second, if a URL is found in the text, it will be embedded. Only the first URL found will be embedded.
If isFALSE(embed)
or it does match an earlier condidtion, no embed is
created and the post is sent as is.
feed/post.json (2024-11-29) repo/createRecord.json (2023-10-02)
v0.0.1
(2023-10-02)
bs_post('Test post from R CMD Check for r package `bskyr`
via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)')
bs_post('Test self-reply from r package `bskyr`
via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)',
reply = 'https://bsky.app/profile/bskyr.bsky.social/post/3kexwuoyqj32g'
)
bs_post('Test quoting from r package `bskyr`
via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)',
quote = 'https://bsky.app/profile/bskyr.bsky.social/post/3kf24wd6cmb2a'
)
bs_post('Test quote and reply from r package `bskyr`
via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)',
reply = 'https://bsky.app/profile/bskyr.bsky.social/post/3kexwuoyqj32g',
quote = 'https://bsky.app/profile/bskyr.bsky.social/post/3kf24wd6cmb2a'
)
bs_post('Test quote with :emoji: and :fire: and :confetti_ball: from r package
`bskyr` via @bskyr.bsky.social (https://christophertkenny.com/bskyr/)')
bs_post(text = 'Testing images and aspect ratios from R',
images = fs::path_package('bskyr', 'man/figures/logo.png'),
images_alt = 'hexagonal logo of the R package bskyr, with the text "bskyr" on a cloud')
bs_post(text = 'testing sending videos from R',
video = fs::path_package('bskyr', 'man/figures/pkgs.mp4'),
video_alt = 'a carousel of package logos, all hexagonal')
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.