タグ

ブックマーク / qiita.com (152)

  • LINE WORKSで初めてのBot開発!(前編) - Qiita

    LINE WORKSでBotを開発してみたい!ということで、今までBotを開発したことがない方向けに、手順を紹介したいと思います。 プログラミング初心者の方でも(多分)気軽にチャレンジできる内容になっていると思いますので、是非試してみてください^^ LINE WORKSってそもそもなーに?って方はこちら→LINE WORKS また、この記事は、前編・後編に分かれています。 後編はこちら→ LINE WORKSで初めてのBot開発!(後編) 出来上がりイメージ 今回の記事は、トークでつぶやかれたメッセージをそのまま投稿し返すBotを作ります。 出来上がりはこんな感じです。 BotサーバーとしてHeroku、言語はNode.jsを使います。 あと、Macでの開発方法を紹介しています。Windows版も書いて!という方はコメントください。 Developer ConsoleでAPIを使うための設

    LINE WORKSで初めてのBot開発!(前編) - Qiita
  • 〇〇したらLINE WORKSへ通知する、それIFTTTで - Qiita

    今回のお題 年末に同僚とランチしていた時に、こんな相談を受けました。 「TwitterLINE WORKSについて呟かれたら、LINE WORKSへ通知する」を実現してみようと思います。IFTTTを使って!!!! こんなTweetがあったら、 こんな感じで、LINE WORKSへ通知したいと思います。 同様の手順で下記のような要件にも対応可能です! Google Calendar(Office365カレンダー)に新しい会議が作成されたら、LINE WORKSへ通知する TrelloにToDoが追加されたら、LINE WORKSへ通知する Slackに通知があったら、LINE WORKSへ通知する(おっと?!) Boxにファイルをアップロードされたら、LINE WORKSへ通知する etc ところで、IFTTTって? IFTTTは、If This Then Thatの略で、Google,T

    〇〇したらLINE WORKSへ通知する、それIFTTTで - Qiita
  • コミュファ光でRTX830を使ったIPv4/IPv6デュアルスタック接続 - Qiita

    VPN環境を構築したい場合、標準レンタルされてくるHGWが邪魔になることが多い。 コミュファではeo光のようにオプションではなく、強制設置のため外せない。 そのため、HGWに外部ルーター(RTX830) をPPPoEブリッジで接続する。 さらにこの状態で、RTXからIPv6も通信できるようにする。 なお、コミュファによるとHGWのPPPoEブリッジでは「IPv4接続に限った利用しかサポートしていない」とのこと。 前提 コミュファの接続方式は、PPPoE接続である。 コミュファのIPv6に関する技術仕様は、シングルセッションデュアルスタック方式である。 環境 回線: コミュファ光 ホーム 1G HGW: Aterm WH862A ルータ: YAMAHA RTX830 (Rev.15.02.17) RTX側からHGWの管理画面を見に行けるようにしておく 例)HGW IP: 192.168.0.

    コミュファ光でRTX830を使ったIPv4/IPv6デュアルスタック接続 - Qiita
  • iPadを開発機にするまでの道のり~コンテナを用いた開発環境の構築~ - Qiita

    はじめに 業務ではmacOSを使っているのですが、プライベートでは休日にカフェを転々としながら作業をするため、バッテリーの持ちがよく、軽い開発機が欲しくなりました。 私がしたい事としては、開発で利用するマシンへのSSH接続とブラウジングの二つ。 iOSアプリやAndroidアプリといったモバイル機の開発はせず、SSHしてつないだマシン上でDockerKubernetesでごにょごにょすることがほとんどです。 なので、軽くてめっちゃバッテリーのもつブラウジングできるSSH用端末が欲しかったわけです。 ブラウジングできるという要件は調べ物のため以外に、開発で利用するマシンでHTTPポート等を公開した場合に、そこへブラウザでアクセスして確認するためです。 そこで私はiPad Proを選択しました。 iPadを開発機に使うということ iPadで開発をしたいと考える人は世の中に他にもいるようで、ヤ

    iPadを開発機にするまでの道のり~コンテナを用いた開発環境の構築~ - Qiita
  • M1 Macを購入したのでセットアップ&zsh環境をいい感じにした - Qiita

    先日のApple Eventでも Mac Studio や iPad Air(第5世代) が発表され、いよいよ Apple M1チップ がデファクトスタンダードになったなあと感じています。自分もこれまで、業務用PCとしてMacBook Pro 2017を使っていたのですが、悪名高いバタフライキーボードの破損をきっかけに MacBook Air(M1) を購入してもらいました。 さっそく業務で使用していくためにセットアップをしたのですが、やはりIntelチップとの違いに戸惑ったので備忘録としてまとめます。この記事は元々社内のナレッジに書く予定だったのですが、自分自身QiitaやZennの記事にかなり助けられました。この記事も今後M1 Macをセットアップする人の役に立てばと思っています。 MacOSの基的な設定を使いやすく変更する 購入したばかりのMacはDockに大量のアプリが登録されて

    M1 Macを購入したのでセットアップ&zsh環境をいい感じにした - Qiita
    fujimogn
    fujimogn 2022/03/13
  • Python Selenium 動的なダウンロード完了待機 - Qiita

    はじめに Seleniumを利用してファイルをダウンロードする際に、完了するまでの待機を考えなければなりません。 よくあるエラーや課題として以下のようなものが有るかとおもいます。 ・ダウンロードが完了しておらず、ファイルを扱おうとしたらエラーになった ・通常は数秒でダウンロード出来るけれど、余裕をもって15秒待機したり、余計な待機時間がある そこで ・ダウンロード完了したらすぐに後続処理が開始される ・待機のタイムアウト時間を1秒単位で設定できる ・タイムアウト時のエラーハンドリングも出来る そんな待機処理を作ってみました。 環境:Windows10, Python3.8.3, Selenium3.141.0 ブラウザ:GoogleChrome ChromeDriver83.0.4103.39 Chromeのダウンロード仕様 今回の機能を実装するにあたり、GoogleChromeの仕様(2

    Python Selenium 動的なダウンロード完了待機 - Qiita
  • RuboCop と共存してくれそうなフォーマッターを探す旅 - Qiita

    はじめに RuboCop はオートフォーマットが貧弱なので、JavaScript で言う所の ESLint + Prettier みたいに RuboCop と何かフォーマッターを組み合わせて運用したくなりました。 で、探してみたところ Rufo と Prettier が使えそうだということで、それについて以下に記述します。 ちなみに、平成.rb #6にてこの内容の発表した時のスライドはこちらです。 そもそもフォーマッター要る? では、そういう問題がありながら、そもそもなぜ、コーディングに規約を設けようなどと思うのか。その目的の1つは「誰も、自分の書いたコードを「私物化」できないようにする」ということです。みんなが、自分の担当部分のコードを好き勝手な形式で書くと、どうしてもその箇所はその人のコードになってしまいます。逆に、その箇所も均一な形式で書いてあれば、私物化という事態にはなりにくいでし

    RuboCop と共存してくれそうなフォーマッターを探す旅 - Qiita
    fujimogn
    fujimogn 2022/03/01
  • HTMLメールで<img>要素にsvg画像は使えない - Qiita

    タイトルのとおりです。 多くのメールクライアントは、 HTMLメールで <img src="a.svg"> のように書いても画像を表示してくれません。 インライン画像もダメです。 現時点ではpngなどを使うのが無難なようです。

    HTMLメールで<img>要素にsvg画像は使えない - Qiita
    fujimogn
    fujimogn 2022/02/26
    あーなるほ
  • React UIフレームワークのトレンド比較 - Qiita

    概要 React.jsのUIフレームワークを選定するにあたり、 以下の記事を参考に、いくつかのUIフレームワークのGitHub Starの数とNPMダウンロード数を比較しました。 Github Starの数 Name Github Star URL

    React UIフレームワークのトレンド比較 - Qiita
  • localhostで開発中にGoogle Chromeで「この接続はプライバシーが保護されません」が出たときの対処法【NET::ERR_CERT_INVALID】 - Qiita

    localhostで開発中にGoogle Chromeで「この接続はプライバシーが保護されません」が出たときの対処法【NET::ERR_CERT_INVALID】Chrome ローカル環境(localhost)で開発中にGoogle Chromeで「この接続はプライバシーが保護されません」という表示が出たときの対処法です。 【NET::ERR_CERT_INVALID】 詳細設定をクリックする 詳細設定をクリックすると下記のように詳細情報が表示されます。 詳細情報が表示された状態で【thisisunsafe】と打つ 詳細情報が表示された状態で、thisisunsafeとキーボードで打ちます。 そうすると、接続ができるようになります。 ローカル環境(localhost)でssl化したときに少しハマったのでまとめました。

    localhostで開発中にGoogle Chromeで「この接続はプライバシーが保護されません」が出たときの対処法【NET::ERR_CERT_INVALID】 - Qiita
  • rubyで時刻だけのオブジェクトを扱いたい。そんな時は多機能なgem todを使おう。 - Qiita

    ちょっとテンションが上がってしまったのでTodについてまとめました。 多機能なTod::TimeOfDay todをインストールするとTod::TimeOfDayクラスが使えるようになります。 時刻のパース 比較 フォーマット出力 演算 その他ちょろちょろ Railsのシリアライズもサポートしてるよ! と、こんな機能を提供してくれます。 インストールも簡単

    rubyで時刻だけのオブジェクトを扱いたい。そんな時は多機能なgem todを使おう。 - Qiita
  • Ruby/Railsで土日+祝日+α営業日計算 - Qiita

    # 2000/1/1から翌年末までの営業日を範囲とする start_date = Time.zone.parse('2000-01-01 00:00:00') end_date = Time.zone.now.next_year.end_of_year # 営業日計算ライブラリの営業時間を終日に指定 BusinessTime::Config.beginning_of_workday = "00:00:00 am" BusinessTime::Config.end_of_workday = "11:59:59 pm" # 営業日計算ライブラリへ日の祝祭日情報を読み込み HolidayJp.between(start_date, end_date).each{|h| BusinessTime::Config.holidays << h.date } # 追加で独自の年末年始休暇を取り込み #

    Ruby/Railsで土日+祝日+α営業日計算 - Qiita
  • 【arrayformula()対応版】Google Spreadsheet 半角から全角に変換 - Qiita

    @ssmxgo さんの記事に、 https://qiita.com/ssmxgo/items/2bc510c6cec91badd332 ミラクル素敵な関数 「toFullWidth()」を見つけました。 arrayに非対応だったため、arrayformula()で処理できなかったので、 ちょい足ししたものを公開させていただきます: // こちらを拝借させて頂きました function toFullWidthSingle(value) { if (!value) return value; return String(value).replace(/[!-~]/g, function(all) { return String.fromCharCode(all.charCodeAt(0) + 0xFEE0); }); } // アレイ対応にしました function toFullWidth(a

    【arrayformula()対応版】Google Spreadsheet 半角から全角に変換 - Qiita
  • Active Storageにも、1対1対応のモデルを作ったほうがいいかも - Qiita

    Rails 5.2から、Active Storageという、ファイルアップロードの機能が標準装備されましたが、そのまま使おうとしたところ、微妙に気になる点がありました。 Active Storageの便利な点 今までPaperclipなどのサードパーティーのGemを使っていたのですが、以下のような点を自前で実装する必要がありました。 S3でprivate保管していると、画像表示用に生成したpresigned URLが期限切れするという問題があるので、いったんRailsを経由させてS3のURLにリダイレクトさせる必要がある オンデマンドに適切なサイズのサムネイルを生成するのが難しい Active Storageであれば、こういった引っかかりやすい箇所も標準で備えていて、しかも「複数オリジンの並行運用」なんてことまでこなせてしまいます。 使い方について Active Storageは専用のデー

    Active Storageにも、1対1対応のモデルを作ったほうがいいかも - Qiita
    fujimogn
    fujimogn 2022/01/24
  • モデルやメソッドに名前を付けるときは英語の品詞に気をつけよう - Qiita

    はじめに 他の人が書いたコードを読んでいるときに時々気になるのが、英語の間違いです。 特に動詞、名詞、形容詞の使い分けが間違っていたりすると、かなり違和感を感じます。 そこで今回はモデル(=クラス)やメソッドに名前を付けるときの基的な原則をまとめてみます。 また、英文法的に正しい品詞が選べるようになるための習慣についても最後に説明します。 想定する言語/フレームワーク この記事の説明ではRuby/Ruby on Railsを想定しています。 ただし、基的な考え方は他の言語でも同じように使えるはずです。 モデルの名前は名詞にする 例: 「支払い情報」を表すモデルを作りたい場合 × Pay ○ Payment 「支払う = payか。よし。」でモデルを作ってはいけません! payは動詞で、payの名詞形がpaymentです。 Payモデルではなく、Paymentモデルを作りましょう。 例:

    モデルやメソッドに名前を付けるときは英語の品詞に気をつけよう - Qiita
  • gem configを理解する ~ configを使った定数管理の方法 - Qiita

    背景 Railsの課題を実施しています。途中で、「定数の管理にはgem configを使いましょう」という指示がありました。「定数管理」という概念がなかったのと、初めて知るgemだったので、調べたことをまとめています。 なぜ、定数を管理する必要があるのか? 調べたところによると、 環境ごとに違う定数を用いたい いろいろなところに散らばる定数をまとめたい というような時に定数管理を用いるそうです。特に大規模アプリケーションだと必要なのだとか。 定数を管理するgemは数多くあり、パッと調べた限りでも以下のものが出てきました。 config Settingslogic gem を使わず、自分で設定ファイルと作られたという方もいました! 【Ruby on Rails】 gem を使わないで環境毎に定数管理をする そのぐらい「定数管理」は必要な概念なんですね〜 configの特徴 上記で取り上げた2

    gem configを理解する ~ configを使った定数管理の方法 - Qiita
  • Javascriptで帳票印刷したい - Qiita

    Vue.jsを利用したWebシステムで帳票印刷する必要がありました。 方法がいくつかあり、検討した知見を紹介します。 背景 フロントはVue.jsを利用したSPA 指定条件を入力しビジネスの統計情報を画面表示する 集計、グラフを伴う 統計画面上の「印刷」ボタンを押下すると帳票印刷 or PDFダウンロードする ビジネスレポートは複数ページに渡る 数値の集計表、グラフなどを伴う ヘッダ/フッタなどの体裁はこだわらない また、画面ページ上の統計情報と印刷ページ上の統計情報は同じ情報であり、 開発コスト低減のために可能であれば、集計表、グラフなどの画面表示用コンポーネントを流用して帳票をレイアウトしたい状況です。 方式検討 実現方式は以下のように複数考えられますが、 最終的には「ブラウザの印刷機能でPDF保存」させる方法を採用しました。 サーバサイドでPDFファイルを生成 テンプレートPDFを元

    Javascriptで帳票印刷したい - Qiita
  • Google Spreadsheets 漢字に読み仮名(ひらがな・カタカナ)を付けるカスタム関数を作った - Qiita

    これはなに? いわゆるMicrosoft Excelで言うところのPHONETIC関数です。 漢字を含むテキスト・セルを指定することで、読み仮名を出力することができます。読み仮名はひらがなのふりがなでもカタカナのフリガナでも大丈夫です。 典型的な利用シーンとしては、住所録で氏名の読み仮名を自動で(それなりに)ふりたい、というシーンがあります。ちょうど年賀状シーズンの住所録でふりがなが必要になったりしていると思いますが、ローカルのExcelではなくGoogleスプレッドシートで管理している方も多いでしょう。ExcelにはPHONETIC関数があるのにGoogleスプレッドシートには同様の機能が無いのです。 機能 漢字を含むテキスト(セル)をひらがなへ変換 =HIRAGANA(input) 漢字を含むテキスト(セル)をカタカナへ変換 =KATAKANA(input) フラグで変換先(ひらがな/

    Google Spreadsheets 漢字に読み仮名(ひらがな・カタカナ)を付けるカスタム関数を作った - Qiita
  • macOSでディスプレイ1枚で作業する技術 - Qiita

    今まで、自宅・職場では外部ディスプレイを使って作業をしてましたが最近はRoostを使い始めて、家でも外でもRoostと外部キーボード、マウスで仕事するようになりました。これで肩の痛みが激減したので下を向いて作業する時間が多いと首の筋肉に引っ張られて肩が凝るみたいですね。 ここできになるのはディスプレイ1枚だと画面切り替え大変じゃないのってところなのですが、以前 @reoring さんに教えてもらって自分にすごいフィットしたので共有しておきます。あまりmacデスクトップについての記事がないような。 [追記2020/11/16] macOS 11.0 Big Sur(Intel) で動作確認できました。Total Spaces2をBig Surより前から使っている場合は最新版(v2.9.6~)を再インストールする必要があります。 TL;DR デスクトップを10画面作成する ショートカットキー

    macOSでディスプレイ1枚で作業する技術 - Qiita
    fujimogn
    fujimogn 2020/01/30
  • GoogleスプレッドシートのQuery関数で結果が空になる謎仕様と回避策 - Qiita

    Query関数とは Googleスプレッドシートのワークシート関数にQueryというのがあって、これがSQL風の記述で他のセルや配列から条件に合った者を抽出できて超便利。HLOOKUP,VLOOKUPとかより遙かに柔軟性がある。もちろんIMPORTRANGEとも組み合わせて使える。 結果が空になる問題 しかし、時々絶対存在するはずのクエリ結果が空になる謎現象に悩まされてた。 なかなか原因が判明しなかったが、色々調べた結果、この記事にたどり着いた。 QUERY will convert columns with mixed data types into one data type. If the data is mostly numerical values, then text strings (eg 1-2 in your data) will be converted to blan

    GoogleスプレッドシートのQuery関数で結果が空になる謎仕様と回避策 - Qiita