Skip to content

Commit 17081c7

Browse files
committed
docs: update readme
1 parent 96bfc00 commit 17081c7

File tree

2 files changed

+85
-33
lines changed

2 files changed

+85
-33
lines changed

README-en.md

Lines changed: 76 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,20 @@
33

44
<div align="center">
55
<picture>
6-
<img src="https://cdn.jsdelivr.net/gh/timerring/scratchpad2023/2024/2025-05-25-14-57-31.png" alt="workflow" width="500" height="300"/>
6+
<img src="https://cdn.jsdelivr.net/gh/timerring/scratchpad2023/2024/2025-05-29-12-15-02.png" alt="workflow" width="500" height="300"/>
77
</picture>
88

9-
This repository uses GitHub Actions to automate daily check-ins and automated question answering tasks.
9+
This repository uses CI/CD to automate daily check-ins and automated question answering tasks.
1010

1111
English Version |
1212
[中文版本](./README.md)
1313
</div>
1414

1515
## Features
1616

17-
> More platforms are welcome to issue or PR.
17+
> Welcome to :star: this project. Feel free to submit issues or PRs to add more platforms.
1818
19-
Automatically completes platform tasks daily, with notifications sent through a telegram bot upon completion. If failures occur, notifications are sent directly via Github email.
19+
Automatically complete platform tasks daily. After completion, notifications will be sent via Telegram bot. If tasks fail, email notifications will be sent directly through CircleCI.
2020

2121
- **Nodeseek**
2222
- Automatic check-in
@@ -26,50 +26,95 @@ Automatically completes platform tasks daily, with notifications sent through a
2626
- Automatic check-in
2727
- Automatic question answering
2828

29-
## How to Use
29+
## Quick Start
3030

31-
### Fork the repository
31+
Fork this repository to your own account, then add the corresponding configuration items to your repository secrets (in `settings -> secrets and variables -> actions -> new repository secret`).
3232

33-
Fork the repository to your own. Then add the secrets to the repository. Then just wait for the workflow to run.
33+
### Register for [CircleCI](https://circleci.com/)
3434

35-
> If you don't need a particular platform, you can simply delete the corresponding platform's workflow file in the `.github/workflows` directory.
35+
[CircleCI](https://circleci.com/) is an excellent CI/CD platform. The Free plan offers `30,000 credits/mo, that's up to 6,000 build mins`, which is more than sufficient for all the requirements of this project.
3636

37-
### Configure Telegram Notifications
37+
For detailed registration instructions, please see [CloudCheckin Wiki](https://github.com/timerring/CloudCheckin/wiki/CircleCI-Registeration).
3838

39-
1. Follow the [telegram bot](https://core.telegram.org/bots/features#botfather) instructions to create a telegram bot and obtain the `token`
40-
2. Add the bot to your contacts and send it a message. Then visit https://api.telegram.org/bot{TELEGRAM_TOKEN}/getUpdates to get the `chat id` (Replace `{TELEGRAM_TOKEN}` with the token obtained in step 1)
41-
3. Add the `token` and `chat id` to the repository secrets as `TELEGRAM_TOKEN` and `TELEGRAM_CHAT_ID` (under settings -> secrets and variables -> actions -> new repository secret)
39+
### Apply for CircleCI Token
4240

43-
### Configure Nodeseek Check-in
41+
Apply for a Token on the [CircleCI](https://app.circleci.com/settings/user/tokens) page and add it to your repository secrets with the name `CIRCLECI_TOKEN`.
4442

45-
1. Get the `cookie` from the Nodeseek website (See [COOKIE Retrieval Guide](https://blog.timerring.com/posts/the-way-to-get-cookie/))
46-
2. Add the `cookie` to the repository secrets as `NODESEEK_COOKIE` (under settings -> secrets and variables -> actions -> new repository secret)
43+
### Copy Organization ID
4744

48-
### Configure V2EX Check-in
45+
Find the Organization ID in your created Organization Settings and add it to your repository secrets with the name `CIRCLECI_ORG_ID`.
4946

50-
1. Get the `cookie` from the V2EX website (See [COOKIE Retrieval Guide](https://blog.timerring.com/posts/the-way-to-get-cookie/))
51-
2. Add the `cookie` to the repository secrets as `V2EX_COOKIE` (under settings -> secrets and variables -> actions -> new repository secret)
47+
![](https://cdn.jsdelivr.net/gh/timerring/scratchpad2023/2024/2025-05-30-13-25-46.png)
5248

53-
### Configure 1point3acres Check-in
49+
### Set Task Schedule
5450

55-
1. Get the `cookie` from the 1point3acres website (See [COOKIE Retrieval Guide](https://blog.timerring.com/posts/the-way-to-get-cookie/))
56-
2. Add the `cookie` to the repository secrets as `ONEPOINT3ACRES_COOKIE` (under settings -> secrets and variables -> actions -> new repository secret)
57-
3. Get an `api key` from [2captcha](https://2captcha.com/) by topping up your account (Due to 1point3acres' check-in and question answering requiring cloudflare turnstile verification, we use 2captcha's API to solve the verification)
58-
- Note: 2captcha's API is paid, starting from $3, and supports Alipay. Each successful verification costs about $0.00145, $3 can be used 2068 times, approximately 2.83 years.
59-
4. Add the `api key` to the repository secrets as `TWOCAPTCHA_APIKEY` (under settings -> secrets and variables -> actions -> new repository secret)
51+
You can modify `config.yml` to set task schedules. Note that execution time is fixed to UTC timezone. Beijing time is UTC+8, so please convert the time difference accordingly.
6052

61-
## How It Works
53+
https://github.com/timerring/CloudCheckin/blob/600af66568069ad14b6e5cff7cbfed99fc236fd0/.circleci/config.yml#L54
6254

63-
1. The GitHub Action workflow runs around 09:00 Beijing time (01:00 UTC) every day
64-
2. Upon success, the workflow sends notifications through the Telegram bot
65-
3. Upon failure, the workflow also sends notifications through the Telegram bot and exits with a non-zero code, triggering GitHub email notifications
55+
### Configure Platforms
6656

67-
## Manual Trigger
57+
> If you don't need a certain platform, you can directly edit and delete the corresponding items in `.circleci/config.yml`. For example, if you don't need 1Point3Acres, consider deleting lines 64-65 and 74-75.
6858
69-
You can also manually trigger the workflow through the Actions tab in the GitHub repository by clicking run workflow.
59+
#### Configure Telegram Notifications
7060

71-
## References
61+
1. Follow the [telegram bot](https://core.telegram.org/bots/features#botfather) instructions to create a telegram bot and get the `token`
62+
2. Add the bot as your contact and send a message. Then visit https://api.telegram.org/bot{TELEGRAM_TOKEN}/getUpdates to get the `chat id` (replace `{TELEGRAM_TOKEN}` with the token from step 1)
63+
3. Add the `token` and `chat id` to repository secrets, named `TELEGRAM_TOKEN` and `TELEGRAM_CHAT_ID` respectively
64+
65+
#### Configure Check-in Platforms
66+
67+
<details>
68+
<summary>Configure Nodeseek Check-in</summary>
69+
70+
1. Get the `cookie` from the Nodeseek website (for cookie acquisition methods, please refer to [COOKIE Acquisition Tutorial](https://blog.timerring.com/posts/the-way-to-get-cookie/))
71+
2. Add the `cookie` to repository secrets with the name `NODESEEK_COOKIE`
72+
73+
</details>
74+
75+
<details>
76+
<summary>Configure V2EX Check-in</summary>
77+
78+
1. Get the `cookie` from the V2EX website (for cookie acquisition methods, please refer to [COOKIE Acquisition Tutorial](https://blog.timerring.com/posts/the-way-to-get-cookie/))
79+
2. Note that V2EX cookies contain special characters like `"` and `$`, which may cause shell transmission failures when passing secrets. Therefore, you need to escape these two special characters. A simple replacement script is: `echo 'your V2EX cookie' | sed 's/["$]/\\&/g'`
80+
3. Add the escaped `cookie` to repository secrets with the name `V2EX_COOKIE`
81+
82+
</details>
83+
84+
<details>
85+
<summary>Configure 1Point3Acres Check-in and Quiz</summary>
86+
87+
1. Get the `cookie` from the 1Point3Acres website (for cookie acquisition methods, please refer to [COOKIE Acquisition Tutorial](https://blog.timerring.com/posts/the-way-to-get-cookie/))
88+
2. Add the `cookie` to repository secrets with the name `ONEPOINT3ACRES_COOKIE`
89+
3. Top up and get an `api key` from [2captcha](https://2captcha.com/) (since 1Point3Acres check-in and quiz require Cloudflare Turnstile verification, we use 2captcha's API to solve the verification problem)
90+
- Note: 2captcha API requires payment, starting from $3, supports Alipay. Each successful verification costs about $0.00145, so $3 can be used 2068 times, approximately 2.83 years.
91+
4. Add the `api key` to repository secrets with the name `TWOCAPTCHA_APIKEY`
7292

93+
</details>
94+
95+
#### Sync Configuration
96+
97+
After configuring all content, please manually execute the `Setup CircleCI Context and Secrets` workflow once to ensure that configuration secrets are correctly synchronized to CircleCI contexts secrets through CircleCI CLI. (Actions -> `Setup CircleCI Context and Secrets` -> `Run workflow`)
98+
99+
## FAQ
100+
101+
1. **Why use CircleCI instead of GitHub Actions directly?**
102+
103+
Using GitHub Actions directly may lead to potential repository banning risks. Although this project only triggers requests once a day and doesn't have high concurrent request volumes like upptime and other open-source projects, we still follow the principle of not adding excessive burden to GitHub. CircleCI is also an excellent CI/CD platform. The Free plan's 30,000 credits/mo (up to 6,000 build mins) can fully support all the requirements of this project. Additionally, CircleCI's contexts design between different Projects is quite innovative compared to general CI/CD platforms. More users using and becoming familiar with CircleCI benefits both users and the platform.
104+
105+
2. **Why not use Cloudflare Worker or other Serverless computing functions?**
106+
107+
We have tried Cloudflare Worker. Local `wrangler dev` works, but after deploying to Cloudflare Worker, since Cloudflare edge requests carry obvious cf flags, many platforms have restricted Cloudflare Worker requests. We are still trying more function computing platforms, and any progress will be synchronized in the repository. Of course, if you are interested in the Cloudflare Worker approach, you are welcome to continue trying the work. My local debugging demo is already placed in the `cloudflareworkers` directory.
108+
109+
## Contributing
110+
111+
Welcome to submit platforms you need, no language restrictions.
112+
113+
> If you are a Python user, it is recommended to use the `curl_cffi` library instead of `requests` and other libraries. `curl_cffi` can more accurately simulate browser requests, greatly preventing website risk control.
114+
115+
## References
116+
- [curl_cffi](https://github.com/lexiforest/curl_cffi)
117+
- [2captcha](https://github.com/2captcha/2captcha-python)
73118
- [1point3acres](https://github.com/harryhare/1point3acres)
74119
- [V2EX](https://github.com/CruiseTian/action-hub)
75120
- [nodeseek](https://github.com/xinycai/nodeseek_signin)

README.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ https://github.com/timerring/CloudCheckin/blob/600af66568069ad14b6e5cff7cbfed99f
7575
<summary>配置 V2EX 签到</summary>
7676

7777
1. 从 V2EX 网站获取 `cookie`(获取方法请参考 [COOKIE 获取教程](https://blog.timerring.com/posts/the-way-to-get-cookie/)
78-
2. 注意,由于 V2EX 的 cookie 包含 `"` 以及 `$` 特殊字符,可能会导致 sh 中传递失败,因此需要转义这两个特殊字符,简单脚本为 `echo 'cookie' | sed 's/["$]/\\&/g'`
78+
2. 注意,由于 V2EX 的 cookie 包含 `"` 以及 `$` 特殊字符,可能会导致 sh 中传递 secrets 失败,因此需要转义这两个特殊字符,简单替换脚本为 `echo '你的V2EX cookie' | sed 's/["$]/\\&/g'`
7979
3. 将转义后的 `cookie` 添加到仓库密钥中,命名为 `V2EX_COOKIE`
8080
</details>
8181

@@ -101,9 +101,16 @@ https://github.com/timerring/CloudCheckin/blob/600af66568069ad14b6e5cff7cbfed99f
101101

102102
2. 为什么不采用 Cloudflare Worker 等 Serverless 函数计算?
103103

104-
已经尝试过 Cloudflare Worker,本地 wrangler dev 有效,但是 deploy Cloudflare Worker 之后,由于 Cloudflare edge 请求会带有明显的 cf 标志,很多平台已经限制了 Cloudflare Worker 的请求。至于更多的函数计算平台还在尝试中,有进展会同步在 Repo 里。
104+
已经尝试过 Cloudflare Worker,本地 wrangler dev 有效,但是 deploy Cloudflare Worker 之后,由于 Cloudflare edge 请求会带有明显的 cf 标志,很多平台已经限制了 Cloudflare Worker 的请求。至于更多的函数计算平台还在尝试中,有进展会同步在 Repo 里。当然,如果你对 Cloudflare Worker 的方式有兴趣,欢迎继续尝试的工作,我本地调试的 demo 已经放置于 `cloudflareworkers` 目录下。
105+
106+
## 贡献
107+
108+
欢迎提交你需要的平台,语言不限制。
109+
110+
> 如果你是 Python 用户,建议使用 `curl_cffi` 库而不是 `requests` 等库,`curl_cffi` 能够更精确地模拟浏览器发送请求,极大程度上防止网站风控。
105111
106112
## 参考
113+
- [curl_cffi](https://github.com/lexiforest/curl_cffi)
107114
- [2captcha](https://github.com/2captcha/2captcha-python)
108115
- [1point3acres](https://github.com/harryhare/1point3acres)
109116
- [V2EX](https://github.com/CruiseTian/action-hub)

0 commit comments

Comments
 (0)