Ogłoszenie

Zwiń
No announcement yet.

[Tutorial] Jak założyć bota na platformie BotAPI GG korzystając z Google App Engine?

Zwiń
To jest podklejony temat.
X
X
 
  • Filtr
  • Czas
  • Pokaż
Wyczyść wszystko
new posts

    [Tutorial] Jak założyć bota na platformie BotAPI GG korzystając z Google App Engine?

    Wstęp:
    Platforma BotAPI GG pozwala na szybkie i proste tworzenie botów w sieci Gadu-Gadu. Więcej informacji na http://boty.gg.pl/
    Google App Engine jest darmową, pozbawioną reklam, platformą developerską. Więcej informacji na http://pl.wikipedia.org/wiki/Google_App_Engine
    Wykorzystując Google App Engine nie musimy posiadać własnego serwera HTTP do umieszczenia skryptu bota. Hosting skryptu zapewni nam Google.

    Tutorial:
    1. Zakładamy nowy numer GG. W tym celu wchodzimy na stronę https://login.gadu-gadu.pl/account/register i wypełniamy wszystkie pola formularza. Po udanej rejestracji należy zapisać zarówno numer GG jak i hasło do niego ponieważ przyda się później. W tym opisie będziemy posługiwać się numerem gg:42990004

    2. Pobieramy Python w wersji 2.5.4 ze strony http://www.python.org/ftp/python/2.5.4/python-2.5.4.msi
    Uruchamiamy instalator i przeprowadzamy instalację. Nie zmieniamy żadnych ustawień w instalatorze. Wybieramy na wszystkich ekranach przycisk Next, a na ostatnim Finish.









    3. Pobieramy Google App Engine Launcher ze strony http://googleappengine.googlecode.co...gine-1.7.0.msi
    Pod linkiem http://code.google.com/p/googleappengine/downloads/list można sprawdzić czy jest nowsza wersja niż 1.7.0 Jeżeli tak - to pobieramy odpowiedni plik instalacyjny zakończony rozszerzeniem *.msi

    Uruchamiamy instalator i przeprowadzamy instalację. Nie zmieniamy żadnych ustawień w instalatorze. Wybieramy na wszystkich ekranach kolejno Next, Next, Next, Install, Finish.











    4. Jeżeli mamy konto e-mail na gmail.com to przechodzimy do punktu 5.
    Jeżeli nie mamy jeszcze konta na gmail.com to wchodzimy na http://gmail.com i wybieramy czerwony przycisk "CREATE AN ACCOUNT" znajdujący się w prawym górnym rogu strony:



    Wypełniamy formularz. W pierwszym kroku nie trzeba podawać obecnego maila oraz numeru telefonu:



    W drugim kroku wybieramy niebieski przycisk "Next step":



    W trzecim kroku wybieramy niebieski przycisk "Continue to Gmail":




    5. Wchodzimy na stronę https://appengine.google.com

    i logujemy się kontem e-mail z domeny gmail.com:



    Wybieramy następnie przycisk "Create Application":



    Musimy zweryfikować nasze konto za pomocą SMSa.
    W polu "Country and Carrier:" zaznaczamy Other (Not Listed)
    W polu "Mobile Number:" podajemy numer naszej komórki poprzedzając go numerem kierunkowym np: 48505123456
    Na końcu wybieramy przycisk "Send".



    Następnie czekamy, aż przyjdzie SMS z kodem, który wpisujemy w pole "Enter Account Code:"
    Wybieramy przycisk "Send".



    6. Otworzy się formularz tworzenia aplikacji.
    • Wypełniamy polę "Application Identifier:".
    • Wybierając przycisk "Check Availability" możemy sprawdzić czy identyfikator naszej aplikacji jest dostępny.
    • Następnie wypełniamy polę "Applicaton Title:"
    • Zaznaczamy na dole checkboxa "I accept these terms."
    • Wybieramy przycisk "Create Application".
    • Innych pól nie edytujemy.




    Mamy założoną aplikację o identyfikatorze "botgg42990004". Zapisujemy ten identyfikator ponieważ przyda się później.



    7. Na naszym pulpicie tworzymy nowy folder o nazwie: botgg42990004
    Czyli klikamy prawym przyciskiem myszy na pulpicie i wybieramy z menu "Nowy" a następnie "Folder" i wpisujemy nazwę folderu: botgg42990004

    8. Pora zarejestrować naszego bota na platformie BotAPI GG. Wchodzimy na stronę: https://boty.gg.pl/rejestracja/ Uzupełniamy wymagane pola:
    • numer GG
    • hasło do tego numeru
    • e-mail
    • osoba fizyczna
    • imię i nazwisko
    • captcha
    • zatwierdzamy dwa checkboxy pod regulaminem platformy BotAPI
    • Na końcu wybieramy przycisk "Dalej"




    Przechodzimy do poczty. W naszej skrzynce powinien znajdować się mail. Należy kliknąć na link aktywacyjny.



    9. Rozpoczynamy aktywację naszego bota. Musimy potwierdzić, że to my jesteśmy właścicielami skryptu. Wpisujemy w polu "Adres URL do wiadomości PULL:"

    Kod:
    http://botgg42990004.appspot.com/
    Oczywiście podmieniamy w tym adresie "botgg42990004" na nazwę, którą podaliśmy w polu "Application Identifier" w punkcie 6. Następnie wybieramy link "Pobierz plik" i zapisujemy plik weryfikacyjny w folderze botgg42990004 na Pulpicie. Nie zamykamy przeglądarki.



    10. Pobieramy plik app.yaml i zapisujemy go w folderze botgg42990004 na Pulpicie. Następnie edytujemy app.yaml
    Pobierz plik: http://boty.gg.pl/img/gae/app.yaml

    Listing pliku app.yaml:
    Kod:
    application: botgg42990004
    version: 1
    runtime: python
    api_version: 1
    
    handlers:
    - url: /botggafc1248b\.html
      static_files: botggafc1248b.html
      upload: botggafc1248b\.html
    
    - url: /.*
      script: main.py
    Podmieniamy botgg42990004 na nazwę, którą wpisaliśmy w polu "Application Identifier" w punkcie 6.
    Podmieniamy trzy wystąpienia botggafc1248b na nazwę pliku, który pobraliśmy wcześniej do folderu botgg42990004.
    Po dokonaniu zmian zapisujemy plik.

    11. Pobieramy plik main.py i zapisujemy go w folderze botgg42990004 na Pulpicie.
    Pobierz plik: http://boty.gg.pl/img/gae/main.py

    Listing pliku main.py:
    Kod:
    import cgi
    from google.appengine.ext import webapp
    from google.appengine.ext.webapp.util import run_wsgi_app
    
    class MainHandler(webapp.RequestHandler):
        def post(self):
            fromUser = int(self.request.get('from'))
            toUser = int(self.request.get('to'))
            bodyMessage = cgi.escape(self.request.body)
            self.response.out.write('Wiadomosc\n')
            self.response.out.write('Od uzytkownika o numerze GG: %s\n' % (fromUser))
            self.response.out.write('Do bota o numerze GG: %s\n' % (toUser))
            self.response.out.write('O tresci: %s\n' % (bodyMessage))
    
    application = webapp.WSGIApplication(
                                         [('/', MainHandler)],
                                         debug=True)
    
    def main():
        run_wsgi_app(application)
    
    if __name__ == "__main__":
        main()
    Tak więc nasz folder botgg42990004 na Pulpicie będzie wyglądał w ten sposób:




    12. Następnie uruchamiamy Google App Engine Launcher. Skrót w postaci ikony jest na naszym pulpicie.



    Wybieramy z górnego menu "File", a następnie wybieramy "Add Existing Application"



    Wybieramy przycisk "Browse" i wskazujemy na katalog botgg42990004 na Pulpicie.
    Zatwierdzamy wybierając przycisk "Add".



    13. Następnie wybieramy nasz projekt z listy i wybieramy przycisk "Deploy".



    Pojawi się okienko, w którym podajemy konto e-mail oraz hasło:



    Powinno otworzyć się okienko, które zamykamy dopiero jak pojawi się w nim napis: "You can close this window now."



    14. Wracamy do przeglądarki i drugiego kroku rejestracji. W trzecim punkcie możemy sprawdzić czy plik weryfikacyjny został umieszczony poprawnie klikając na link "tutaj". Powinniśmy ujrzeć taki komunikat "Plik został umieszczony poprawnie".



    Wybieramy przycisk "Potwierdź teraz".

    15. Gratulacje! Twój bot został uruchomiony na platformie BotAPI GG. Dodajemy teraz do listy kontaktów numer GG naszego bota 42990004
    I piszemy do niego dowolną wiadomość.

    Ostatnio edytowany przez Bot Team; [ARG:4 UNDEFINED].

    #2
    Problemy, które mogą wystąpić:
    1. Po uruchomieniu Google App Engine Launcher pojawia się okienko:



    Należy wybrać przycisk "OK" a następnie w Google App Engine Launcher wybrać z górnego menu "Edit", a następnie "Preferences...".
    Otworzy się okienko Preferences, w którym w polu "Python Path" należy wybrać przycisk "Select..." i wskazać na ścieżkę do pliku pythonw.exe



    Zmiany należy zatwierdzić wybierając przycisk "OK".
    Ostatnio edytowany przez Bot Team; [ARG:4 UNDEFINED].

    Komentarz


      #3
      Wykorzystanie biblioteki BotAPI na platformie Google App Engine

      Wstęp:
      Poniższy post opisuje przykład wykorzystania biblioteki BotAPI na platformie Google App Engine i jest on rozwinięciem poprzedniego posta

      Po przejściu wszystkich 15 punktów z poprzedniego posta możemy rozpocząć pracę z biblioteką BotAPI w wersji Python pozwalającej w pełni korzystać z możliwości platformy BotAPI GG.

      Tutorial:
      1. Pobieramy bibliotekę BotAPI ze strony: https://boty.gg.pl/pobierz/ i zapisujemy ją bezpośrednio na Pulpicie.
      Następnie klikamy prawym przyciskiem myszy na pobranym archiwum GGBotAPILib-2.3.zip i wypakowujemy z niego pliki wybierając z menu "Wyodrębnij wszystkie..." Następnie w oknie kreatora wyodrębniania folderów skompresowanych wybieramy na dwóch następujących po sobie ekranach przycisk "Dalej >" a na ostatnim "Zakończ".
      Następnie wchodzimy do nowo utworzonego katalogu GGBotAPILib-2.3 a następnie do znajdującego się w nim katalogu python. Zaznaczamy w nim dwa pliki:

      Kod:
      MessageBuilder.py
      PushConnection.py
      i kopiujemy je do folderu botgg42990004. Tak więc nasz folder botgg42990004 na Pulpicie będzie wyglądał w ten sposób:



      2. Pobieramy nowy plik main.py i zapisujemy go w folderze botgg42990004 zamieniając nim poprzedni plik.
      Pobierz plik: http://boty.gg.pl/img/gae/1/main.py

      Listing pliku main.py:

      Kod php:
      #!/usr/bin/env python
      # -*- coding: utf-8 -*-

      import cgi
      import random
      from google
      .appengine.ext import webapp
      from google
      .appengine.ext.webapp.util import run_wsgi_app
      from MessageBuilder import 
      *
      from PushConnection import *

      class 
      MainHandler(webapp.RequestHandler):
          
      def post(self):
              
      MessageBuilder()
              
      msg cgi.escape(self.request.body)
              if 
      msg == 'hej'M.addBBcode('[b]Hej GG: [color=#ffaa00]%s[/color][/b]' % (int(self.request.get('from'))))
              
      elif msg == 'opis':
                  
      opis random.randint(199)
                  
      M.addBBcode('[color=#00ff00]Ustawiam opis na: [i]%s[/i][/color]' % (opis))
                  
      PushConnection(42990004'botgg42990004@gmail.com''qNihAdYXPu48TXig')
                  
      P.setStatus(str(opis), STATUS_AWAY)
              else: 
      M.addBBcode('Napisz: [u]hej[/u] lub [u]opis[/u]')
              
      self.response.out.write(M.reply(self))

      application webapp.WSGIApplication([('/'MainHandler)],debug=True)

      def main():
          
      run_wsgi_app(application)

      if 
      __name__ == "__main__":
          
      main() 
      3. Otwieramy plik main.py i edytujemy w nim linię:

      Kod php:
      PushConnection(42990004'botgg42990004@gmail.com''qNihAdYXPu48TXig'
      wpisując odpowiednio: nasz numer GG bota, login do BotAPI, hasło do BotAPI. Login i hasło dostaniemy w mailu potwierdzającym zarejestrowanie bota na platformie BotAPI GG:



      4. Po zapisaniu pliku main.py otwieramy Google App Enginge Launcher i wybieramy w nim nasz projekt z listy a następnie wybieramy przycisk "Deploy".



      Pojawi się okienko, w którym podajemy konto e-mail oraz hasło:



      Powinno otworzyć się okienko, które zamykamy dopiero jak pojawi się w nim napis: "You can close this window now."



      5. Gratulacje! Od teraz Twój bot wykorzystuje bibliotekę BotAPI:



      Więcej informacji znajdziesz w dokumentacji:
      https://boty.gg.pl/dokumentacja/#python

      Zapraszamy również do zapoznania się z przykładami:
      https://boty.gg.pl/przyklady/#python

      Komentarz

      Pracuję...
      X