diff --git a/controllerPackage/controller/__pycache__/controller.cpython-37.pyc b/controllerPackage/controller/__pycache__/controller.cpython-37.pyc index ac52554555b3fb391841858302efa11bc76c55ff..25c8f76907b53b67f1b91bf875966c6b3bdea938 100644 Binary files a/controllerPackage/controller/__pycache__/controller.cpython-37.pyc and b/controllerPackage/controller/__pycache__/controller.cpython-37.pyc differ diff --git a/controllerPackage/controller/__pycache__/mobile.cpython-37.pyc b/controllerPackage/controller/__pycache__/mobile.cpython-37.pyc index d1a13a4c900e5a3c3a82396f89b6d9954a43b3c5..4acd6c8c635238d78613519f6f3724a877be60a2 100644 Binary files a/controllerPackage/controller/__pycache__/mobile.cpython-37.pyc and b/controllerPackage/controller/__pycache__/mobile.cpython-37.pyc differ diff --git a/controllerPackage/controller/controller.py b/controllerPackage/controller/controller.py index 38925f2b6e4405e146ccf5efb533b90d20b406d0..0bc64cd2edc0ae806def69bd0aafd3c1f129219e 100644 --- a/controllerPackage/controller/controller.py +++ b/controllerPackage/controller/controller.py @@ -1,5 +1,6 @@ import socketio from controller.mobile import Mobile +import json class Controller: @@ -29,7 +30,7 @@ class Controller: @sio.event(namespace='/'+code) def multicast(data): print('Multicast received!') - print(data) + self.handle(data) @sio.on('my message',namespace='/'+code) def on_message(data): @@ -46,11 +47,22 @@ class Controller: def disconnect(self): self.sio.disconnect() + def getMobile(self,id): + if id in self.mobiles: + return self.mobiles['id'] + else: + return self.create_mobile(id) + + def handle(self,data): + mobile = self.getMobile(data['id']) + mobile.handle(data) + def getMobiles(self): return self.mobiles def create_mobile(self,id): - self.mobiles[id] = Mobile(id) + self.mobiles['id'] = Mobile(id) + return self.mobiles['id'] diff --git a/controllerPackage/controller/mobile.py b/controllerPackage/controller/mobile.py index b1355eacdaa9c53943980b0dc4089af9bb572071..82ce8d8766c2b7733e5ac5726b38643632387e80 100644 --- a/controllerPackage/controller/mobile.py +++ b/controllerPackage/controller/mobile.py @@ -4,6 +4,11 @@ class Mobile: self.id = id self.help = help + def handle(self,data): + if not self.id == data['id']: + print('Its not my problem') + else: + print('ill handle it!') def on_left_swipe(self): if self.help: print('[LEFT SWIPE DETECTED] You can overwrite on_left_swipe to handle it.') @@ -15,7 +20,7 @@ class Mobile: def on_up_swipe(self): if self.help: print('[UP SWIPE DETECTED] You can overwrite on_up_swipe to handle it.') - + def on_down_swipe(self): if self.help: print('[DOWN SWIPE DETECTED] You can overwrite on_down_swipe to handle it.') diff --git a/controllerSite/controllerSite.py b/controllerSite/controllerSite.py index 82c80fdc924710aed811b2d78e526ba4623a8c12..fa12eab0b7ff76b72e705c0bb4296aef1c5390a2 100644 --- a/controllerSite/controllerSite.py +++ b/controllerSite/controllerSite.py @@ -1,6 +1,6 @@ import os from flask import Flask, flash, request, jsonify, redirect, url_for, render_template -from flask_socketio import SocketIO +from flask_socketio import SocketIO, emit from flask_bootstrap import Bootstrap from werkzeug.utils import secure_filename @@ -31,7 +31,8 @@ def multicast(code): if request.method == 'POST': content = request.json print(code,content['id']) - socketio.emit('multicast', jsonify(content), callback=confirmReception,namespace='/'+code) + with app.app_context(): + socketio.emit('multicast', request.get_json(), broadcast = True,namespace='/'+code) return jsonify({"code":code,"id":content['id']}) return ''' <!doctype html> diff --git a/controllerSite/static/img/team/team-1.jpg b/controllerSite/static/img/team/team-1.jpg index d260d29cbfc6535e1ca2918b1656cbaed05e3016..1196332f15cc1970a9eee1120a2e2a9222f5519c 100644 Binary files a/controllerSite/static/img/team/team-1.jpg and b/controllerSite/static/img/team/team-1.jpg differ diff --git a/controllerSite/templates/index.html b/controllerSite/templates/index.html index 57b73c5594d8e58674557bacfd38dc965a3f37cf..f9c8b0c819c4d8d4383b837348ea34cd423c754c 100644 --- a/controllerSite/templates/index.html +++ b/controllerSite/templates/index.html @@ -55,8 +55,12 @@ <li><a href="#features">Features</a></li> <li><a href="#gallery">Gallery</a></li> <li><a href="#team">Team</a></li> - <li><a href="#pricing">Pricing</a></li> - <li class="drop-down"><a href="">Drop Down</a> + <li><a href="https://viarezo.fr/en/">ViaRézo</a></li> + <!-- + <li><a href="#pricing">Pricing</a></li> + --> + <!-- + <li class="drop-down"><a href="">Drop Down</a> <ul> <li><a href="#">Drop Down 1</a></li> <li class="drop-down"><a href="#">Drop Down 2</a> @@ -73,6 +77,7 @@ <li><a href="#">Drop Down 5</a></li> </ul> </li> + --> <li><a href="#contact">Contact</a></li> </ul> @@ -165,49 +170,49 @@ <div class="col-lg-3 col-md-4"> <div class="icon-box" data-aos="zoom-in" data-aos-delay="50"> <i class="ri-store-line" style="color: #ffbb2c;"></i> - <h3><a href="">Lorem Ipsum</a></h3> + <h3><a href="">Tap</a></h3> </div> </div> <div class="col-lg-3 col-md-4 mt-4 mt-md-0"> <div class="icon-box" data-aos="zoom-in" data-aos-delay="100"> <i class="ri-bar-chart-box-line" style="color: #5578ff;"></i> - <h3><a href="">Dolor Sitema</a></h3> + <h3><a href="">Swipe</a></h3> </div> </div> <div class="col-lg-3 col-md-4 mt-4 mt-md-0"> <div class="icon-box" data-aos="zoom-in" data-aos-delay="150"> <i class="ri-calendar-todo-line" style="color: #e80368;"></i> - <h3><a href="">Sed perspiciatis</a></h3> + <h3><a href="">Rotate</a></h3> </div> </div> <div class="col-lg-3 col-md-4 mt-4 mt-lg-0"> <div class="icon-box" data-aos="zoom-in" data-aos-delay="200"> <i class="ri-paint-brush-line" style="color: #e361ff;"></i> - <h3><a href="">Magni Dolores</a></h3> + <h3><a href="">Accelerometer</a></h3> </div> </div> <div class="col-lg-3 col-md-4 mt-4"> <div class="icon-box" data-aos="zoom-in" data-aos-delay="250"> <i class="ri-database-2-line" style="color: #47aeff;"></i> - <h3><a href="">Nemo Enim</a></h3> + <h3><a href="">Gyroscope</a></h3> </div> </div> <div class="col-lg-3 col-md-4 mt-4"> <div class="icon-box" data-aos="zoom-in" data-aos-delay="300"> <i class="ri-gradienter-line" style="color: #ffa76e;"></i> - <h3><a href="">Eiusmod Tempor</a></h3> + <h3><a href="">Augmentation</a></h3> </div> </div> <div class="col-lg-3 col-md-4 mt-4"> <div class="icon-box" data-aos="zoom-in" data-aos-delay="350"> <i class="ri-file-list-3-line" style="color: #11dbcf;"></i> - <h3><a href="">Midela Teren</a></h3> + <h3><a href="">Double Tap</a></h3> </div> </div> <div class="col-lg-3 col-md-4 mt-4"> <div class="icon-box" data-aos="zoom-in" data-aos-delay="400"> <i class="ri-price-tag-2-line" style="color: #4233ff;"></i> - <h3><a href="">Pira Neve</a></h3> + <h3><a href="">Keyboard</a></h3> </div> </div> <div class="col-lg-3 col-md-4 mt-4"> @@ -464,8 +469,8 @@ <div class="testimonial-item"> <img src="static/img/testimonials/testimonials-1.jpg" class="testimonial-img" alt=""> - <h3>Saul Goodman</h3> - <h4>Ceo & Founder</h4> + <h3>Faruk Hammoud</h3> + <h4>Developer</h4> <p> <i class="bx bxs-quote-alt-left quote-icon-left"></i> Proin iaculis purus consequat sem cure digni ssim donec porttitora entum suscipit rhoncus. Accusantium quam, ultricies eget id, aliquam eget nibh et. Maecen aliquam, risus at semper. @@ -528,7 +533,7 @@ <div class="section-title" data-aos="fade-up"> <h2>Team</h2> - <p>Our Great Team</p> + <p>Our 'Great' Team</p> </div> <div class="row" data-aos="fade-left"> @@ -537,18 +542,18 @@ <div class="member" data-aos="zoom-in" data-aos-delay="100"> <div class="pic"><img src="static/img/team/team-1.jpg" class="img-fluid" alt=""></div> <div class="member-info"> - <h4>Walter White</h4> - <span>Chief Executive Officer</span> + <h4>Faruk Hammoud</h4> + <span>ViaRézo</span> <div class="social"> <a href=""><i class="icofont-twitter"></i></a> <a href=""><i class="icofont-facebook"></i></a> <a href=""><i class="icofont-instagram"></i></a> - <a href=""><i class="icofont-linkedin"></i></a> + <a href="http://www.linkedin.com/in/farukhammoud"><i class="icofont-linkedin"></i></a> </div> </div> </div> </div> - + <!-- <div class="col-lg-3 col-md-6 mt-5 mt-md-0"> <div class="member" data-aos="zoom-in" data-aos-delay="200"> <div class="pic"><img src="static/img/team/team-2.jpg" class="img-fluid" alt=""></div> @@ -596,13 +601,15 @@ </div> </div> </div> + --> </div> </div> </section><!-- End Team Section --> - <!-- ======= Pricing Section ======= --> + + <!-- ======= Pricing Section ======= <section id="pricing" class="pricing"> <div class="container"> @@ -685,7 +692,7 @@ </div> </div> - </section><!-- End Pricing Section --> + </section> End Pricing Section --> <!-- ======= F.A.Q Section ======= --> <section id="faq" class="faq section-bg"> @@ -699,28 +706,28 @@ <div class="faq-list"> <ul> <li data-aos="fade-up"> - <i class="bx bx-help-circle icon-help"></i> <a data-toggle="collapse" class="collapse" href="#faq-list-1">Non consectetur a erat nam at lectus urna duis? <i class="bx bx-chevron-down icon-show"></i><i class="bx bx-chevron-up icon-close"></i></a> + <i class="bx bx-help-circle icon-help"></i> <a data-toggle="collapse" class="collapse" href="#faq-list-1">How can I Install the package? <i class="bx bx-chevron-down icon-show"></i><i class="bx bx-chevron-up icon-close"></i></a> <div id="faq-list-1" class="collapse show" data-parent=".faq-list"> <p> - Feugiat pretium nibh ipsum consequat. Tempus iaculis urna id volutpat lacus laoreet non curabitur gravida. Venenatis lectus magna fringilla urna porttitor rhoncus dolor purus non. + You only need to tap 'pip install controller' in your command line to have it. </p> </div> </li> <li data-aos="fade-up" data-aos-delay="100"> - <i class="bx bx-help-circle icon-help"></i> <a data-toggle="collapse" href="#faq-list-2" class="collapsed">Feugiat scelerisque varius morbi enim nunc? <i class="bx bx-chevron-down icon-show"></i><i class="bx bx-chevron-up icon-close"></i></a> + <i class="bx bx-help-circle icon-help"></i> <a data-toggle="collapse" href="#faq-list-2" class="collapsed">How much it costs? <i class="bx bx-chevron-down icon-show"></i><i class="bx bx-chevron-up icon-close"></i></a> <div id="faq-list-2" class="collapse" data-parent=".faq-list"> <p> - Dolor sit amet consectetur adipiscing elit pellentesque habitant morbi. Id interdum velit laoreet id donec ultrices. Fringilla phasellus faucibus scelerisque eleifend donec pretium. Est pellentesque elit ullamcorper dignissim. Mauris ultrices eros in cursus turpis massa tincidunt dui. + Actually, it's totally free. </p> </div> </li> <li data-aos="fade-up" data-aos-delay="200"> - <i class="bx bx-help-circle icon-help"></i> <a data-toggle="collapse" href="#faq-list-3" class="collapsed">Dolor sit amet consectetur adipiscing elit? <i class="bx bx-chevron-down icon-show"></i><i class="bx bx-chevron-up icon-close"></i></a> + <i class="bx bx-help-circle icon-help"></i> <a data-toggle="collapse" href="#faq-list-3" class="collapsed">Where is this service located? <i class="bx bx-chevron-down icon-show"></i><i class="bx bx-chevron-up icon-close"></i></a> <div id="faq-list-3" class="collapse" data-parent=".faq-list"> <p> - Eleifend mi in nulla posuere sollicitudin aliquam ultrices sagittis orci. Faucibus pulvinar elementum integer enim. Sem nulla pharetra diam sit amet nisl suscipit. Rutrum tellus pellentesque eu tincidunt. Lectus urna duis convallis convallis tellus. Urna molestie at elementum eu facilisis sed odio morbi quis + The site (and API) are hosted by ViaRézo (A CentraleSupelec's students' Association) </p> </div> </li> @@ -765,19 +772,19 @@ <div class="address"> <i class="icofont-google-map"></i> <h4>Location:</h4> - <p>A108 Adam Street, New York, NY 535022</p> + <p>1 Rue Joliot-Curie, 91190, Gif-sur-Yvette</p> </div> <div class="email"> <i class="icofont-envelope"></i> <h4>Email:</h4> - <p>info@example.com</p> + <p>faruk.hammoud@student-cs.fr</p> </div> <div class="phone"> <i class="icofont-phone"></i> <h4>Call:</h4> - <p>+1 5589 55488 55s</p> + <p>+33 0766793952</p> </div> </div> @@ -830,13 +837,13 @@ <div class="col-lg-4 col-md-6"> <div class="footer-info"> - <h3>Bootslander</h3> - <p class="pb-3"><em>Qui repudiandae et eum dolores alias sed ea. Qui suscipit veniam excepturi quod.</em></p> + <h3>ControllerApp</h3> + <p class="pb-3"><em>Android App -- Python Package.</em></p> <p> - A108 Adam Street <br> - NY 535022, USA<br><br> - <strong>Phone:</strong> +1 5589 55488 55<br> - <strong>Email:</strong> info@example.com<br> + 1 Rue Joliot-Curie, 91190 <br> + Gif-sur-Yvette<br><br> + <strong>Phone:</strong> +33 0766793952<br> + <strong>Email:</strong> faruk.hammoud@student-cs.fr<br> </p> <div class="social-links mt-3"> <a href="#" class="twitter"><i class="bx bxl-twitter"></i></a>