2018年8月27日月曜日

Taskerのトーストをカスタマイズする

Taskerを使ってると色んな情報をトースト表示する。
でもゲームしてる時は非表示にしたかったりする。
そのためトースト表示の前に表示するか判定する処理を作る。

特殊なことはしない。トーストステートをon/offを切替るだけ。

setタスク

getタスク

実際にトーストを表示するタスク。
%par1が表示するメッセージ、%par2にforceと入れるとステートを無視して表示する。

8/28追記
各タスク名をToastからFlashに変更

GitHub

TaskerでPushbulletを受信する

情報の伝達や端末間の連携で使用してるPushbullet。
新しい端末で受信する設定をします。

電文の形式は以下の通り(セミコロンが区切り文字)。
  • 宛先;種別;内容


まずは受信後の仕訳タスク(fromPushbullet)を作成。
全体(ALL)又は自分(%MY_ID)宛以外は無視する様に分岐を設定。

次にプロファイルのPushbulletの受信設定。
受信後は通知を「クリア」する。
「削除」だと他の端末が受け取れないし「残す」だと通知に残り続けるので邪魔。
各端末で受信後クリアする設定にしてる。

プロファイルに最初に作った仕訳タスクを紐付ける。
なぜかnoteでlinkも受信出来る。
これで受信部の作成は完了。

GitHub

Taskerで初期設定用タスクを作成する

新しい端末を買ったので整理ついでにTaskerタスクメモ。

まずはTaskerの中で使用する初期設定タスクを作成。
端末の名前やIDなど「Taskerの中で使用する端末固有の情報」が対象。


「initDeviceData」と言うタスクを作成。
タスクの中で自身を識別するIDをグローバル変数に代入。

タスクを手動実行。

とりあえず完了。
前の端末では他にも設定してるのですが、今必要か分からないので保留。
必要に応じて初期設定タスクに追加し実行する感じ。

Taskerで"Sorry, no scan results available."エラー

TaskerでWi-Fiプロファイルを作成しようとしたらエラーが発生。

"Sorry, no scan results available."
データが取得出来ない様なのでTaskerの権限をチェック。



権限なし!
新しい端末にインストールしたので権限付与がされていませんでした。

位置情報の権限付与して無事解決。
なぜTaskerが権限要求しないのか謎ですが…

最近のAndroidはセキュリティ厳しいですね。
過去の感覚で操作してると?ってなっちゃいます(笑)

2018年8月12日日曜日

Llamaの基本的な使い方① ーロケーションの特定方法を考えるー


Llamaは現在のロケーションを特定しタスクを自動化するアプリです。
それ以外の事も出来ますが、私は特定のロケーションに入ったら、自動でタスクを実行するために使用しています。

例えば「家に帰ったらWi-Fiをオンにする」、「あのお店に行ったらポイントアプリを起動する」と言った動作を自動化します。


まずはトリガーとなるロケーションを特定する方法を考えます。
特定方法は携帯セルやWi-Fi、Bluetooth、GPSなど複数の方法あります。

私は主に携帯セルとWi-Fiを使っています。
GPSは携帯セルやWi-Fiより特定が遅いことと、頻繁に位置情報を更新するとバッテリーを消費し過ぎるため使用していません。


携帯セルとWi-Fiの特徴を記載します。

携帯セルは範囲が広いです。
そのためコンビニなど一軒家程度のロケーションの特定には向きません。
ショッピングセンターやビルなど大きなロケーションに向いています。

個人的にオススメなのは駅です。
私は駅の大小に関わらず駅は全て携帯セルで登録しています。
携帯セルは範囲が広いので駅に着く前にLlamaのタスクが実行されます。
そうすると「最寄り駅に着く前に携帯が振動して起こしてくれる」、「駅に着く前に乗り換え情報を教えてくれる」と言ったタスクが可能になります。

特定のロケーションに着く前に実行したい事がある場合は携帯セルが向いてると思います。


次にWi-Fiです。

Wi-Fiは携帯セルより範囲が狭いため一軒家程度のロケーションに向いています。
しかもWi-Fiにはお店の名前がついている事が多いため正確に特定する事が可能になります。

例えばファミマのWi-Fiの場合だと、Wi-Fiの名前(Famima_Wi-Fi)でTポイントアプリを起動し、Wi-FiのMAC(MAC=他とは被らない一意な情報)でforsquareにチェックインすると言った事が出来ます。

チェーン店の場合はWi-Fiの名前が共通の場合が多いので、Wi-Fiの名前でファミマに入ったと言うことを特定し、Wi-FiのMACでファミマのある店舗に入ったことを特定しています。

簡単に言うとWi-Fiの名前はチェーン店共通で実行したいタスク、Wi-FiのMACは特定の店舗のみで実行したいタスクのために使用しています。
ファミマの場合だとTポイントカードを提示するのは店舗に関わらず共通なためWi-Fiの名前、forsquareのチェックインはファミリーマート○○店まで情報が必要なためWi-FiのMACで特定しています。


私のロケーション特定方法は以上です。

ロケーションの特定方法は使用する人の生活スタイルや実行したいタスクによって異なります。
私自身も生活スタイルは日々変わっていくため、その変化に合わせ設定を変えていきます。

2017年7月2日日曜日

ハイレゾデビュー


ハイレゾ対応スマホになったので

ソニーのXBA-N3を買ってみた。

今までつかってたのは

ソニーのMDR-NC3000D

早速、聴き比べ

まず第一印象

XBA-N3は音がうるさい。

しかも脳幹に響く重低音が気持ち悪い。

ふええ、頭がクラクラするー


でも、これ

NC-3000Dに変えた時と同じ。

オマケのイヤホンからNC-3000Dに変えたとき

音がうるさく感じたし

音が頭の中で聴こえて気持ち悪かった。

音がうるさいのは再現性が高いから。

脳幹に響く重低音もきっと進化。

すぐに慣れる。 


新しいイヤホンは明らかに進化していた。

あとは俺次第だ。

2015年4月5日日曜日

CentOSのTelnetクライアントから、Windows7のMicrosoft Telnetサーバへ接続すると、PowerShellが起動しない問題

CentOSのTelnetクライアントから、
Windows7のMicrosoft Telnetサーバへ接続すると、PowerShellが起動できない。

画面が真っ暗なまま反応がない。

もちろん、サーバ側でのPowerShell起動は問題なし。
試しにクライアント側をWindowsに変えて、Telnet接続してみるとPowerShellが起動する。

あれこれ試行錯誤し、exitを入力するとプロンプトが戻ってきた。
つまり、PowerShell自体は起動しているが、サーバ側の出力情報がクライアント側へ正しく伝わっていない。

サーバ~クライアント間の通信を見るために、Windumpでパケットを確認する。
すると、TerminalTypeの情報交換がうまくいっていなかった。
 
サーバ 「TerminalType教えて」
クライアント 「xterm」
サーバ 「...TerminalType教えて」
クライアント 「xterm」
サーバ 「」

Windows7のTelnetが認識できるTerminalTypeは「vt100、vt52、ansi、vtnt」のみ。
それなのに、CentOSがxtermを返答していたため、情報が正しく伝わっていなかった。

CentOSの環境変数TERMをvt100に変更してみたところ、PowerShellのプロンプトが表示された。
[root@localhost ~]# sh
sh-4.2# export TERM=vt100
sh-4.2# echo $TERM
vt100
sh-4.2# telnet

なお、Windows8以降はxtermでも問題ないようで、Windows8.1で試したところ大丈夫だった。


<参考>
Telnet 端末の種類を構成する