misc: refactored ui.display.video as ui.web

This commit is contained in:
Simone Margaritelli 2019-11-12 21:19:31 +01:00
parent 91b409053b
commit 81a89d43e0
5 changed files with 21 additions and 23 deletions

View File

@ -35,7 +35,7 @@ class Agent(Client, Automata, AsyncAdvertiser, AsyncTrainer):
self._supported_channels = utils.iface_channels(config['main']['iface'])
self._view = view
self._view.set_agent(self)
self._web_ui = Server(self, self._config['ui']['display'])
self._web_ui = Server(self, config['ui'])
self._access_points = []
self._last_pwnd = None

View File

@ -43,7 +43,7 @@ main:
enabled: false
api_key: ~
bt-tether:
enabled: false # if you want to use this, set ui.display.video.address to 0.0.0.0
enabled: false # if you want to use this, set ui.display.web.address to 0.0.0.0
devices:
android-phone:
enabled: false
@ -241,6 +241,17 @@ ui:
# preserve your display over time, you should set this value to 0.0 so that the display will be refreshed only
# if any of the important data fields changed (the uptime and blinking cursor won't trigger a refresh).
fps: 0.0
# web ui
web:
enabled: true
address: '0.0.0.0'
origin: null
port: 8080
# command to be executed when a new png frame is available
# for instance, to use with framebuffer based displays:
# on_frame: 'fbi --noverbose -a -d /dev/fb1 -T 1 /root/pwnagotchi.png > /dev/null 2>&1'
on_frame: ''
# hardware display
display:
enabled: true
rotation: 180
@ -250,16 +261,6 @@ ui:
# Waveshare tri-color 2.13in display can be over-driven with color set as 'fastAndFurious'
# THIS IS POTENTIALLY DANGEROUS. DO NOT USE UNLESS YOU UNDERSTAND THAT IT COULD KILL YOUR DISPLAY
color: 'black'
video:
enabled: true
address: '0.0.0.0'
origin: null
port: 8080
# command to be executed when a new png frame is available
# for instance, to use with framebuffer based displays:
# on_frame: 'fbi --noverbose -a -d /dev/fb1 -T 1 /root/pwnagotchi.png > /dev/null 2>&1'
on_frame: ''
# bettercap rest api configuration
bettercap:

View File

@ -25,9 +25,6 @@ class Display(View):
)
self._render_thread_instance.start()
def set_ready(self):
self._webui.start()
def is_inky(self):
return self._implementation.name == 'inky'
@ -91,8 +88,8 @@ class Display(View):
def _on_view_rendered(self, img):
try:
if self._config['ui']['display']['video']['on_frame'] != '':
os.system(self._config['ui']['display']['video']['on_frame'])
if self._config['ui']['web']['on_frame'] != '':
os.system(self._config['ui']['web']['on_frame'])
except Exception as e:
logging.error("%s" % e)

View File

@ -16,13 +16,13 @@ from pwnagotchi.ui.web.handler import Handler
class Server:
def __init__(self, agent, config):
self._enabled = config['video']['enabled']
self._port = config['video']['port']
self._address = config['video']['address']
self._enabled = config['web']['enabled']
self._port = config['web']['port']
self._address = config['web']['address']
self._origin = None
self._agent = agent
if 'origin' in config['video']:
self._origin = config['video']['origin']
if 'origin' in config['web']:
self._origin = config['web']['origin']
if self._enabled:
_thread.start_new_thread(self._http_serve, ())

View File

@ -107,7 +107,7 @@ def main():
color: black
refresh: 30
type: {display}
video:
web:
enabled: true
address: "0.0.0.0"
port: 8080