Example #1
0
def test_engine_register(): # type: () -> None
    temp_engine = Engine()

    @temp_engine.define
    def testing():
        return "testing"

    engine.register(temp_engine)

    try:
        engine.register(temp_engine) # check if it will raise RuntimeError
    except RuntimeError:
        pass
    else:
        raise AssertionError("check if it will raise RuntimeError")

    response = requests.post(url + '/__engine/1/functions/testing', headers={
        'x-avoscloud-application-id': TEST_APP_ID,
        'x-avoscloud-application-key': TEST_APP_KEY,
    })
    assert response.ok
Example #2
0
# coding: utf-8

from leancloud import Engine
from leancloud import LeanEngineError

engine = Engine()
# coding: utf-8

from datetime import datetime
from datetime import timedelta

from leancloud import Object
from leancloud import ACL
from leancloud import Engine
from leancloud import LeanEngineError
import azure.cognitiveservices.speech as speechsdk
from app import app

engine = Engine(app)


class BinaryFileReaderCallback(speechsdk.audio.PullAudioInputStreamCallback):
    def __init__(self, filename: str):
        super().__init__()
        self._file_h = open(filename, "rb")

    def read(self, buffer: memoryview) -> int:
        print('trying to read {} frames'.format(buffer.nbytes))
        try:
            size = buffer.nbytes
            frames = self._file_h.read(size)

            buffer[:len(frames)] = frames
            print('read {} frames'.format(len(frames)))

            return len(frames)
        except Exception as ex:
Example #4
0
# coding: utf-8

from buglyslack import BuglySlack
try:
    from leancloud import Engine
except ImportError:
    Engine = None

application = BuglySlack(timeout=10)

if Engine:
    application = Engine(application)

if __name__ == '__main__':
    try:
        from gevent.pywsgi import WSGIServer as make_server
    except ImportError:
        from wsgiref.simple_server import make_server

    server = make_server('', 9000, application)
    server.serve_forever()
Example #5
0
# coding: utf-8

from django.core.wsgi import get_wsgi_application
from leancloud import Engine
from leancloud import LeanEngineError

engine = Engine(get_wsgi_application())


@engine.define
def hello(**params):
    if 'name' in params:
        return 'Hello, {}!'.format(params['name'])
    else:
        return 'Hello, LeanCloud!'


@engine.before_save('Todo')
def before_todo_save(todo):
    content = todo.get('content')
    if not content:
        raise LeanEngineError('内容不能为空')
    if len(content) >= 240:
        todo.set('content', content[:240] + ' ...')
# coding: utf-8
# import datetime

import leancloud
import re
from django.core.wsgi import get_wsgi_application
from leancloud import Engine
from leancloud import LeanEngineError
import datetime

import requests
import json

cloud_userInfo = Engine(get_wsgi_application())


@cloud_userInfo.define
def getUserInfo(**params):
    try:
        id = params.get('id')
    except:
        raise LeanEngineError(501, 'Invalid argument.')

    # 查询author信息
    User = leancloud.Object.extend("_User")
    user = User.create_without_data(id)
    user.fetch()
    avatar = user.get("avatar")
    nickname = user.get("nickname")
    city = user.get("city")
    level = user.get("level")
Example #7
0
    page = int(page)
    skip = (page - 1) * 60
    limit = page * 60
    query = storage.Query()
    template = env.get_template("mobile.html")

    try:
        datas = query.datas[skip:limit]
    except IndexError:
        return redirect("/mobile")

    content = template.render(datas=datas)
    return content


application = Engine(default_app())


@application.define
def update(**kwargs):
    fetcher = storage.Fetch()
    query = storage.Query()
    query.cleanData()
    fetcher.fetch_all()
    storage.Fetch.Live.save_all(fetcher.lives[:120])


@application.define
def change_version(version, **kwargs):
    global VERSION
    VERSION = version
Example #8
0
# _basedir = os.path.abspath(os.path.dirname(__file__))
# if _basedir not in sys.path:
#     sys.path.insert(0, _basedir)
#
# reload(sys)
# sys.setdefaultencoding('utf-8')

import tornado.ioloop
import tornado.wsgi

from jinja2_tornado import JinjaLoader
from urls import urls
from leancloud import Engine

applications = tornado.wsgi.WSGIApplication(
    handlers=urls,
    static_path=os.path.join('static'),
    template_loader=JinjaLoader(os.path.join('templates'),
                                autoescape=True,
                                extensions=['jinja2.ext.autoescape']),
    debug=False,
)

engine = Engine(applications)
application = engine

if __name__ == "__main__":
    applications.listen(PORT)
    tornado.ioloop.IOLoop.instance().start()
Example #9
0
# coding: utf-8

from leancloud import Engine, HttpsRedirectMiddleware
from app import app

engine = Engine(HttpsRedirectMiddleware(app))
# @engine.define
# def hello(**params):
#     if 'name' in params:
#         return 'Hello, {}!'.format(params['name'])
#     else:
#         return 'Hello, LeanCloud!'

#
# @engine.after_save("bugList")
# def bugreport(item):
#     imgList = item.get("imgs")
#     map(lambda x:x.fetch(),imgList)
#     u = item.get("upload").fetch()
#     html = \
#     """<!doctype html>
#     <html lang="zh-hans">
#     <body>
#     <p>存在一个 Bug,由 <b>{name}</b> 用户提出,说明如下:</p>
#     <p>{description}</p>
#     {img}
#     </body></html>""".format(
#         name=u.get("name"),
#         description=item.get("description"),
#         img="\n".join(["<img src=\"{}\" alt=\"img\">".format(img.url) for img in imgList])
#     )
Example #10
0
# coding: utf-8
# import datetime
import types

import leancloud
import re
from django.core.wsgi import get_wsgi_application
from leancloud import Engine
from leancloud import LeanEngineError
import datetime

import requests
import json

travelNote_engine = Engine(get_wsgi_application())


@travelNote_engine.define
def getTravelNoteList(**params):
    try:
        city = params.get('city', '')
        keyword = params.get('keyword', '')  # optional
        type = params.get('type', '')  # optional
        order_by = params.get('order_by', -1)  # optional
        category = params.get('category', '')  # optional
        page = params.get('page', -1)  # optional
        # # sightseeings = json.loads(params.get('sightseeings'))
        date = json.loads(params.get('date', 'null'))  # optional
        spend = json.loads(params.get('spend', 'null'))  # optional
    except:
        raise LeanEngineError(501, 'Invalid argument.')
Example #11
0
# coding: utf-8
from leancloud import Engine, LeanEngineError

from cloud_func.cloud_env import APP_ID, MASTER_KEY
from cloud_func.sign import engine as sign_engine

engine = Engine()

# 分离云函数, 从别的地方导入, 并汇总注册
engine.register(sign_engine)
# coding: utf-8

from django.core.wsgi import get_wsgi_application
from leancloud import Engine
from leancloud import LeanEngineError
import leancloud

import requests
import json

mainPage_engine = Engine(get_wsgi_application())


@mainPage_engine.define
def getBriefCityInfo(**params):
    weather_logo = {
        "晴": "https://cdn.heweather.com/cond_icon/100.png",
        "多云": "https://cdn.heweather.com/cond_icon/101.png",
        "少云": "https://cdn.heweather.com/cond_icon/102.png",
        "晴间多云": "https://cdn.heweather.com/cond_icon/103.png",
        "阴": "https://cdn.heweather.com/cond_icon/104.png",
        "有风": "https://cdn.heweather.com/cond_icon/200.png",
        "平静": "https://cdn.heweather.com/cond_icon/201.png",
        "微风": "https://cdn.heweather.com/cond_icon/202.png",
        "和风": "https://cdn.heweather.com/cond_icon/203.png",
        "清风": "https://cdn.heweather.com/cond_icon/204.png",
        "强风/劲风": "https://cdn.heweather.com/cond_icon/205.png",
        "疾风": "https://cdn.heweather.com/cond_icon/206.png",
        "大风": "https://cdn.heweather.com/cond_icon/207.png",
        "烈风": "https://cdn.heweather.com/cond_icon/208.png",
        "风暴": "https://cdn.heweather.com/cond_icon/209.png",
Example #13
0
# coding: utf-8

from django.core.wsgi import get_wsgi_application
from leancloud import Engine
from leancloud import LeanEngineError
from cloud_mainPage import mainPage_engine
from cloud_travelNote import travelNote_engine
from cloud_userInfo import cloud_userInfo
from datetime import datetime

engine = Engine(get_wsgi_application())
engine.register(mainPage_engine)
engine.register(travelNote_engine)
engine.register(cloud_userInfo)


@engine.define
def hello(**params):
    if 'name' in params:
        return 'Hello, {}!'.format(params['name'])
    else:
        return 'Hello, LeanCloud!'


@engine.define
def date(**params):
    return {"date": datetime.now()}


@engine.before_save('Todo')
def before_todo_save(todo):