Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
Nodemcu Firmware
Commits
447fcd39
Commit
447fcd39
authored
May 15, 2017
by
dnc40085
Committed by
Marcel Stör
May 15, 2017
Browse files
Exposed wifi event OPMODE_CHANGED. (#1967)
parent
c4516f1a
Changes
2
Hide whitespace changes
Inline
Side-by-side
app/modules/wifi_eventmon.c
View file @
447fcd39
...
@@ -154,9 +154,10 @@ static void wifi_event_monitor_handle_event_cb(System_Event_t *evt)
...
@@ -154,9 +154,10 @@ static void wifi_event_monitor_handle_event_cb(System_Event_t *evt)
if
((
wifi_event_cb_ref
[
evt
->
event
]
!=
LUA_NOREF
)
||
((
wifi_event_cb_ref
[
EVENT_MAX
]
!=
LUA_NOREF
)
&&
if
((
wifi_event_cb_ref
[
evt
->
event
]
!=
LUA_NOREF
)
||
((
wifi_event_cb_ref
[
EVENT_MAX
]
!=
LUA_NOREF
)
&&
!
(
evt
->
event
==
EVENT_STAMODE_CONNECTED
||
evt
->
event
==
EVENT_STAMODE_DISCONNECTED
||
!
(
evt
->
event
==
EVENT_STAMODE_CONNECTED
||
evt
->
event
==
EVENT_STAMODE_DISCONNECTED
||
evt
->
event
==
EVENT_STAMODE_AUTHMODE_CHANGE
||
evt
->
event
==
EVENT_STAMODE_GOT_IP
||
evt
->
event
==
EVENT_STAMODE_AUTHMODE_CHANGE
||
evt
->
event
==
EVENT_STAMODE_GOT_IP
||
evt
->
event
==
EVENT_STAMODE_DHCP_TIMEOUT
||
evt
->
event
==
EVENT_SOFTAPMODE_STACONNECTED
||
evt
->
event
==
EVENT_STAMODE_DHCP_TIMEOUT
||
evt
->
event
==
EVENT_SOFTAPMODE_STACONNECTED
||
evt
->
event
==
EVENT_SOFTAPMODE_STADISCONNECTED
||
evt
->
event
==
EVENT_SOFTAPMODE_PROBEREQRECVED
)))
evt
->
event
==
EVENT_SOFTAPMODE_STADISCONNECTED
||
evt
->
event
==
EVENT_SOFTAPMODE_PROBEREQRECVED
||
evt
->
event
==
EVENT_OPMODE_CHANGED
)))
{
{
evt_queue_t
*
temp
=
(
evt_queue_t
*
)
c_malloc
(
sizeof
(
evt_queue_t
));
//allocate memory for new queue item
evt_queue_t
*
temp
=
(
evt_queue_t
*
)
c_malloc
(
sizeof
(
evt_queue_t
));
//allocate memory for new queue item
temp
->
evt
=
(
System_Event_t
*
)
c_malloc
(
sizeof
(
System_Event_t
));
//allocate memory to hold event structure
temp
->
evt
=
(
System_Event_t
*
)
c_malloc
(
sizeof
(
System_Event_t
));
//allocate memory to hold event structure
...
@@ -279,7 +280,16 @@ static void wifi_event_monitor_process_event_queue(task_param_t param, uint8 pri
...
@@ -279,7 +280,16 @@ static void wifi_event_monitor_process_event_queue(task_param_t param, uint8 pri
evt
->
event_info
.
ap_probereqrecved
.
rssi
);
evt
->
event_info
.
ap_probereqrecved
.
rssi
);
break
;
break
;
default:
//if event is not implemented, push table with userdata containing event data
case
EVENT_OPMODE_CHANGED
:
EVENT_DBG
(
"
\n\t
OPMODE_CHANGED
\n
"
);
wifi_add_int_field
(
L
,
"old_mode"
,
evt
->
event_info
.
opmode_changed
.
old_opmode
);
wifi_add_int_field
(
L
,
"new_mode"
,
evt
->
event_info
.
opmode_changed
.
new_opmode
);
EVENT_DBG
(
"
\t
opmode: %u -> %u
\n
"
,
evt
->
event_info
.
opmode_changed
.
old_opmode
,
evt
->
event_info
.
opmode_changed
.
new_opmode
);
break
;
default:
//if event is not implemented, return event id
EVENT_DBG
(
"
\n\t
switch/case default
\n
"
);
EVENT_DBG
(
"
\n\t
switch/case default
\n
"
);
wifi_add_sprintf_field
(
L
,
"info"
,
"event %u not implemented"
,
evt
->
event
);
wifi_add_sprintf_field
(
L
,
"info"
,
"event %u not implemented"
,
evt
->
event
);
break
;
break
;
...
@@ -350,6 +360,7 @@ const LUA_REG_TYPE wifi_event_monitor_map[] =
...
@@ -350,6 +360,7 @@ const LUA_REG_TYPE wifi_event_monitor_map[] =
{
LSTRKEY
(
"AP_STACONNECTED"
),
LNUMVAL
(
EVENT_SOFTAPMODE_STACONNECTED
)
},
{
LSTRKEY
(
"AP_STACONNECTED"
),
LNUMVAL
(
EVENT_SOFTAPMODE_STACONNECTED
)
},
{
LSTRKEY
(
"AP_STADISCONNECTED"
),
LNUMVAL
(
EVENT_SOFTAPMODE_STADISCONNECTED
)
},
{
LSTRKEY
(
"AP_STADISCONNECTED"
),
LNUMVAL
(
EVENT_SOFTAPMODE_STADISCONNECTED
)
},
{
LSTRKEY
(
"AP_PROBEREQRECVED"
),
LNUMVAL
(
EVENT_SOFTAPMODE_PROBEREQRECVED
)
},
{
LSTRKEY
(
"AP_PROBEREQRECVED"
),
LNUMVAL
(
EVENT_SOFTAPMODE_PROBEREQRECVED
)
},
{
LSTRKEY
(
"WIFI_MODE_CHANGED"
),
LNUMVAL
(
EVENT_OPMODE_CHANGED
)
},
{
LSTRKEY
(
"EVENT_MAX"
),
LNUMVAL
(
EVENT_MAX
)
},
{
LSTRKEY
(
"EVENT_MAX"
),
LNUMVAL
(
EVENT_MAX
)
},
#ifdef WIFI_EVENT_MONITOR_DISCONNECT_REASON_LIST_ENABLE
#ifdef WIFI_EVENT_MONITOR_DISCONNECT_REASON_LIST_ENABLE
{
LSTRKEY
(
"reason"
),
LROVAL
(
wifi_event_monitor_reason_map
)
},
{
LSTRKEY
(
"reason"
),
LROVAL
(
wifi_event_monitor_reason_map
)
},
...
...
docs/en/modules/wifi.md
View file @
447fcd39
...
@@ -1523,6 +1523,9 @@ T: Table returned by event.
...
@@ -1523,6 +1523,9 @@ T: Table returned by event.
-
`wifi.eventmon.AP_PROBEREQRECVED`
: A probe request was received.
-
`wifi.eventmon.AP_PROBEREQRECVED`
: A probe request was received.
-
`MAC`
: MAC address of the client that is probing the access point.
-
`MAC`
: MAC address of the client that is probing the access point.
-
`RSSI`
: Received Signal Strength Indicator of client.
-
`RSSI`
: Received Signal Strength Indicator of client.
-
`wifi.eventmon.WIFI_MODE_CHANGE`
: WiFi mode has changed.
-
`old_auth_mode`
: Old WiFi mode.
-
`new_auth_mode`
: New WiFi mode.
#### Example
#### Example
...
@@ -1537,7 +1540,7 @@ T: Table returned by event.
...
@@ -1537,7 +1540,7 @@ T: Table returned by event.
T
.
BSSID
..
"
\n\t
reason: "
..
T
.
reason
)
T
.
BSSID
..
"
\n\t
reason: "
..
T
.
reason
)
end
)
end
)
wifi
.
eventmon
.
register
(
wifi
.
eventmon
.
STA_AUTHMODE_CHANGE
,
F
unction
(
T
)
wifi
.
eventmon
.
register
(
wifi
.
eventmon
.
STA_AUTHMODE_CHANGE
,
f
unction
(
T
)
print
(
"
\n\t
STA - AUTHMODE CHANGE"
..
"
\n\t
old_auth_mode: "
..
print
(
"
\n\t
STA - AUTHMODE CHANGE"
..
"
\n\t
old_auth_mode: "
..
T
.
old_auth_mode
..
"
\n\t
new_auth_mode: "
..
T
.
new_auth_mode
)
T
.
old_auth_mode
..
"
\n\t
new_auth_mode: "
..
T
.
new_auth_mode
)
end
)
end
)
...
@@ -1562,6 +1565,11 @@ T: Table returned by event.
...
@@ -1562,6 +1565,11 @@ T: Table returned by event.
wifi
.
eventmon
.
register
(
wifi
.
eventmon
.
AP_PROBEREQRECVED
,
function
(
T
)
wifi
.
eventmon
.
register
(
wifi
.
eventmon
.
AP_PROBEREQRECVED
,
function
(
T
)
print
(
"
\n\t
AP - PROBE REQUEST RECEIVED"
..
"
\n\t
MAC: "
..
T
.
MAC
..
"
\n\t
RSSI: "
..
T
.
RSSI
)
print
(
"
\n\t
AP - PROBE REQUEST RECEIVED"
..
"
\n\t
MAC: "
..
T
.
MAC
..
"
\n\t
RSSI: "
..
T
.
RSSI
)
end
)
end
)
wifi
.
eventmon
.
register
(
wifi
.
eventmon
.
WIFI_MODE_CHANGED
,
function
(
T
)
print
(
"
\n\t
STA - WIFI MODE CHANGED"
..
"
\n\t
old_mode: "
..
T
.
old_mode
..
"
\n\t
new_mode: "
..
T
.
new_mode
)
end
)
```
```
#### See also
#### See also
-
[
`wifi.eventmon.unregister()`
](
#wifieventmonunregister
)
-
[
`wifi.eventmon.unregister()`
](
#wifieventmonunregister
)
...
@@ -1588,6 +1596,7 @@ Event: WiFi event you would like to set a callback for.
...
@@ -1588,6 +1596,7 @@ Event: WiFi event you would like to set a callback for.
-
wifi.eventmon.AP_STACONNECTED
-
wifi.eventmon.AP_STACONNECTED
-
wifi.eventmon.AP_STADISCONNECTED
-
wifi.eventmon.AP_STADISCONNECTED
-
wifi.eventmon.AP_PROBEREQRECVED
-
wifi.eventmon.AP_PROBEREQRECVED
-
wifi.eventmon.WIFI_MODE_CHANGED
#### Returns
#### Returns
`nil`
`nil`
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment