<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-CN">
		<id>http:///https//wiki.microduino.cn/index.php?action=history&amp;feed=atom&amp;title=%E9%A1%B9%E7%9B%AE%E5%8D%81%E4%B8%83--%E8%80%83%E5%8B%A4%E8%AE%B0%E5%BD%95%E4%BB%AA</id>
		<title>项目十七--考勤记录仪 - 版本历史</title>
		<link rel="self" type="application/atom+xml" href="http:///https//wiki.microduino.cn/index.php?action=history&amp;feed=atom&amp;title=%E9%A1%B9%E7%9B%AE%E5%8D%81%E4%B8%83--%E8%80%83%E5%8B%A4%E8%AE%B0%E5%BD%95%E4%BB%AA"/>
		<link rel="alternate" type="text/html" href="https//wiki.microduino.cn/index.php?title=%E9%A1%B9%E7%9B%AE%E5%8D%81%E4%B8%83--%E8%80%83%E5%8B%A4%E8%AE%B0%E5%BD%95%E4%BB%AA&amp;action=history"/>
		<updated>2026-04-22T00:04:30Z</updated>
		<subtitle>本wiki的该页面的版本历史</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https//wiki.microduino.cn/index.php?title=%E9%A1%B9%E7%9B%AE%E5%8D%81%E4%B8%83--%E8%80%83%E5%8B%A4%E8%AE%B0%E5%BD%95%E4%BB%AA&amp;diff=12208&amp;oldid=prev</id>
		<title>Shengkai_81@163.com：Created page with &quot;当今智能手机已成为日常生活中标配，一个最简单的考勤方案可通过手机连接公司路由器，判断用户何时到达单位、中间外出以及何...&quot;</title>
		<link rel="alternate" type="text/html" href="https//wiki.microduino.cn/index.php?title=%E9%A1%B9%E7%9B%AE%E5%8D%81%E4%B8%83--%E8%80%83%E5%8B%A4%E8%AE%B0%E5%BD%95%E4%BB%AA&amp;diff=12208&amp;oldid=prev"/>
				<updated>2015-12-27T08:12:35Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;当今智能手机已成为日常生活中标配，一个最简单的考勤方案可通过手机连接公司路由器，判断用户何时到达单位、中间外出以及何...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;当今智能手机已成为日常生活中标配，一个最简单的考勤方案可通过手机连接公司路由器，判断用户何时到达单位、中间外出以及何时离开单位。&lt;br /&gt;
&lt;br /&gt;
==原理==&lt;br /&gt;
Linux下可通过iw event获取无线连接事件，如下即为某华为手机连接断开路由器的日志：&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
    root@microwrt:~# iw event&lt;br /&gt;
    wlan0: new station 58:2a:f7:84:xx:xx&lt;br /&gt;
    wlan0: del station 58:2a:f7:84:xx:xx&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
如果需要时间信息，可通过iw event -t命令获取。&lt;br /&gt;
&lt;br /&gt;
通过/tmp/dhcp.leases中dhcp信息，即可根据mac地址获取设备名称，或者人工统计设备mac地址与人员对应关系。&lt;br /&gt;
&lt;br /&gt;
==示例==&lt;br /&gt;
为解决pipe问题，需要使用stdbuf，不过官方源中的coreutils-stdbuf缺少libstdbuf.so,不能使用。microwrt官方repo中已提供，&lt;br /&gt;
各位可在/etc/opkg.conf文件末尾加入如下一行：&lt;br /&gt;
&lt;br /&gt;
    src/gz microwrt http://repo.microduino.cn/microwrt/&lt;br /&gt;
&lt;br /&gt;
并且移除option check_signature 1，然后运行&lt;br /&gt;
&lt;br /&gt;
    opkg update &amp;amp;&amp;amp; opkg install coreutils-stdbuf&lt;br /&gt;
&lt;br /&gt;
在/www目录下添加文件status.html，内容如下:&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;!DOCTYPE html&amp;gt;&lt;br /&gt;
    &amp;lt;html&amp;gt;&lt;br /&gt;
    &amp;lt;head&amp;gt;&lt;br /&gt;
    &amp;lt;title&amp;gt;Wireless Monitor&amp;lt;/title&amp;gt;&lt;br /&gt;
    &amp;lt;/head&amp;gt;&lt;br /&gt;
    &amp;lt;body&amp;gt;&lt;br /&gt;
    &amp;lt;/body&amp;gt;&lt;br /&gt;
    &amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
编写脚本monitor.sh并运行&lt;br /&gt;
&lt;br /&gt;
    #!/bin/sh&lt;br /&gt;
    iw event | stdbuf -oL grep station | stdbuf -oL cut -d ' ' -f 2,4 | while read line&lt;br /&gt;
    do&lt;br /&gt;
            cmd=$(echo $line | cut -d ' ' -f 1)&lt;br /&gt;
            mac=$(echo $line | cut -d ' ' -f 2)&lt;br /&gt;
            if [ &amp;quot;new&amp;quot; == &amp;quot;$cmd&amp;quot; ]; then&lt;br /&gt;
                    cmd='online'&lt;br /&gt;
            else&lt;br /&gt;
                    cmd='offline'&lt;br /&gt;
            fi&lt;br /&gt;
            inline=&amp;quot;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;quot;$(date &amp;quot;+%Y-%m-%d %H:%M:%S&amp;quot;)&amp;quot;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;quot;$cmd&amp;quot;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;quot;&lt;br /&gt;
            if grep $mac /www/status.html &amp;gt; /dev/null; then&lt;br /&gt;
                    sed -i &amp;quot;s%&amp;lt;!--$mac--&amp;gt;%&amp;lt;!--$mac--&amp;gt;\n$inline%g&amp;quot; /www/status.html&lt;br /&gt;
            else&lt;br /&gt;
                    hostname=$(grep $mac /tmp/dhcp.leases  | cut -d ' ' -f 4)&lt;br /&gt;
                    &amp;lt;nowiki&amp;gt;sed -i &amp;quot;s%&amp;lt;body&amp;gt;%&amp;lt;body&amp;gt;\n&amp;lt;h3&amp;gt;$hostname($mac)&amp;lt;/h3&amp;gt;\n&amp;lt;table border=\&amp;quot;1\&amp;quot;&amp;gt;\n&amp;lt;!--$mac--&amp;gt;\n$inline\n&amp;lt;/table&amp;gt;%g&amp;quot; /www/status.html&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
            fi&lt;br /&gt;
    done&lt;br /&gt;
&lt;br /&gt;
==展示==&lt;br /&gt;
[[File:micrwrt-iwevent.png|700px|center]]&lt;/div&gt;</summary>
		<author><name>Shengkai_81@163.com</name></author>	</entry>

	</feed>