-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #26 from sota0121/feature/22_fix
Fix v0.4.0
- Loading branch information
Showing
11 changed files
with
578 additions
and
106 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,52 +1,104 @@ | ||
# twitter bot | ||
# Twitter Bot CLI | ||
|
||
## Features | ||
- [Twitter Bot CLI](#twitter-bot-cli) | ||
- [Overview](#overview) | ||
- [Installation](#installation) | ||
- [1. Install from github](#1-install-from-github) | ||
- [2. PyPI](#2-pypi) | ||
- [Getting started](#getting-started) | ||
- [1. Setting Config file](#1-setting-config-file) | ||
- [2. Send tweet](#2-send-tweet) | ||
- [ROADMAP](#roadmap) | ||
|
||
- Post tweet regularly | ||
- posting messages are in `tweets_list.json` (save in Cloud Storage) | ||
- **Future** : use tweets list in `spreadsheet` | ||
|
||
## Overview | ||
|
||
## Infrastructure | ||
`tbc` is developer friendly twitter bot runner. | ||
|
||
- Google Cloud Functions | ||
|
||
## Installation | ||
|
||
## Deployment | ||
### 1. Install from github | ||
|
||
### 1. Make `.env.yaml` | ||
install latest pip package from github | ||
|
||
Copy and create `.env.yaml` from `.env-template.yaml`, in root directory. | ||
**ssh mode** | ||
|
||
```bash | ||
cp .env-template.yaml .env.yaml | ||
# ssh | ||
pip install git+ssh://git@github.com/sota0121/twitter-bot-cli | ||
``` | ||
|
||
And then set the values below: | ||
**https mode** | ||
|
||
```bash | ||
# https | ||
pip install git+https://github.com/sota0121/twitter-bot-cli | ||
``` | ||
|
||
if want to install specific version (See: [Releases](https://github.com/sota0121/twitter-bot-cli/releases)) | ||
|
||
```bash | ||
pip install git+ssh://git@github.com/sota0121/twitter-bot-cli@v0.4.0 | ||
``` | ||
|
||
**check if successfully installed** | ||
|
||
```bash | ||
tbc --help | ||
``` | ||
|
||
### 2. PyPI | ||
|
||
(Comming soon ...) | ||
|
||
|
||
## Getting started | ||
|
||
### 1. Setting Config file | ||
|
||
Create `.tbcconfig.yml` | ||
|
||
See: [Twitter Authentication for Developer](https://developer.twitter.com/ja/docs/basics/authentication/overview) | ||
|
||
```yaml | ||
consumer_key: "twitter-consumer-key" | ||
consumer_secret: "twitter-consumer-secret" | ||
access_token: "twitter-access-token" | ||
access_secret: "twitter-access-secret" | ||
gs_type: "service_account" | ||
gs_project_id: "Google Spreadsheet Project ID" | ||
gs_private_key_id: "Google Spreadsheet Private key id" | ||
# \nもそのまま設定したいのでシングルクォート | ||
gs_private_key: 'Google Spreadsheet Private key' | ||
gs_client_email: "Google Spreadsheet Service Account Email" | ||
gs_client_id: "Google Spreadsheet Client ID" | ||
gs_auth_uri: "Google Spreadsheet Auth URI" | ||
gs_token_uri: "Google Spreadsheet Token URI" | ||
gs_auth_provider_x509_cert_url: "Google Spreadsheet provider cert uri" | ||
gs_client_x509_cert_url: "Google Spreadsheet client cert uri" | ||
version: "1" | ||
|
||
twitter: | ||
consumer_key: "Twitter api consumer key" | ||
consumer_secret: "Twitter api consumer secret" | ||
access_token: "Twitter api access token" | ||
access_secret: "Twitter api access secret" | ||
|
||
source: | ||
# local, gcs, gspread | ||
type: "local" | ||
|
||
# for local | ||
local_path: "src/data/tweets-tbl.csv" | ||
|
||
# for gcs (future support) | ||
gcs_path: "path/to/cloud/storage/table.csv" | ||
|
||
# for gspread (future support) | ||
gspread_path: "path/to/spreadsheet/table" | ||
|
||
``` | ||
|
||
### 2. Execute shell script | ||
|
||
Execute `deploy-function.sh` to deploy `main.py` as Google Cloud Functions' instance. | ||
### 2. Send tweet | ||
|
||
```bash | ||
chmod ./deploy-function.sh | ||
source ./deploy-function.sh | ||
tbc bot send -m "Hello Twitter!" | ||
|
||
# output | ||
Welcome to tbc !!! | ||
bot sub command !!! | ||
load : .tbcconfig.yml | ||
successfully tweeted | ||
``` | ||
|
||
|
||
## ROADMAP | ||
|
||
See: [ROADMAP.md](docs/ROADMAP.md) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
# twitter bot | ||
|
||
## Features | ||
|
||
- Post tweet regularly | ||
- posting messages are in `tweets_list.json` (save in Cloud Storage) | ||
- **Future** : use tweets list in `spreadsheet` | ||
|
||
|
||
## Infrastructure | ||
|
||
- Google Cloud Functions | ||
|
||
|
||
## Deployment | ||
|
||
### 1. Make `.env.yaml` | ||
|
||
Copy and create `.env.yaml` from `.env-template.yaml`, in root directory. | ||
|
||
```bash | ||
cp .env-template.yaml .env.yaml | ||
``` | ||
|
||
And then set the values below: | ||
|
||
```yaml | ||
consumer_key: "twitter-consumer-key" | ||
consumer_secret: "twitter-consumer-secret" | ||
access_token: "twitter-access-token" | ||
access_secret: "twitter-access-secret" | ||
gs_type: "service_account" | ||
gs_project_id: "Google Spreadsheet Project ID" | ||
gs_private_key_id: "Google Spreadsheet Private key id" | ||
# \nもそのまま設定したいのでシングルクォート | ||
gs_private_key: 'Google Spreadsheet Private key' | ||
gs_client_email: "Google Spreadsheet Service Account Email" | ||
gs_client_id: "Google Spreadsheet Client ID" | ||
gs_auth_uri: "Google Spreadsheet Auth URI" | ||
gs_token_uri: "Google Spreadsheet Token URI" | ||
gs_auth_provider_x509_cert_url: "Google Spreadsheet provider cert uri" | ||
gs_client_x509_cert_url: "Google Spreadsheet client cert uri" | ||
``` | ||
### 2. Execute shell script | ||
Execute `deploy-function.sh` to deploy `main.py` as Google Cloud Functions' instance. | ||
|
||
```bash | ||
chmod ./deploy-function.sh | ||
source ./deploy-function.sh | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,32 +1,32 @@ | ||
,text,tweeted,imgName | ||
0,【01日】筋肉を裏切ってはいけない by なかやまきんに君,0,knnkn-1.jpg | ||
1,【02日】変わりたいと思ったとき、あなたはスタートラインに立っている by なかやまきんに君,0,knnkn-0.jpg | ||
2,【03日】筋肉は褒めて伸びるタイプです! by なかやまきんに君,0,knnkn-2.jpg | ||
3,【04日】筋肉は師匠のようであり、家族でもある by なかやまきんに君,0,knnkn-3.jpg | ||
4,【05日】時代は、タンパク質ファースト! by なかやまきんに君,0,knnkn-4.jpg | ||
5,【06日】限界こそ最大のチャンス! by なかやまきんに君,0,knnkn-5.jpg | ||
6,【07日】筋肉の声に耳を傾けろ! by なかやまきんに君,0,knnkn-1.jpg | ||
7,【08日】仕事や恋愛、悩んだ時は筋肉を選べ! by なかやまきんに君,0,knnkn-0.jpg | ||
8,【09日】緊急事態は解除されても、人生の筋急事態は継続です by なかやまきんに君,0,knnkn-2.jpg | ||
9,【10日】体重は目安にすぎない! by なかやまきんに君,0,knnkn-3.jpg | ||
10,【11日】まいにち5分!塵も積もれば体が変わる! by なかやまきんに君,0,knnkn-4.jpg | ||
11,【12日】かっこいいとは、鍛え上げた背中で語ることさ by なかやまきんに君,0,knnkn-5.jpg | ||
12,【13日】パンプアップで成長した未来の自分に会おう! by なかやまきんに君,0,knnkn-1.jpg | ||
13,【14日】一番の勝負服は筋肉なんです! by なかやまきんに君,0,knnkn-0.jpg | ||
14,【15日】筋肉を慣れさせるな! by なかやまきんに君,0,knnkn-2.jpg | ||
15,【16日】マッチョになれば鏡の数だけ気分が上がる! by なかやまきんに君,0,knnkn-3.jpg | ||
16,【17日】筋肉を動かせばココロも動く! by なかやまきんに君,0,knnkn-4.jpg | ||
17,【18日】筋肉痛を既読スルーしてはいけない by なかやまきんに君,0,knnkn-5.jpg | ||
18,【19日】食べない運動しないダイエットはありえません! by なかやまきんに君,0,knnkn-1.jpg | ||
19,【20日】筋肉の扉は自らの筋肉で開けろ! by なかやまきんに君,0,knnkn-0.jpg | ||
20,【21日】他人と比べなくていい。比べる相手は「過去の自分」 by なかやまきんに君,0,knnkn-2.jpg | ||
21,【22日】早起きは三頭筋が張り出すくらい徳 by なかやまきんに君,0,knnkn-3.jpg | ||
22,【23日】幸せは一瞬。その瞬間から努力も幸せに変わる! by なかやまきんに君,0,knnkn-4.jpg | ||
23,【24日】ダンベルを握ると、そこは筋肉だらけだった by なかやまきんに君,0,knnkn-5.jpg | ||
24,【25日】寒いところに筋肉芸人あり! by なかやまきんに君,0,knnkn-1.jpg | ||
25,【26日】もう取り返しがつかない時は、割れた腹筋を見せろ! by なかやまきんに君,0,knnkn-0.jpg | ||
26,【27日】おいしい、安い、便利な食べ物をいったん疑え! by なかやまきんに君,0,knnkn-2.jpg | ||
27,【28日】何事もよく噛んで、噛みまくってしまえ! by なかやまきんに君,0,knnkn-3.jpg | ||
28,【29日】健康警察が出動!太り過ぎは定員オーバーした車です。 by なかやまきんに君,0,knnkn-4.jpg | ||
29,【30日】仕事で成功したいなら、まず体を鍛えろ! by なかやまきんに君,0,knnkn-5.jpg | ||
30,【31日】筋トレは人生の教科書である by なかやまきんに君,0,knnkn-1.jpg | ||
,text,imgName | ||
0,【01日】筋肉を裏切ってはいけない by なかやまきんに君,src/data/img/knnkn-1.jpg | ||
1,【02日】変わりたいと思ったとき、あなたはスタートラインに立っている by なかやまきんに君,src/data/img/knnkn-0.jpg | ||
2,【03日】筋肉は褒めて伸びるタイプです! by なかやまきんに君,src/data/img/knnkn-2.jpg | ||
3,【04日】筋肉は師匠のようであり、家族でもある by なかやまきんに君,src/data/img/knnkn-3.jpg | ||
4,【05日】時代は、タンパク質ファースト! by なかやまきんに君,src/data/img/knnkn-4.jpg | ||
5,【06日】限界こそ最大のチャンス! by なかやまきんに君,src/data/img/knnkn-5.jpg | ||
6,【07日】筋肉の声に耳を傾けろ! by なかやまきんに君,src/data/img/knnkn-1.jpg | ||
7,【08日】仕事や恋愛、悩んだ時は筋肉を選べ! by なかやまきんに君,src/data/img/knnkn-0.jpg | ||
8,【09日】緊急事態は解除されても、人生の筋急事態は継続です by なかやまきんに君,src/data/img/knnkn-2.jpg | ||
9,【10日】体重は目安にすぎない! by なかやまきんに君,src/data/img/knnkn-3.jpg | ||
10,【11日】まいにち5分!塵も積もれば体が変わる! by なかやまきんに君,src/data/img/knnkn-4.jpg | ||
11,【12日】かっこいいとは、鍛え上げた背中で語ることさ by なかやまきんに君,src/data/img/knnkn-5.jpg | ||
12,【13日】パンプアップで成長した未来の自分に会おう! by なかやまきんに君,src/data/img/knnkn-1.jpg | ||
13,【14日】一番の勝負服は筋肉なんです! by なかやまきんに君,src/data/img/knnkn-0.jpg | ||
14,【15日】筋肉を慣れさせるな! by なかやまきんに君,src/data/img/knnkn-2.jpg | ||
15,【16日】マッチョになれば鏡の数だけ気分が上がる! by なかやまきんに君,src/data/img/knnkn-3.jpg | ||
16,【17日】筋肉を動かせばココロも動く! by なかやまきんに君,src/data/img/knnkn-4.jpg | ||
17,【18日】筋肉痛を既読スルーしてはいけない by なかやまきんに君,src/data/img/knnkn-5.jpg | ||
18,【19日】食べない運動しないダイエットはありえません! by なかやまきんに君,src/data/img/knnkn-1.jpg | ||
19,【20日】筋肉の扉は自らの筋肉で開けろ! by なかやまきんに君,src/data/img/knnkn-0.jpg | ||
20,【21日】他人と比べなくていい。比べる相手は「過去の自分」 by なかやまきんに君,src/data/img/knnkn-2.jpg | ||
21,【22日】早起きは三頭筋が張り出すくらい徳 by なかやまきんに君,src/data/img/knnkn-3.jpg | ||
22,【23日】幸せは一瞬。その瞬間から努力も幸せに変わる! by なかやまきんに君,src/data/img/knnkn-4.jpg | ||
23,【24日】ダンベルを握ると、そこは筋肉だらけだった by なかやまきんに君,src/data/img/knnkn-5.jpg | ||
24,【25日】寒いところに筋肉芸人あり! by なかやまきんに君,src/data/img/knnkn-1.jpg | ||
25,【26日】もう取り返しがつかない時は、割れた腹筋を見せろ! by なかやまきんに君,src/data/img/knnkn-0.jpg | ||
26,【27日】おいしい、安い、便利な食べ物をいったん疑え! by なかやまきんに君,src/data/img/knnkn-2.jpg | ||
27,【28日】何事もよく噛んで、噛みまくってしまえ! by なかやまきんに君,src/data/img/knnkn-3.jpg | ||
28,【29日】健康警察が出動!太り過ぎは定員オーバーした車です。 by なかやまきんに君,src/data/img/knnkn-4.jpg | ||
29,【30日】仕事で成功したいなら、まず体を鍛えろ! by なかやまきんに君,src/data/img/knnkn-5.jpg | ||
30,【31日】筋トレは人生の教科書である by なかやまきんに君,src/data/img/knnkn-1.jpg |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
idx,text,imgName | ||
0,全ては筋肉のため by なかやまきんに君,src/data/img/knnkn-1.jpg | ||
1,体脂肪を落とす事より、筋肉を付ける事の方が難しい by なかやまきんに君,src/data/img/knnkn-0.jpg | ||
2,(筋トレ効果の実感について)3ヶ月で自分で気づき、6ヶ月で他人からも気づかれる by なかやまきんに君,src/data/img/knnkn-2.jpg | ||
3,筋トレして体ができた時点で、もうめちゃめちゃ格好いいし、必ず何かが起こる by なかやまきんに君,src/data/img/knnkn-3.jpg | ||
4,単純に筋トレが好き by なかやまきんに君,src/data/img/knnkn-4.jpg | ||
5,筋トレは間違いない、こんなにかっこいいものはない by なかやまきんに君,src/data/img/knnkn-5.jpg | ||
6,辛いことも楽しいことも、筋トレが教えてくれました by なかやまきんに君,src/data/img/knnkn-1.jpg | ||
7,筋トレを長くやってると、筋肉痛が心地よくなってくる by なかやまきんに君,src/data/img/knnkn-0.jpg | ||
8,脚のトレーニングが問題なく終わると安心する。次の日歩くのが辛いほどの筋肉痛が来るとさらに安心する by なかやまきんに君,src/data/img/knnkn-2.jpg | ||
9,筋肉は裏切らないではなく「筋肉を裏切らない」 by なかやまきんに君,src/data/img/knnkn-3.jpg | ||
10,笑いは取らないですが、水分はしっかり摂ります by なかやまきんに君,src/data/img/knnkn-4.jpg |
Oops, something went wrong.