Upgrade to Pro — share decks privately, control downloads, hide ads and more …

アナログ電話のナンバーディスプレイを安価にIT化する話

moyashi
January 15, 2022

 アナログ電話のナンバーディスプレイを安価にIT化する話

アナログ電話の電話番号通知(ナンバーディスプレイ)を安価にシステム化し、Slack通知する話。結論から言うとちょっと古いYAMAHAルータ(中古)を使用します。

moyashi

January 15, 2022
Tweet

More Decks by moyashi

Other Decks in Technology

Transcript

  1. syslog監視→電話の行が来たら→HTTP POST -- Setting url = "http://example.com/post/" ptn = string.regexp("TEL.*

    InComing Call from .*") -- POST function post_tel(url, postdata) local req_t = { url = url, method = "POST", content_type = "application/x-www-form-urlencoded", post_text = string.format("tel= %s¥n", postdata) } local rsp_t = rt.httprequest(req_t) -- error if (rsp_t.code ~= 200) then rt.syslog("info", "[Lua] failed to send TEL data.") end end -- MAIN local rtn, str while (true) do rtn, str = rt.syslogwatch(ptn, 1) if (rtn > 0) then post_tel(url, str[1]) end end ※ ループでエラーになると復帰が面倒なので 複雑なことはさせない方が良さげだった