Ubuntu Server 18.04 aptのproxy設定ファイル

Ubuntu Server 18.04
aptのproxyをどこで設定するかわからなかったのでメモ。

90curtin-aptproxy



設定ファイルは以下のパス
/etc/apt/apt.conf.d/90curtin-aptproxy


$ sudo vi /etc/apt/apt.conf.d/90curtin-aptproxy



以下の記載で設定します。


Acquire::http::Proxy "http://172.16.0.1:8080";
Acquire::https::Proxy "http://172.16.0.1:8080";


KeyExtensionユーザー向け Autohotkeyによるキーバインドの変更

キーボードの「変換」キーとの組み合わせで矢印キーやエンターキーに変換するソフト

Ubuntuでは「窓使いの憂鬱(mayu)」を愛用しています。
Ubuntu 18.04に窓使いの憂鬱をインストールする

Windowでは、「KeyExtension」
変換]+任意キーにカーソルキーなどの機能を割り当てる「KeyExtension」
こちらを利用していたのですが、しばらく更新がなくうまく動作しないアプリケーションも出てきたので
他のソフトを探していたところ、「Autohotkey」を見つけました。
https://www.autohotkey.com/

キーバインドの変更以外に、アプリケーションのランチャー的な使い方もできるようです。


動作



最初、設定画面が存在せず戸惑ったのですがAutohotkeyをインストールすると、
「ahk」というファイルの拡張子に関連付けされ、
作成した「設定ファイル.ahk」をダブルクリックするだけで常駐してくれました。


設定ファイル



キーボードの「変換」キーのコードは「vk1C」となります。
各種サイトを参考に
「変換」+ i で上
「変換」 + jで下
といった設定を行ったものがこちら。

・config.ahk


#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
; #InstallKeybdHook ;ホットキーの設定に無条件でキーボードフックを適応
; #UseHook ;ホットキーラベルの定義で常にフックを使用
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.

vk1C & i::Send,{Blind}{Up}
vk1C & k::Send,{Blind}{Down}
vk1C & j::Send,{Blind}{Left}
vk1C & l::Send,{Blind}{Right}
vk1C & f::Send,{Blind}{Enter}
vk1C & q::Send,{Blind}{Esc}

vk1C & h::Send,{Blind}{BS}
vk1C & /::Send,{Blind}{Del}
vk1C & u::Send,{Blind}{Home}
vk1C & +::Send,{Blind}{End}
vk1C & o::Send,{Blind}{PgUp}
vk1C & p::Send,{Blind}{PgDn}

vk1C & g::Send,{Blind}{-}
vk1C & r::Send,{Blind}{vkF3}
vk1C & e::Send,{Blind}{F2}




今のところこの設定でKeyExtensionと同様の操作性を得られています。

LINE API クイックリプライ付きのメッセージを送信する

LINE APIでメッセージ送信時に「クイックリプライ」を設定することが可能です。
複数の選択肢を表示し、タップした時にトークしたりカメラを起動したり、何かしらの反応をさせることができます。

クイックリプライボタン



サンプルはこのようになりました。


  1. {
  2.     "type": "text",
  3.     "text": "クイックリプライのサンプルです",
  4.     "quickReply": {
  5.         "items": [
  6.             {
  7.                 "type": "action",
  8.                 "imageUrl": "https://symfo.web.fc2.com/sample_src/line/icon1.png",
  9.                 "action": {
  10.                     "type": "message",
  11.                     "label": "人参",
  12.                     "text": "人参です"
  13.                 }
  14.             },
  15.             {
  16.                 "type": "action",
  17.                 "imageUrl": "https://symfo.web.fc2.com/sample_src/line/icon2.png",
  18.                 "action": {
  19.                     "type": "message",
  20.                     "label": "大根",
  21.                     "text": "大根です"
  22.                 }
  23.             },
  24.             {
  25.                 "type": "action",
  26.                 "imageUrl": "https://symfo.web.fc2.com/sample_src/line/icon3.png",
  27.                 "action": {
  28.                     "type": "message",
  29.                     "label": "茄子",
  30.                     "text": "茄子です"
  31.                 }
  32.             }
  33.         ]
  34.     }
  35. }



999_13.jpg

ボタンをタップすると、対応する文字をトークします。
複数の選択肢から1つを選んでもらうときには便利そうですね。

LINE API Push通知で送信できるメッセージまとめ


【参考URL】
こちらからアイコン画像をお借りしました。
http://iconhoihoi.oops.jp/

LINE API テンプレートメッセージを送信する

LINE APIでテンプレートメッセージを送信してみます。
テンプレートには
・ボタン
・確認
・カルーセル
・画像カルーセル
の4種類があるので、1つずつ試してみます。


テンプレートの基本



テンプレートメッセージの共通部分の定義は以下の通りです。

プロパティタイプ必須詳細
typeString必須template
altTextString必須代替テキスト(最大文字数:400)
templateObject必須ボタン or 確認 or カルーセル or 画像カルーセル


altTextに指定した文字がLINEの通知に表示されます。
基本形は以下の通り。


  1. {
  2.     "type": "template",
  3.     "altText": "代替テキスト",
  4.     "template": {
  5.         // この部分がテンプレートの種類により異なる
  6.     }
  7. }



「template」に指定する内容を確認します。



ボタンテンプレート



画像、タイトル、テキストと、ボタンが含まれたテンプレートです。
template内に指定する内容は以下の通り。

プロパティタイプ必須詳細
typeString必須buttons
thumbnailImageUrlString任意画像URL(最大文字数:1000)
https接続必須で、画像形式はjpegかpng
最大横幅サイズ:1024px
最大ファイルサイズ:1MB
imageAspectRatioString任意画像のアスペクト比。rectangleかsquareを指定。
rectangle(default): 1.51:1
square: 1:1
imageSizeString任意画像の表示形式。coverかcontainを指定
cover(default):画像領域全体に画像を表。画像領域に収まらない部分は切り詰め。
contain:画像領域に画像全体を表示。画像サイズが不足する場合は余白が表示される。
imageBackgroundColorString任意画像の背景色。RGB値で設定。デフォルト値は#FFFFFF(白)。
titleString任意タイトル(最大文字数:40)
textString必須メッセージテキスト
画像もタイトルも指定しない場合の最大文字数:160
画像またはタイトルを指定する場合の最大文字数:60
defaultActionアクションオブジェクト任意画像、タイトル、テキストの領域全体に対して設定できる、タップされたときのアクション
defaultActionアクションオブジェクト配列必須タップされたときのアクション
最大件数:4


アクションオブジェクトの詳細はこちらを参照。
アクションオブジェクト

サンプルは以下のようになります。


  1. {
  2.     "type": "template",
  3.     "altText": "代価テキスト",
  4.     "template": {
  5.         "type": "buttons",
  6.         "thumbnailImageUrl": "https://symfo.web.fc2.com/sample_src/line/cover1.jpg",
  7.         "imageAspectRatio": "rectangle",
  8.         "imageSize": "cover",
  9.         "imageBackgroundColor": "#FF0000",
  10.         "title": "Love Live",
  11.         "text": "Please select",
  12.         "defaultAction": {
  13.             "type": "message",
  14.             "label": "defaultAction",
  15.             "text": "defaultActionです"
  16.         },
  17.         "actions": [
  18.             {
  19.                 "type": "message",
  20.                 "label": "action1",
  21.                 "text": "action1です"
  22.             },
  23.             {
  24.                 "type": "message",
  25.                 "label": "action2",
  26.                 "text": "action2です"
  27.             },
  28.             {
  29.                 "type": "message",
  30.                 "label": "action3",
  31.                 "text": "action3です"
  32.             },
  33.             {
  34.                 "type": "message",
  35.                 "label": "action4",
  36.                 "text": "action4です"
  37.             }
  38.         ]
  39.     }
  40. }



999_07.jpg




確認テンプレート



タイトルと、2つのアクションボタンを表示するテンプレートです。
template内に指定する内容は以下の通り。

プロパティタイプ必須詳細
typeString必須confirm
textString必須メッセージのテキスト(最大文字数:240)
actionsアクションオブジェクト配列必須タップされたときのアクション
2つのボタンに1つずつアクションを設定


アクションオブジェクトの詳細はこちらを参照。
アクションオブジェクト

サンプルは以下のようになります。


  1. {
  2.     "type": "template",
  3.     "altText": "代価テキスト",
  4.     "template": {
  5.         "type": "confirm",
  6.         "text": "テキスト領域です。\n改行も可能です。",
  7.         "actions": [
  8.             {
  9.                 "type": "message",
  10.                 "label": "Yes",
  11.                 "text": "yes"
  12.             },
  13.             {
  14.                 "type": "message",
  15.                 "label": "No",
  16.                 "text": "no"
  17.             }
  18.         ]
  19.     }
  20. }



999_08.jpg



カルーセルテンプレート



複数のカラムを表示するテンプレート。
カラムは横にスクロールして順番に表示できます。

プロパティタイプ必須詳細
typeString必須carousel
imageAspectRatioString任意画像のアスペクト比。rectangleかsquareを指定。
rectangle(default): 1.51:1
square: 1:1
すべてのカラムに適用される。
imageSizeString任意画像の表示形式。coverかcontainを指定。
cover(default):画像領域全体に画像を表示。画像領域に収まらない部分は切り詰め。
contain:画像領域に画像全体を表示。不足分は余白を表示。
すべてのカラムに適用される。
columnsカラムオブジェクト配列必須カラムの配列
最大カラム数:10


個々のカラムの指定は以下のとおりです。

プロパティタイプ必須詳細
thumbnailImageUrlString任意画像URL(最大文字数:1000)
https接続必須で、画像形式はjpegかpng
最大横幅サイズ:1024px
最大ファイルサイズ:1MB
imageBackgroundColorString任意画像の背景色。RGB値で設定。デフォルト値は#FFFFFF(白)。
titleString任意タイトル(最大文字数:40)
textString必須メッセージテキスト
画像もタイトルも指定しない場合の最大文字数:120
画像またはタイトルを指定する場合の最大文字数:60
defaultActionアクションオブジェクト任意画像、タイトル、テキストの領域全体に対して設定できる、タップされたときのアクション
actionsアクションオブジェクト配列必須タップされたときのアクション
最大件数:3


アクションオブジェクトの詳細はこちらを参照。
アクションオブジェクト

サンプルは以下のようになります。
各々のカラムに指定するactionsの数は一致させる必要があります。


  1. {
  2.     "type": "template",
  3.     "altText": "代価テキスト",
  4.     "template": {
  5.         "type": "carousel",
  6.         "imageAspectRatio": "rectangle",
  7.         "imageSize": "cover",
  8.         "columns": [
  9.             {
  10.                 "thumbnailImageUrl": "https://symfo.web.fc2.com/sample_src/line/cover1.jpg",
  11.                 "imageBackgroundColor": "#FFFFFF",
  12.                 "title": "タイトル1",
  13.                 "text": "テキスト領域\n改行も可能です。",
  14.                 "defaultAction": {
  15.                     "type": "message",
  16.                     "label": "defaultAction",
  17.                     "text": "defaultActionです"
  18.                 },
  19.                 "actions": [
  20.                     {
  21.                         "type": "message",
  22.                         "label": "action1",
  23.                         "text": "action1です"
  24.                     },
  25.                     {
  26.                         "type": "message",
  27.                         "label": "action2",
  28.                         "text": "action2です"
  29.                     },
  30.                     {
  31.                         "type": "message",
  32.                         "label": "action3",
  33.                         "text": "action3です"
  34.                     }
  35.                 ]
  36.             },
  37.             {
  38.                 "thumbnailImageUrl": "https://symfo.web.fc2.com/sample_src/line/cover2.jpg",
  39.                 "title": "タイトル2",
  40.                 "text": "テキスト領域\n改行も可能です。",
  41.                 "actions": [
  42.                     {
  43.                         "type": "message",
  44.                         "label": "action1",
  45.                         "text": "action1です"
  46.                     },
  47.                     {
  48.                         "type": "message",
  49.                         "label": "action2",
  50.                         "text": "action2です"
  51.                     },
  52.                     {
  53.                         "type": "message",
  54.                         "label": "action3",
  55.                         "text": "action3です"
  56.                     }
  57.                 ]
  58.             },
  59.             {
  60.                 "thumbnailImageUrl": "https://symfo.web.fc2.com/sample_src/line/cover3.jpg",
  61.                 "title": "タイトル3",
  62.                 "text": "テキスト領域\n改行も可能です。",
  63.                 "actions": [
  64.                     {
  65.                         "type": "message",
  66.                         "label": "action1",
  67.                         "text": "action1です"
  68.                     },
  69.                     {
  70.                         "type": "message",
  71.                         "label": "action2",
  72.                         "text": "action2です"
  73.                     },
  74.                     {
  75.                         "type": "message",
  76.                         "label": "action3",
  77.                         "text": "action3です"
  78.                     }
  79.                 ]
  80.             }
  81.         ]
  82.     }
  83. }



999_09.jpg

999_10.jpg




画像カルーセルテンプレート



複数の画像を表示するテンプレート。
画像は横にスクロールして順番に表示できます。

プロパティタイプ必須詳細
typeString必須image_carousel
columnsカラムオブジェクト配列必須カラムの配列
最大カラム数:10


カラムオブジェクトに指定する内容は以下のとおり。

プロパティタイプ必須詳細
imageUrlString必須画像URL(最大文字数:1000)
https接続必須で、画像形式はjpegかpng
縦横比:1:1
最大横幅サイズ:1024px
最大ファイルサイズ:1MB
actionアクションオブジェクト必須タップされたときのアクション


アクションオブジェクトの詳細はこちらを参照。
アクションオブジェクト

サンプルは以下のようになります。


  1. {
  2.     "type": "template",
  3.     "altText": "代価テキスト",
  4.     "template": {
  5.         "type": "image_carousel",
  6.         "columns": [
  7.             {
  8.                 "imageUrl": "https://symfo.web.fc2.com/sample_src/line/cover1.jpg",
  9.                 "action":{
  10.                     "type": "message",
  11.                     "label": "カルーセル1",
  12.                     "text": "carousel1です"
  13.                 }
  14.             },
  15.             {
  16.                 "imageUrl": "https://symfo.web.fc2.com/sample_src/line/cover2.jpg",
  17.                 "action": {
  18.                     "type": "message",
  19.                     "label": "カルーセル2",
  20.                     "text": "carousel2です"
  21.                 }
  22.             },
  23.             {
  24.                 "imageUrl": "https://symfo.web.fc2.com/sample_src/line/cover3.jpg",
  25.                 "action": {
  26.                     "type": "message",
  27.                     "text": "labelは省略可能です"
  28.                 }
  29.             }
  30.         ]
  31.     }
  32. }



999_11.jpg

999_12.jpg


LINE API Push通知で送信できるメッセージまとめ

LINE API 位置情報メッセージを送信する

LINE APIで位置情報メッセージを送信する際のmessage部分

プロパティタイプ必須詳細
typeString必須location
titleString必須タイトル(最大文字数:100)
addressString必須住所(最大文字数:100)
latitudeDecimal必須緯度
longitudeDecimal必須経度


東京駅の位置情報を送信するサンプルは以下のようになりました。


  1. {
  2.     "type": "location",
  3.     "title": "東京駅",
  4.     "address":"東京都千代田区丸の内1丁目9",
  5.     "latitude": 35.6812362,
  6.     "longitude":139.7649308
  7. }



999_05.jpg

タップすると地図が表示されます。

999_06.jpg


LINE API Push通知で送信できるメッセージまとめ

プロフィール

Author:symfo
blog形式だと探しにくいので、まとめサイト作成中です。
Symfoware まとめ

PR




検索フォーム

月別アーカイブ