Google Apps Scriptで 乗り越える ギリギリ環境・学校ICT支援編 2025/01/25 Niigata5分Tech #15 With PHP勉強会in新潟
GAS高速化のススメ はじめに こんにちは。サクセスエンジニアリングチームの増田です。 今年の8月に入社して早4か月が経ちました。 入社エントリも公開していますので良ければ見ていってください note.nealle.com 最近週4でカレーばっか食ってます。 美味しいカレーの後がけスパイスやソースなどあればぜひ教えていただきたい...! GASについて みなさん普段から業務でGAS(Google Apps Script)利用されてますでしょうか。 GASは知っての通りセットアップ不要で使え、Googleサービス(Google Sheets、Gmail、Driveなど)への認証が標準で組み込まれている非常に便利なツールです。非エンジニアでも扱いやすく、業務効率化の手段として広く活用されています。 GASのデメリットと課題 そんな便利なGASですが多くの制限が存在します。 その中でも代表的なも
「Happy Elements Advent Calendar 2023」 12月5日の記事です。 はじめに Happy Elements株式会社のカカリアスタジオでゲームエンジニアをしているtommyです。今年、カカリアスタジオからカジュアル恋愛ノベルゲーム「六ツ獄恋いろは」をリリースしました。その開発において私はメインエンジニアを務めました。 「六ツ獄恋いろは」は、スマホでカジュアルにあやかしたちとの学園での恋愛を楽しめる恋愛ノベルゲームです。 ノベルゲームという性質上「六ツ獄恋いろは」は大量のシナリオを含んでおり、全てに演出を付けていく必要がありました。「六ツ獄恋いろは」では主にスクリプト専任担当とライターの二人で演出付けが行われており、少人数で大量のシナリオデータ化作業を捌くためにできるだけ効率よく行う必要があると考えました。 そこで、Unity上や開発用アプリから直接スプレッドシ
はじめに GPTsのCustom Actions(カスタムアクション)をつかって、外部のAPIを呼び出して、データを取得することができるようになりました。 たとえば、郵便番号検索APIを呼び出して、ユーザーから入力された住所から、郵便番号を回答するGPTを作ることができます。 詳細についてはこちら。 この記事では、Custom Actionsから呼び出されるAPIを、Google Apps Scriptを使って無料で作る方法について説明します。 この記事はこちらのYouTube動画でご紹介いただいております。 この記事の対象者 GPTsのCustom ActionsのAPIを自作したい方 Google Apps Scriptで簡単なスクリプトを作ったことがある方 Zapierの連携よりも複雑な処理を求めている方 APIの概要 シーケンス図で表現しました。 "Google Apps Scri
はじめに 下記の記事でアドオンを作りましたが、これをドメイン内ユーザーに配布する記事になります。 ドメイン内ユーザーへの配布も一般公開用のアドオン配布とほとんど一緒で、Google Workspace Marketplace SDK を使います。 流れとしては下記のようになります。 GASを作成 Google Cloud プロジェクトを作成 GAS と Google Cloud プロジェクトを紐づけてデプロイ Google Workspace Marketplace SDK の設定とインストール ※ 本手順は特権ユーザーで作業しないと強制配布はできず手動でインストールして貰う形になります GASを作成 この記事で作ったものを流用するのでスキップします。(コードを書き換える必要はありません) Google Cloud プロジェクトを作成する https://console.cloud.goo
前提clasp の制約、Script API の考え方、Google Drive の考え方に素直に従うその条件下である程度モダンな開発環境での開発を目指す 可能ならコードは VCS で管理する(pull-req など)ドキュメントベースで共同作業に向いた手法で開発を進める特にカジュアルに始めやすい Google Apps Script は悪い意味での属人化まっしぐらになりやすい。これが長期間の業務に影響しないような、ワンショットのものなら別にそれでもよいが、これが誰かに引き継がなければいけないような状況が生まれると一気に地獄みが増してしまうので、そうなってしまう前により良い開発手法を考えておきたい。 考慮したことGAS は素朴に作ると Script 本体の構造がそれを利用する container (例えば Spreadsheet)のデータ構造などと密結合になってしまう。この状態のままコード
発端はこれです。 構成 構成要素としては以下の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.
Google Apps Scriptの環境構築をVSCode上で行う方法について詳しく解説していきます。clasp,asideを使って構築するので、爆速で構築できます。 ことのはじまり 私は最近Google Apps Script(GAS)の学習を始めました。 GASの学習を始めると、まずはAppsScript公式のIDEでスクリプトを書いていくことになると思います。 しかし、普段VSCodeを使い慣れている身からすると、VSCodeの便利機能が使いたくて仕方なくなります。 それじゃあ、使い慣れたVSCodeを使おうじゃないか!! AppsScript公式のIDEだとGitに差分を残していくこともできないぞ!!(できます) というわけで、GASをVSCodeを使って開発する為の環境構築の手順を書いていきたいと思います。 前提条件 VSCodeがインストールされている Node.jsがインス
技術記事は 個人ブログ へお引越ししました。 興味を持ってくださった方はZennではなくこちらをご購読いただければと思います🙏 はじめに idea カテゴリで投稿するか迷いましたが、一応 ChatGPT へリクエストを投げる GAS のコードも紹介しているので、tech 記事で投稿することにしました。 ほしかったもの Qiita には急上昇記事を紹介する公式アカウントが存在しています。 が、Zenn には公式のそれが存在していませんでした。 一応公式アカウントがピックアップとして紹介しているものの、おそらく手動。(そう思うのは、GW 前から更新が止まっているから) とにかく一番欲しかったものは、Zenn の人気記事を数時間間隔で教えてくれるなにかでした。 そしてどうせなら Qiita の記事も紹介する機能をつけようと思いました。 "なにか"には Slack や LINE bot という選
この記事でわかること 今回の記事は、GASを用いて採用関係のメール受信時に、Slackに通知するアプリを作成するためのものです。 1つの記事で機能を全てまとめてみました。詳しくは以下の項目をご覧ください。 GASでのGMail、slack連携 SlackAPIの基本設定 GASでのトリガー設定 機能実装方法 SlackAPIの設定 1. SlackAPIのリンクにアクセスし、新しいSlackアプリを作成する。 2. スコープ&パーミッション設定を行う。 3. Slackボットを追加し、ワークスペースにインストールする。 以下の記事を参照していただくと、ここまでの手順が詳細に書いてあります。 GASの設定 GASの新規プロジェクトを立ち上げ、 SlackAppのスクリプトID(1on93YOYfSmV92R5q59NpKmsyWIQD8qnoLYk-gkQBI92C58SPyA2x1-bq)
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ドルです。 また、チャット以外の多くの
はじめに 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 というファイルが必要なので以
👨🏻💻やり方 全体の流れ SlackAppを作る【Slack】 チャンネルにAppを追加【Slack】 スクリプトプロパティを追加【GAS】 GASを書く【GAS】 トリガーの設定【GAS】 権限の設定【GAS】 分けて説明していくのでよしなに読み飛ばしてください〜 1. SlackAppを作る【Slack】 https://api.slack.com/apps にアクセス →「Create New App」 →「From Scratch」 →「AppName」に任意のapp名&「Pick a workspace to develop your app in:」に追加したいワークスペースを入力 →「Create App」でアプリ作成 「Add features and functionality」で「Permissions」を選択 →ページ中段にある「Scopes」の「Bot To
注意事項 かなり高度なGASの使い方なのである程度GWS(Googleフォームやスプレッドシート)やGASをわかってる方前提で書いていますので結構省略しているとこも多いです。 あと作った後に手順を書いているのでなにか抜け漏れあったらごめんなさい。 まだ作ってみただけで実際に運用はしてないのでテスト等も不十分かも。運用してからまた追記します。 コードは直接スクリプトエディタでサクッと作ったサンプルです、実際はローカルでLintかけたりするのでインデントおかしかったりしても許してください。 背景 GWSを使う際にマイドライブで外部共有可能にするとやりたい放題なのでセキュアな環境とは言い難くなる。 また組織のファイルをマイドライブにおいてしまうとファイルオーナーが退職したときの扱いに困る。上長に移管したり、退職者アカウントに移管するのが一般的かと思うが、移管するということはマイドライブのファイル
毎週の定例ミーティングで Google Docs にテンプレートを追加するという作業をやったことがあるだろうか? あるいは毎回変わるファシリテータをその度に手動で書いたことがあるだろうか? そういう作業は Google Apps Script (GAS) を用いて自動化することが出来る。 GASを動かすのに面倒なサーバ構築はいらない。Googleが用意したエディタでGoogleが用意した関数を使ってJavaScriptを書けば動いてくれる。 毎週テンプレートを追加するような定期的な作業はこれを使うと便利だ。 さあドキュメントを開いて Extensions -> Apps Script からプログラムを書こう。 メニューを追加しよう 特定の場所にテンプレートを挿入しよう スナップショットを取ろう 次のファシリテータを記入しよう メニューを追加しよう Docsはメニューをカスタマイズして独自の
ソース テンプレート自体はGitHubにあげましたので、それをご参照ください。 これ自体は自分のいつも使う環境から、Unity2020・2021に対応できていると思いますが、今後のUnityのアップデートで使用できなくなる可能性はわりとあります。 これを導入して、エラーがあったらこの記事の続きを読み進められることをおすすめします。 使い方 いちおう、このテンプレートの使い方を書いておきます。 1. WebGLビルドする 当たり前ですね。記事のタイトルを見てくれと。 ただ、ビルドの圧縮形式によって少し細かな設定が必要です。 ビルドの圧縮形式は、Project SettingのPlayer項目から参照することができます。 下の画像のうち、Compression Format が圧縮形式の設定項目で、この部分の設定次第で Decompression Fallback を設定する必要があります。
はじめに 外部APIなどを利用するとき、アクセストークンやシークレットキー、他にもユーザのIDなど、個人の情報が必要になる時があると思います。これらの情報を他人が見えるような場所に書いておくのは、セキュリティの観点から危険です。 Google Apps Script(以後、GAS)では、そういった情報をプロパティサービスという機能を使って、他人には見えないような形で保存しておくことが可能です!今回は、そのプロパティサービスについてまとめていきます! 今回まとめている情報は、GASの公式ガイド、ドキュメントをもとに記載しています。 GASでトークン等を保存しておけるプロパティサービスについてまとめてみた そもそもプロパティサービスとは プロパティサービスとは、特定の情報をkeyとvalueのペアで保存しておける機能のことです。アクセストークンなど、コードに直接記載しないほうがよい情報を保存を
スイッチサイエンスのWebページが更新されて、商品一覧から在庫数を確認しにくくなりました。委託販売をお願いしている自分としては、自分の商品の在庫数を確認したいのですが、これがやりにくくなってしまいました。 そこでGAS (Google Apps Script)の勉強がてらに、Googleスプレッドシートに書いてある商品番号(SKU)の在庫数を取得して在庫数のシートを更新するのをやってみました。方針は単純で、指定したSKUの商品ページをHTMLで取得(そのURLはSKUから機械的に作成できる)し、その中に書いてある在庫数を切り出して記録する、というものです。 まずGoogleスプレッドシートで、調べたいSKUがB列に入っているシートをつくります。わかりやすいようにA列には商品名を書いておきます。 この表に対して、B列に入っているそれぞれのSKUの商品の在庫数を取得してC列に記入するのをGAS
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く