# -*- coding: utf-8 -*-
import objectpack
from m3 import actions as m3_actions
from pushme.mq import get_sender
import ui
[документация]class Pack(objectpack.BasePack):
title = u'PushMe'
add_to_desktop = True
def __init__(self):
super(Pack, self).__init__()
self.window_action = WindowAction()
self.send_actiion = SendAction()
self.actions.extend((
self.window_action,
self.send_actiion,
))
[документация] def get_default_action(self):
return self.window_action
[документация]class WindowAction(objectpack.BaseWindowAction):
[документация] def set_window_params(self):
self.win_params['title'] = self.parent.title
self.win_params['send_url'] = (
self.parent.send_actiion.get_absolute_url()
)
[документация]class SendAction(objectpack.BaseAction):
[документация] def run(self, request, context):
msg = request.REQUEST.get('message')
sender = get_sender('snakemq', ('localhost', 4000))
sender.send(topic='echo', data=msg)
return m3_actions.OperationResult(success=True)