タグ

GASに関するs_ryuukiのブックマーク (85)

  • Unityからスプレッドシートに直接アクセスしてデータ調整を高速化できた話

    「Happy Elements Advent Calendar 2023」 12月5日の記事です。 はじめに Happy Elements株式会社のカカリアスタジオでゲームエンジニアをしているtommyです。今年、カカリアスタジオからカジュアル恋愛ノベルゲーム「六ツ獄恋いろは」をリリースしました。その開発において私はメインエンジニアを務めました。 「六ツ獄恋いろは」は、スマホでカジュアルにあやかしたちとの学園での恋愛を楽しめる恋愛ノベルゲームです。 ノベルゲームという性質上「六ツ獄恋いろは」は大量のシナリオを含んでおり、全てに演出を付けていく必要がありました。「六ツ獄恋いろは」では主にスクリプト専任担当とライターの二人で演出付けが行われており、少人数で大量のシナリオデータ化作業を捌くためにできるだけ効率よく行う必要があると考えました。 そこで、Unity上や開発用アプリから直接スプレッドシ

    Unityからスプレッドシートに直接アクセスしてデータ調整を高速化できた話
  • Google Apps ScriptでGPTsのCustom ActionsのAPIを作ってみた - Qiita

    はじめに GPTsのCustom Actions(カスタムアクション)をつかって、外部のAPIを呼び出して、データを取得することができるようになりました。 たとえば、郵便番号検索APIを呼び出して、ユーザーから入力された住所から、郵便番号を回答するGPTを作ることができます。 詳細についてはこちら。 この記事では、Custom Actionsから呼び出されるAPIを、Google Apps Scriptを使って無料で作る方法について説明します。 この記事の対象者 GPTsのCustom ActionsのAPIを自作したい方 Google Apps Scriptで簡単なスクリプトを作ったことがある方 Zapierの連携よりも複雑な処理を求めている方 APIの概要 シーケンス図で表現しました。 "Google Apps Script"にあたるところが、今回作成するAPIになります。 処理として

    Google Apps ScriptでGPTsのCustom ActionsのAPIを作ってみた - Qiita
  • Google Apps Script で作成したアドオンをドメイン内ユーザーに配布する

    はじめに 下記の記事でアドオンを作りましたが、これをドメイン内ユーザーに配布する記事になります。 ドメイン内ユーザーへの配布も一般公開用のアドオン配布とほとんど一緒で、Google Workspace Marketplace SDK を使います。 流れとしては下記のようになります。 GASを作成 Google Cloud プロジェクトを作成 GAS と Google Cloud プロジェクトを紐づけてデプロイ Google Workspace Marketplace SDK の設定とインストール ※ 手順は特権ユーザーで作業しないと強制配布はできず手動でインストールして貰う形になります GASを作成 この記事で作ったものを流用するのでスキップします。(コードを書き換える必要はありません) Google Cloud プロジェクトを作成する https://console.cloud.goo

    Google Apps Script で作成したアドオンをドメイン内ユーザーに配布する
    s_ryuuki
    s_ryuuki 2023/11/06
  • ぼくのかんがえたさいきょうのGAS開発手法2023

    前提clasp の制約、Script API の考え方、Google Drive の考え方に素直に従うその条件下である程度モダンな開発環境での開発を目指す 可能ならコードは VCS で管理する(pull-req など)ドキュメントベースで共同作業に向いた手法で開発を進める特にカジュアルに始めやすい Google Apps Script は悪い意味での属人化まっしぐらになりやすい。これが長期間の業務に影響しないような、ワンショットのものなら別にそれでもよいが、これが誰かに引き継がなければいけないような状況が生まれると一気に地獄みが増してしまうので、そうなってしまう前により良い開発手法を考えておきたい。 考慮したことGAS は素朴に作ると Script 体の構造がそれを利用する container (例えば Spreadsheet)のデータ構造などと密結合になってしまう。この状態のままコード

    s_ryuuki
    s_ryuuki 2023/08/24
  • 新しいSlackワークフローを使った簡易チケット管理システムの作り方

    発端はこれです。 構成 構成要素としては以下のA~Eの5つになります。 A,Bはチケット管理システムとしてMUSTで必要なものです。 C,D(通知機能), E(可視化機能)はやりたかったらこういうのもできるよ、というオプション要素なので解説はサラッと。 A. 依頼するフォーム リンク起動 Slackワークフローのフォームでありスプシに書き込むのもこいつ B. チケット管理スプレッドシート Aにより、 依頼一覧 チケット一覧 の2シートにデータが書き込まれる 作業が完了したら チケット一覧 のステータスを手動更新する必要あり これは現時点で(2023年8月時点)スプレッドシートの更新がないため C. メッセージ通知用のGAS Bを読み込んでチケット一覧を取得し、Dを起動してメッセージを送信するGAS 時間トリガー起動 D. メッセージ通知用のSlackワークフロー Webhook起動 E.

    新しいSlackワークフローを使った簡易チケット管理システムの作り方
  • GASの開発環境をローカルで作成する方法(2023年7月版) | DevelopersIO

    Google Apps Scriptの環境構築をVSCode上で行う方法について詳しく解説していきます。clasp,asideを使って構築するので、爆速で構築できます。 ことのはじまり 私は最近Google Apps Script(GAS)の学習を始めました。 GASの学習を始めると、まずはAppsScript公式のIDEでスクリプトを書いていくことになると思います。 しかし、普段VSCodeを使い慣れている身からすると、VSCodeの便利機能が使いたくて仕方なくなります。 それじゃあ、使い慣れたVSCodeを使おうじゃないか!! AppsScript公式のIDEだとGitに差分を残していくこともできないぞ!!(できます) というわけで、GASをVSCodeを使って開発する為の環境構築の手順を書いていきたいと思います。 前提条件 VSCodeがインストールされている Node.jsがインス

    GASの開発環境をローカルで作成する方法(2023年7月版) | DevelopersIO
    s_ryuuki
    s_ryuuki 2023/07/22
  • GASとChatGPTを組み合わせてZennとQiitaの急上昇記事を紹介するTwitter botを作った

    はじめに idea カテゴリで投稿するか迷いましたが、一応 ChatGPT へリクエストを投げる GAS のコードも紹介しているので、tech 記事で投稿することにしました。 ほしかったもの Qiita には急上昇記事を紹介する公式アカウントが存在しています。 が、Zenn には公式のそれが存在していませんでした。 一応公式アカウントがピックアップとして紹介しているものの、おそらく手動。(そう思うのは、GW 前から更新が止まっているから) とにかく一番欲しかったものは、Zenn の人気記事を数時間間隔で教えてくれるなにかでした。 そしてどうせなら Qiita の記事も紹介する機能をつけようと思いました。 "なにか"には SlackLINE bot という選択肢があったのですが、しかし単に記事だけを紹介しつづける無機質な bot は可愛くないと思っていました。 せっかく"私"が作るのな

    GASとChatGPTを組み合わせてZennとQiitaの急上昇記事を紹介するTwitter botを作った
  • GAS 制限 まとめ - Qiita

    *3 GASの処理時間のこと アカウント料金 念の為料金についても記述しておきます 一般ユーザアカウント 基料金無料 gmail.comを所持していればOK 法人利用も可能(セキュリティ保護をするならば有料アカウント推奨) Google Workspaceアカウント 1人当たり月680円(Business Starter) 14日間の無料試用期間がある。 Business Starter,Business Standard,Business Plus,Enterprise 上記の4つのプランがあり、順番に料金&サービスが増えていく。 参考 所感 天下のGoogle様だけあって、無料範囲が非常に広い印象。 (個人開発する分には非常に助かります) 大規模なサービスを作るとしたら、現時点でGASでは不安なので、 個人的にはわざわざ有料でやるメリットは薄いと感じます。 ただWorkSpaceアカ

    GAS 制限 まとめ - Qiita
    s_ryuuki
    s_ryuuki 2023/04/28
  • [GAS]特定メールアドレスからメール受信した際に、slack通知を行う - Qiita

    この記事でわかること 今回の記事は、GASを用いて採用関係のメール受信時に、Slackに通知するアプリを作成するためのものです。 1つの記事で機能を全てまとめてみました。詳しくは以下の項目をご覧ください。 GASでのGMail、slack連携 SlackAPIの基設定 GASでのトリガー設定 機能実装方法 SlackAPIの設定 1. SlackAPIのリンクにアクセスし、新しいSlackアプリを作成する。 2. スコープ&パーミッション設定を行う。 3. Slackボットを追加し、ワークスペースにインストールする。 以下の記事を参照していただくと、ここまでの手順が詳細に書いてあります。 GASの設定 GASの新規プロジェクトを立ち上げ、 SlackAppのスクリプトID(1on93YOYfSmV92R5q59NpKmsyWIQD8qnoLYk-gkQBI92C58SPyA2x1-bq)

    [GAS]特定メールアドレスからメール受信した際に、slack通知を行う - Qiita
  • VisualStudio CodeとGoogle Apps ScriptでChatGPT(gpt-3.5-turbo)をより安全快適に使う

    OpenAI社が2023年3月1日に公開した「ChatGPT API」についての初心者向け記事です。 VisualStudio CodeとGoogle Apps ScriptでChatGPT(gpt-3.5-turbo)をより安全快適に使いましょう。 GASはともかくスプレッドシートでGPTを関数化すると、ものすごい勢いでトークンを失う&安定に動かない問題を解決しています。 =ChatGPT(A1) とすると… 「gpt-3.5-turbo」そもそも何が嬉しいの? 公式資料 まず何といってもモデルの使用料金がインパクトあります。 ChatGPTモデルファミリー「gpt-3.5-turbo」は、ChatGPT製品で使用しているものと同じモデルであり、既存の「GPT-3.5」よりもGPT-3.5モデルより10倍安く、価格は1,000トークンあたり0.002ドルです。 また、チャット以外の多くの

    VisualStudio CodeとGoogle Apps ScriptでChatGPT(gpt-3.5-turbo)をより安全快適に使う
  • GoogleSlideのスピーカーノートに書いた台本を元にタイムコードを埋め込むGAS

  • 🔰GAS(Google Apps Script)の更新をGithub Actionsで自動化してみた - Qiita

    はじめに GAS(Google Apps Script)で、いろいろとツールを作ることがあるのとGithub Actionsが利用できるようになったので更新を自動化をしてみました。 資料に参考にしたサイトを補足に躓いた点をまとめておきました。 資料 https://dev.classmethod.jp/articles/github-actions-gas-deploy/ https://coxcox.hatenablog.com/entry/2019/04/05/222532 アジェンダ 事前準備 概要 実装 実行 補足 まとめ 事前準備 Claspの設定 GAS(Google Apps Script)を更新するため、claspの設定をしておきます。 ここを参考にNode.jsのインストールとclaspのインストールを実施します。 .clasprc.json というファイルが必要なので以

    🔰GAS(Google Apps Script)の更新をGithub Actionsで自動化してみた - Qiita
  • 【GAS】Formから送信されGoogleDriveに保存されるファイルを非共有のままslackに投稿する【初心者向け】 - Qiita

    🧎🏻はじめに GoogleFormに添付されたファイルはデフォルトでGoogleDriveに保存されますが フォーム投稿時の通知としてSlackにテキストと一緒にファイルとして投稿できると見れるといいよね〜(ただしGoogleDriveの閲覧権限は非共有のままで!) という社内の声があったのでやってみました。 「権限を持っている人向けに閲覧用のURLを生成する」という仕様であれば結構サクッと実現できるのですが、(Incoming Webhookなどでできます) 「非共有のまま&ファイルを取得してファイルとしてSlackにPostする」を実現するのに少し苦戦した&ドンピシャの記事は見当たらなかったので備忘録も兼ねて記します! ちなみに 非共有のファイルを取得して投稿するなら共有にすればいいじゃん、という声も聞こえそうですが 投稿先のチャンネルにいる人ならファイル見れてもOK(むしろ見れた

    【GAS】Formから送信されGoogleDriveに保存されるファイルを非共有のままslackに投稿する【初心者向け】 - Qiita
  • GoogleフォームとGASを使って利便性高くセキュアな共有ドライブ運用を作る

    注意事項 かなり高度なGASの使い方なのである程度GWS(Googleフォームやスプレッドシート)やGASをわかってる方前提で書いていますので結構省略しているとこも多いです。 あと作った後に手順を書いているのでなにか抜け漏れあったらごめんなさい。 まだ作ってみただけで実際に運用はしてないのでテスト等も不十分かも。運用してからまた追記します。 コードは直接スクリプトエディタでサクッと作ったサンプルです、実際はローカルでLintかけたりするのでインデントおかしかったりしても許してください。 背景 GWSを使う際にマイドライブで外部共有可能にするとやりたい放題なのでセキュアな環境とは言い難くなる。 また組織のファイルをマイドライブにおいてしまうとファイルオーナーが退職したときの扱いに困る。上長に移管したり、退職者アカウントに移管するのが一般的かと思うが、移管するということはマイドライブのファイル

    GoogleフォームとGASを使って利便性高くセキュアな共有ドライブ運用を作る
  • Docs の独自コマンドはサーバなしで動く。 - freee Developers Hub

    毎週の定例ミーティングで Google Docs にテンプレートを追加するという作業をやったことがあるだろうか? あるいは毎回変わるファシリテータをその度に手動で書いたことがあるだろうか? そういう作業は Google Apps Script (GAS) を用いて自動化することが出来る。 GASを動かすのに面倒なサーバ構築はいらない。Googleが用意したエディタでGoogleが用意した関数を使ってJavaScriptを書けば動いてくれる。 毎週テンプレートを追加するような定期的な作業はこれを使うと便利だ。 さあドキュメントを開いて Extensions -> Apps Script からプログラムを書こう。 メニューを追加しよう 特定の場所にテンプレートを挿入しよう スナップショットを取ろう 次のファシリテータを記入しよう メニューを追加しよう Docsはメニューをカスタマイズして独自の

    Docs の独自コマンドはサーバなしで動く。 - freee Developers Hub
  • GASでWebGLあげるためのテンプレート作った - Qiita

    ソース テンプレート自体はGitHubにあげましたので、それをご参照ください。 これ自体は自分のいつも使う環境から、Unity2020・2021に対応できていると思いますが、今後のUnityのアップデートで使用できなくなる可能性はわりとあります。 これを導入して、エラーがあったらこの記事の続きを読み進められることをおすすめします。 使い方 いちおう、このテンプレートの使い方を書いておきます。 1. WebGLビルドする 当たり前ですね。記事のタイトルを見てくれと。 ただ、ビルドの圧縮形式によって少し細かな設定が必要です。 ビルドの圧縮形式は、Project SettingのPlayer項目から参照することができます。 下の画像のうち、Compression Format が圧縮形式の設定項目で、この部分の設定次第で Decompression Fallback を設定する必要があります。

    GASでWebGLあげるためのテンプレート作った - Qiita
  • GASでトークン等を保存しておけるプロパティサービスについてまとめてみた - Qiita

    はじめに 外部APIなどを利用するとき、アクセストークンやシークレットキー、他にもユーザのIDなど、個人の情報が必要になる時があると思います。これらの情報を他人が見えるような場所に書いておくのは、セキュリティの観点から危険です。 Google Apps Script(以後、GAS)では、そういった情報をプロパティサービスという機能を使って、他人には見えないような形で保存しておくことが可能です!今回は、そのプロパティサービスについてまとめていきます! 今回まとめている情報は、GASの公式ガイド、ドキュメントをもとに記載しています。 GASでトークン等を保存しておけるプロパティサービスについてまとめてみた そもそもプロパティサービスとは プロパティサービスとは、特定の情報をkeyとvalueのペアで保存しておける機能のことです。アクセストークンなど、コードに直接記載しないほうがよい情報を保存を

    GASでトークン等を保存しておけるプロパティサービスについてまとめてみた - Qiita
    s_ryuuki
    s_ryuuki 2022/10/28
  • GASでスイッチサイエンスの在庫数を取得して表にまとめてみた - Qiita

    スイッチサイエンスのWebページが更新されて、商品一覧から在庫数を確認しにくくなりました。委託販売をお願いしている自分としては、自分の商品の在庫数を確認したいのですが、これがやりにくくなってしまいました。 そこでGAS (Google Apps Script)の勉強がてらに、Googleスプレッドシートに書いてある商品番号(SKU)の在庫数を取得して在庫数のシートを更新するのをやってみました。方針は単純で、指定したSKUの商品ページをHTMLで取得(そのURLはSKUから機械的に作成できる)し、その中に書いてある在庫数を切り出して記録する、というものです。 まずGoogleスプレッドシートで、調べたいSKUがB列に入っているシートをつくります。わかりやすいようにA列には商品名を書いておきます。 この表に対して、B列に入っているそれぞれのSKUの商品の在庫数を取得してC列に記入するのをGAS

    GASでスイッチサイエンスの在庫数を取得して表にまとめてみた - Qiita
    s_ryuuki
    s_ryuuki 2022/10/22
  • GASをGit管理するならGithubアシスタントとclaspどっちを使うか?

    はじめに Google Apps Script(GAS)をGit管理できると知って調べたところ、Google Apps Script Githubアシスタントとclaspという2ツールが有名なようだったので、それぞれ試した感想や遭遇したハプニングなどをまとめてみました。 この記事が参考になるかもしれない人 これからGASをGit管理しようと思っている人 試したツール 各ツールの説明や導入方法は割愛します。 Google Apps Script GitHubアシスタント clasp Google Apps Script Githubアシスタント Chrome拡張なので導入は一瞬、Github連携もすんなりOKでした。使い方は簡単で、GASエディタ上でリモートリポジトリを選んでブランチを指定してPush,Pullするだけです。GASエディタ上で操作が行えるのは手軽で良さそうです。 ここで、Gi

    GASをGit管理するならGithubアシスタントとclaspどっちを使うか?
  • 【TypeScript + Webpack】今すぐ誰でも、ローカルで GoogleAppsScript の開発を始められるテンプレート (初心者向け) - Qiita

    TypeScript + Webpack】今すぐ誰でも、ローカルで GoogleAppsScript の開発を始められるテンプレート (初心者向け)JavaScriptGoogleAppsScript初心者TypeScriptwebpack 🏰 作ったもの ローカルで TypeScript を使った GoogleAppsScript の開発を 今すぐ・誰でもはじめられるテンプレートです。 ▶︎▶︎▶︎ TypeScriptGoogleAppsScript の開発を始めるテンプレート ◀︎◀︎◀︎ できるだけプロジェクトの内容をシンプルにするために 『TypeScriptGoogleAppsScript の開発をする』 ことに関係のないものはプロジェクト内にほとんど含めていません。 過去の僕がファイル数が多くなると どのファイルが何に効いているのか分からなくなって思考停止して

    【TypeScript + Webpack】今すぐ誰でも、ローカルで GoogleAppsScript の開発を始められるテンプレート (初心者向け) - Qiita
    s_ryuuki
    s_ryuuki 2022/10/11