{"id":20626663,"url":"https://github.com/tymekdev/sender","last_synced_at":"2025-09-09T16:40:34.127Z","repository":{"id":80074908,"uuid":"213371734","full_name":"TymekDev/sendeR","owner":"TymekDev","description":"R package providing a simple interface for sending messages.","archived":false,"fork":false,"pushed_at":"2020-06-26T16:48:23.000Z","size":1703,"stargazers_count":8,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-10T14:59:08.350Z","etag":null,"topics":["gmail","notifications","r","r-package","sender","sending","sending-notifications","slack","telegram"],"latest_commit_sha":null,"homepage":"https://tymekdev.github.io/sendeR/","language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/TymekDev.png","metadata":{"files":{"readme":"README.Rmd","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-10-07T12:00:36.000Z","updated_at":"2024-03-13T21:41:11.000Z","dependencies_parsed_at":"2023-03-02T05:30:56.296Z","dependency_job_id":null,"html_url":"https://github.com/TymekDev/sendeR","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/TymekDev/sendeR","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TymekDev%2FsendeR","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TymekDev%2FsendeR/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TymekDev%2FsendeR/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TymekDev%2FsendeR/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TymekDev","download_url":"https://codeload.github.com/TymekDev/sendeR/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TymekDev%2FsendeR/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265540519,"owners_count":23784928,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gmail","notifications","r","r-package","sender","sending","sending-notifications","slack","telegram"],"created_at":"2024-11-16T13:14:18.409Z","updated_at":"2025-07-16T21:06:07.411Z","avatar_url":"https://github.com/TymekDev.png","language":"R","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\noutput: github_document\n---\n\n\u003c!-- README.md is generated from README.Rmd. Please edit that file --\u003e\n\n\n## sendeR \u003cimg src=\"logo.png\" align=\"right\" width=\"120\" /\u003e\n\u003c!-- badges: start --\u003e\n[![Travis build status](https://travis-ci.com/tmakowski/sendeR.svg?branch=master)](https://travis-ci.com/tmakowski/sendeR)\n[![AppVeyor build status](https://ci.appveyor.com/api/projects/status/github/tmakowski/sendeR?branch=master\u0026svg=true)](https://ci.appveyor.com/project/tmakowski/sendeR)\n[![Codecov test coverage](https://codecov.io/gh/tmakowski/sendeR/branch/master/graph/badge.svg)](https://codecov.io/gh/tmakowski/sendeR?branch=master)\n[![Lifecycle: maturing](https://img.shields.io/badge/lifecycle-maturing-blue.svg)](https://www.tidyverse.org/lifecycle/#maturing)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\u003c!-- badges: end --\u003e\n\n\n### Overview\nsendeR is a package whose premise is sending messages to various messaging and/or mailing services using a simple unified interface with as little dependencies as possible.\n\nPackage originated as a project for an Advanced R course at a Faculty of Mathematics and Information Science at the Warsaw University of Technology.\n\n\n### Installation\nTo install the development package version from GitHub repository use the following code:\n```{r, eval = FALSE}\n# install.packages(\"devtools\")\ndevtools::install_github(\"tmakowski/sendeR\")\n```\n\n\n### Supported Services\nNote: services requiring OAuth2.0 require `httr` and `openssl` packages installed.\n\n - [Gmail](https://gmail.com) **(OAuth2.0)**\n - [Slack](https://slack.com)\n - [Telegram](https://telegram.org/)\n\n\n### Usage\n1. Create a client for one of the supported services. For details on how to get access to the service's API please refer to given client's documentation.\n1. Use `send_message` method on the created client.\n\n```{r, eval = FALSE}\nlibrary(\"sendeR\")\nmy_telegram_client \u003c- client_telegram(\u003cmy_bot_token\u003e)\nsend_message(my_telegram_client, \"Hello world!\", \u003cchat_id\u003e)\n```\n\nAs of version `0.9.0.9000` it is possible to set *default* parameters in the clients as shown below. As of version `0.10.3.9000` it is possible to pass `set_fields` arguments directly into client constructor, e.g. `client_telegram(\u003cmy_bot_token\u003e, message = \"Hi world!\")`.\n```{r, eval = FALSE}\nclient \u003c- client_telegram(\u003cmy_bot_token\u003e)\nclient \u003c- set_fields(client, destination = \u003cchat_id\u003e, message = \"Hi world!\")\n\n# This will send \"Hi world!\" message to chat under \u003cchat_id\u003e.\nsend_message(client)\n\n# This will send \"Hello world!\" message to chat under \u003cchat_id\u003e.\nsend_message(client, message = \"Hello world!\")\n```\n\n#### Additional Features\n* Version `0.10.0.9000` of the package has the `sendeR_txtProgressBar` function which shares the behaviour of regular `txtProgressBar` with addition of sending a message when calculation is finished. Please refer to the documentation for usage details.\n* Version `0.9.0.9000` of the package comes with the `sendeR_lapply` function which can easily be used to send notifications after a calculation is finished. Please refer to the documentation for usage details.\n\n#### Important Remarks\n - Creating `client_gmail` pauses code execution and waits for the OAuth2.0 authorization. This can be avoided in subsequent `client_gmail` calls if `httr` OAuth caching functionality is used.\n - Currently passing an argument of wrong type to any function will result in a code stop due to failed assertion. Please test your sendeR calls before running long calculations.\n\n\n### Cheatsheet\n[PDF Version](vignettes/cheatsheet/sendeR_cheatsheet.pdf)\n![](vignettes/cheatsheet/sendeR_cheatsheet.png)\n\n\n### How to contribute?\n*Coming soon...*\n\n\n### Planned Features\n- `quick_send_message` - method for sending messages in one line (client creation not required). Note: only for clients not requiring OAuth.\n- Searching system environment for required parameters during clients construction if they are missing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftymekdev%2Fsender","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftymekdev%2Fsender","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftymekdev%2Fsender/lists"}