質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.33%

  • Google Apps Script

    951questions

    Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

  • LINE Messaging API

    171questions

  • ChatWork

    21questions

    業務の効率化を目的としたコミュニケーションツール。 グループチャット、ビデオ・音声通話、ファイル共有、タスク管理などの機能を備えています。マルチデバイス対応で、ブラウザだけでなくタブレットやスマートフォンでも利用可能です。

LINE notify メッセーじが途中で切れてしまう

解決済

回答 3

投稿

  • 評価
  • クリップ 0
  • VIEW 508

lazyAnt

score 4

ほんとうに初歩的なことだと思うのですが
自分なりにGoogleで検索をいろいろ掛けたのですがわからなかったので質問させていただきます。

前提・実現したいこと

amazon・楽天・Yahooで商品購入後にショップから届くメールをGmailで受信しています。
発送日や出荷日などの通知メールが届いたら内容を抜粋し、「LINE Notify + Google Apps Script」を用いてLINEへ通知させる仕組みを作りたいと考えています。

その中で、下記リンクを参照して
配達業者を拾ってダイレクトに追跡用URLをつけるようにしています。
https://qwerty.work/blog/2009/09/url.php

「Google Apps Script + Chatwork」では実装がうまくできたのですが、
Lineへの通知の場合、文字列中に「&」が入っているとそれ以降の文字が切れてしまいます。
イメージ説明

本来は下記のリンクの末尾に追跡番号がくっつくようになります。
http://tracking.post.japanpost.jp/service/singleSearch.do?org.apache.struts.taglib.html.TOKEN=&searchKind=S002&locale=ja&SVID=&reqCodeNo1=

試したこと

LINE Notify API Documentを読んでは見てみたのですが
JSON形式でPOSTするということはわかったのですが
なぜ&で途切れてしまうのか、特殊文字に置き換えたらそのまま表示されてしまうし
いきずまってしまっております。

きっと、すごく初歩的なことなのだと思うのですが何卒ご教示の程よろしくお願いいたします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

+2

既に解決済みですが、url をGoogle URL Shortener APIなど使って短縮させてみてはどうでしょうか。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

check解決した方法

0

LINEに問合せしましたが個別の回答はできかねるということで
今回は致し方なく直接のPOSTをあきらめました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

function myFunction() {
  var today = new Date();//GASサーバより日付時刻の取得「
  var f_today = Utilities.formatDate(today,'Asia/Tokyo','M月d hh時mm分'); //Dateのフォーマットの変更
  var api_url = 'https://notify-api.line.me/api/notify';
  var accessToken = ''; //ここにアクセストークンを入力

  var write_message = '\n----------\n'+
    '明日は○○を☓☓して▲△で■□で◆◇です。\n本日は晴天なり。\nリンゴ&バナナ\n'+
    '\n\n----------\n送信日時:\n'+f_today;

  var options = {
    'method' : 'post',
    'headers': {
      'Content-Type': 'application/x-www-form-urlencoded',
      'Authorization': 'Bearer ' + accessToken

    },
    'payload' : {
      'message': write_message
    }
  };
  Logger.log('送信されたメッセージ⇒'+write_message);
  var response = UrlFetchApp.fetch(api_url, options);
  Logger.log(response);
  Logger.log(today);
}


私はプログラム初心者ですがLINE notifyでこれだと、&(半角)でも大丈夫でした。
\nは改行です。
私は心配性なのであちこちにLogger.log();がありますが無視してください。
このスクリプト実行後のしゃしんは以下になります。
実行後LINE画面

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

同じタグがついた質問を見る

  • Google Apps Script

    951questions

    Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

  • LINE Messaging API

    171questions

  • ChatWork

    21questions

    業務の効率化を目的としたコミュニケーションツール。 グループチャット、ビデオ・音声通話、ファイル共有、タスク管理などの機能を備えています。マルチデバイス対応で、ブラウザだけでなくタブレットやスマートフォンでも利用可能です。