STEP1:ファイルをコピー
- ツールを開く
 購入後の返信メールに、ツールが入っている共有ドライブのURLがあります。
 そこから「じゃっくbot ver.9 ※コピーして使ってね 」を開いてください。
- 「ファイル」 > 「コピーを作成」を押す
 ※必ずコピーして使用してください。
 原本は編集ができないようにロックされています。 
- コピーを作成
 ・ファイル名を「アカウント名」などわかりやすいものにする
 ・コピー先(保存先)を「マイドライブ」にする
 ・「コピーを作成」を押す 
複数のXアカウントで使用する場合
使用するXアカウントにログインしているGoogleアカウントにコピーしてください。
Xアカウントの数だけコピーが必要です。
STEP2:スクリプトを認証する
このスプレッドシートは、GAS(プログラムコード)を使用します。
GASを使用するため、一度だけ承認が必要となります。
※「私が書いたプログラムを使うために自身の承認が必要」ということです。
認証方法は ▼こちらの記事▼をご確認ください。
STEP3:X Developer Portal アカウント作成・keyの取得・認証設定
X APIを利用し、ツールを認証します。
設定方法は ▼こちらの記事▼をご確認ください。
各keyのコピペ先などは下記を参照してください。
コピーした各keyのペースト先について
- 基本設定シートを開きます。 
- API Key は D3セル にペーストします
- API Key Secret は D4セル にペーストします
- Access Token は D5セル にペーストします
- Access Token Secret は D6セル にペーストします
- スプレッドシートID を D7セル にペーストします 
スプレッドシートIDは、URLにあります。
https://docs.google.com/spreadsheets/d/この部分/edit~~~

基本設定はこれでおしまいです。
さっそく投稿準備にかかりましょう!
任意)テスト投稿してみる
※飛ばしてもOK
X Developerサイトの設定が終わり、
API key 等の入力が終わったら
実際にXに投稿できるかテスト投稿出来ます。
- テスト投稿する文章を入力する
 D16セルにテスト投稿したい文章を入力してください。
 (ここに記入した文章がそのまま投稿されます。) 
- メニューから投稿する
 画面上部メニューの「じゃっくbotメニュー」から「テスト投稿」をクリックしてください。 
もしエラーが出たら「よくある質問」をご覧ください。
STEP4:ポストを仕込む
主な投稿方法は3つです。
決められた日時にポスト投稿する(単発ポスト)
文字通り、決められた日時にポスト投稿する機能です。
文章は見た目通りに投稿されます。
つまり、改行や絵文字はそのまま入れていただいてOKです。
※一度ポストしたら2度目がポストされることはありません。
※設定は残ります。再利用はご自由に。
設定方法
- 「tweets」シートを開く
- 以下を設定する
 ・F列:ポスト文
 ・G列:日にち
 ・H列:時間
- この後ポストするにはトリガー設定が必要です。
 「トリガーを設定する」へ行きましょう。
G列の「日にち」のセルをダブルクリックすると
カレンダーが現れます。
H列の「時間」はすべて半角で入力してください。
指定の曜日にポストする(毎週ポスト)
指定の曜日と時間に延々と投稿します。
※「日にち」と「曜日」どちらも入力した場合、
「日にち指定の単発ポスト」という設定が優先されます。
設定方法
- 「tweets」シートを開く
- 以下を設定する
 ・F列:ポスト文
 ・H列:時間
 ・I~O列:投稿したい曜日にチェック(複数可)
- この後ポストするにはトリガー設定が必要です。
 「トリガーを設定する」へ行きましょう。
ランダムに投稿(定期的にひとつ抽選)
15分おき、1時間おき等、
一定の時間おきにポストする機能です。
複数個仕込んでおき、その中から抽選で1つ選出されてポストします。
選出されるポストはすべて投稿するまで重複しません。
全てポストされたら、再度全ての中から抽選します。
▼下記3ポストをセットする
ポスト文①:あ
ポスト文②:い
ポスト文③:う
▼ポストされる結果
い → う → あ → う → あ → い → あ → う → い → …
このようにランダムに投稿されます。
設定方法
- 「randomb」シートを開く
- 以下を設定する
 ・E列:ポスト文
- この後ポストするにはトリガー設定が必要です。
 「トリガーを設定する」へ行きましょう。
STEP5:トリガーを設定する
自動でポスト投稿してもらうために、トリガー設定をします。
- 画面左上の「拡張機能」>「App Script」を開く
- 左のメニューから「⏰トリガー」を開く
- 画面右下の「+トリガーを追加」を押す 
- トリガーの設定をして、保存をする
- 日にち指定 & 曜日指定 の場合
 以下と同じように設定し、最後に「保存」を押す。
 ※「時刻を選択」は一番使わない時間帯を選んでください。
- ランダムポストの場合
 以下と同じように設定し、最後に「保存」を押す。
 ※「○○ベースのトリガーのタイプ選択」「時間の間隔を選択」は
 ポストしたい間隔の時間を入れてください。
 例:1時間おきにポストしたいなら「時間ベースの1時間おき」
 
- 日にち指定 & 曜日指定 の場合
STEP6:便利機能
文字だけのポストだけでなく、いくつか便利な機能を用意しました。
以下詳細です。
任意の位置に日時をつける機能
文章内に「DATE」(大文字半角)を入れるとその場所に日時が自動で入ります。
最初でも途中でも最後でも大丈夫です。
tweetsシート、randombシート、どちらでも利用可能です。
▼作成した文章
在庫あったよ DATE

▼ ポスト結果
在庫あったよ 8/13 21:38
文字をランダムに出力する機能
URLや言葉をランダムに使いたい場合にどうぞ。
「WORD1」「WORD2」という言葉を使って
ポスト内の2か所をランダムに表記することができます。
1か所ランダムにしたいとき、
ポスト文章内でランダムにしたいところに、直接「WORD1」と書く。
▼作成した文章
こんにちは!WORD1
▼ ポスト結果(例)
こんにちは!どもども~
2か所ランダムにしたいとき、
D列のポスト文章内に直接「WORD1」「WORD2」と書く。
▼作成した文章
予約開始してた!
初回盤A → WORD1
一覧 → WORD2
▼ ポスト結果(例)
予約開始してた!
初回盤A → ありがとう
一覧 → URL1
注意
※ 1か所だけでよければ「WORD1」のみを使ってください
※ 文章内では、WORD1 → WORD2 の順に使ってください
ランダムは、3つの言葉から選出します。
WORD1はP,Q,R列に、WORD2はS,T,U列に入れてください。
※ セルを空欄にすると、空欄が選出される可能性があります
スレッド投稿(リプ)
※確認
「基本設定」シートのD12セルに
自分のアカウントID(@は除く)を必ず入れてください。
- 1つめのポストを記入する
- 真下に繋げるポストを記入する
 3個4個…と繋げる場合は、下に記入していってください。
- 2個目のポストからD列に「re」を選択する
 3個4個…と繋げる場合は、3個目4個目…も「re」を入れてください。
- ポスト時間を1分以上開けて設定する(例:7:00、7:01)
 (日にちor曜日も忘れずに入れてください)
▼作成したポスト
▼ポスト結果
- Qリプを2個、3個…と繋げたいです。
- Aできます。 
 ポスト文章をそのまま下に記入します。
 リプの限り「re」にすればOKです。
- Qリプをやめたいです。
- A“Backspace”ボタンを一度押して空欄にしてください 
 (黄色→灰色になっていればOK)
- Qリプができません。
- A以下を確認してください。 
 ・D列の「re」は選択肢から選んだか
 ・D列の「re」は黄色になっているか
 ・一番目の投稿は、空欄(灰色)になっているか
 ・投稿時間をずらしてあるか(最低でも1分はずらしてください)
 ・D12セルにアカウントID(@は除く)は入っているか
- Q1回のリプでAPIコール1回分になりますか?
- Aなります 
引用投稿
※確認
「基本設定」シートのD12セルに
自分のアカウントID(@は除く)を必ず入れてください。
- 1つめに引用元のポストを記入する
- 真下に引用ポストを記入する
- 引用ポストと同じ行のD列に「qu」を選択する
- ポスト時間を最低でも1分以上ずらす(例:7:00、7:01)
 (日にちor曜日も忘れずに入れてください)
▼作成したポスト
▼ポスト結果
- Q引用元1つに対して、2回3回と引用できますか?
- Aできません。 
 引用元1つに対して、引用予約できるのは一度です。
- Q引用ポストをさらに引用することはできますか?
- Aできます。 
 B列に「qu」を入れれば真上の行のポストを引用します。
 (引用の引用を引用する…みたいな)
- Q引用をやめたいです。
- A“Backspace”ボタンを一度押して空欄にしてください 
 (水色→灰色になっていればOK)
- Q引用ができません。
- A以下を確認してください。 
 ・B列の「qu」は選択肢から選んだか
 ・B列の「qu」は水色になっているか
 ・「qu」の一つ上の行は、空欄(灰色)になっているか
 ・投稿時間をずらしてあるか(最低でも1分はずらしてください)
 ・E7セルにアカウントID(@は除く)は入っているか
- Q1回の引用でAPIコール1回分になりますか?
- Aなります 
投稿ポストを○分後に削除予約する機能
tweetsシート、randombシートから投稿したポストを
○分後に削除する機能です。
削除予約する方法
- 基本設定シートを開く 
- D20セルに何日後に削除させるか数字を入れる
 「3」なら3分後、「10」なら10分後です。
 未記入もしくは半角数字以外なら、デフォルトの「10分後」が適用されます。 
- 画面上の「じゃっくbotメニュー」>「投稿したポストの予約削除」を押す 
 これでOK。
 あとはノータッチでOK。
削除予約を止める方法
今後の削除予約を止めたい場合「↑の稼働停止」を押せばOKです。
※現状予約している分は削除されます。
※それも止めたい場合、Apps Scriptを開き、トリガー削除してください。

削除予約したログを見る方法と、ログを消す方法
削除のログは「deletePosts」シートにあります。

H列削除トリガーに文字が入っていると、削除の予約がされている状況です。
F列に日付、G列の時間に削除予約します。

トリガーが消え、実行ログに日付が入っていれば削除された証拠です。

削除されたログは削除しても大丈夫です。
削除したい行を指定し、右クリックで「行○を削除」を押せばOK。

- Q削除トリガーが9個までしか設定されません。
- A仕様です。 
 GASは全部で20個が上限です。
 削除トリガーでいっぱいにすると、
 通常の投稿用のトリガーが設定できなくなります。
 なので削除トリガーは最大9個までにしています。
直近17件のポストを削除する機能
直近17件のポストを取得し、すべて削除する機能です。
削除方法
- 画面上部の「じゃっくbotメニュー」>「直近17ポスト取得」を押す 
- 画面上部の「じゃっくbotメニュー」>「↑のポスト全削除」を押す 
これでOK。
最大約40分ほどかかります。
ポストの取得は15分に一度までです。
(APIで制限されているため)
(1日のポスト数が17個まで…みたいなのと同じです。)
取得したログを見る方法と、ログを消す方法
取得した17ポストは「deleteRecent」シートに表示されます。

取得直後はこのように表示されます。

削除後はF列に削除した日にちが入ります。

削除されたログは削除しても大丈夫です。
削除したい行を指定し、右クリックで「行○を削除」を押せばOK。

- Qなんで17個なの?
- Aポスト投稿するのと同じで、 
 「24時間で17個まで」というAPIの制限があります。
- Qポスト投稿・削除は合わせて17件ですか?
- A違います。 
 24時間中投稿17個、削除17個です。
- Q削除できるのは deletePosts と deleteRecent 合わせて17個ですか?
- Aそうです。 
 たとえば、24時間以内にdeletePostsで10個削除したら
 deleteRecent側で削除できるのは7個までです。
コミュニティへのポスト投稿機能
通常ポストではなく「コミュニティ限定」でポストする機能です。
5つのコミュニティまで指定できます。
- 基本設定シートを開く 
- D33~D38セルにコミュニティIDを入れる
 上から詰めて入れてください。使わない場合は空欄でOK 
 ※コミュニティIDは、URLの後ろの数字のところです。 
- 「tweets」シートを開く
- D列でコミュニティを指定する。
 他はいつも通り日時指定or曜日指定をしていく。WORD1や2も使えます。 
 これでOK。
 あとはノータッチでOK。(CreateTriggersは設定しておいてね)
よくある質問
質問編
- Q全部マニュアル通りなのに動かないんですけど…
- A3%くらい確率で「確かに何も問題は無いのに動かない」場合があります。 
 この時は申し訳ありませんが、原本のコピーからやり直してみてください。
- Qパソコンの電源を切ってもいいですか?
- A大丈夫ですよ~。 
- Q文字数オーバーしてたらどうなりますか?
- A403エラーとなり、ポスト投稿されません。 
- QDATEって何文字換算しておけばいいですか?
- A半角12文字入ります。 
 「 12/12 23:59」← こんな感じで半角12文字です。
- Qトリガー設定の「5分おき」とは、5分おきにポストされるという意味ですか?
- A違います。 
 「5分おきに在庫復活しているか監視する」という意味です。
 なので在庫復活しない限り、5分おきにポストされるわけではありません。
- Qテスト投稿されていないのですが、なにが原因ですか?
- A以下を確認してください。 
 ・User authentication settings の 「Set up」の後にAccess Tokenを取得したか
 → 再度発行すれば解決
 ・同じ文章でポストていないか
 → 違う文章にすれば解決
 ・エラーコードが出ていれば、「エラーメッセージ編」をご確認ください。
エラーメッセージ編
- Qストレージからの読み取り中にサーバーエラーが発生しました。
 エラーコード: DEADLINE_EXCEEDED。
- Aこれは回線の関係でできなかっただけなので、 
 もう一度試してみてください。
- QExceeded maximum execution time とは?
- Aスクリプトの実行時間の上限がきています。 
 もし1つのGoogleアカウントに対して複数のツールを動かしている場合は
 Googleアカウントを分けることで解決できます。
- Qエラーコード: 401 Unauthorized とは?
- A認証に失敗しています。API key類の再確認をしてください。 
- Qエラーコード: 403 Forbidden とは?
- AX developerのsettingsで「read and write」になっているか確認してください。 
 確認後、Access Tokesの再取得をしてください。もしくは、文字数オーバーです。投稿したいポストの文字数を確認してください。 
- Qエラーコード: 429 Too Many Requests とは?
- AX APIの利用上限です。時間経過で再利用可能になります。 
 制約は以下の通りです。・ポスト投稿は 1日17投稿まで 
 ・ポスト削除は 1日17削除まで
 ・ポスト取得は 15分1取得、1か月3回まで
 
  
  
  
  


コメント