Metadata-Version: 2.1
Name: neo-python-sdk
Version: 0.3.7
Summary: Neo SDK for Python with some additional libraries to support the development of Neo Sentinels (NSX).
Home-page: https://github.com/neohelden/neo-python-sdk
Author: Jan-Eric Gaidusch <Neohelden GmbH>
License: apache-2.0
Keywords: neohelden,neo,neo-sdk
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Build Tools
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Requires-Python: >=3.5
Description-Content-Type: text/markdown
Requires-Dist: python (>=3.5)
Requires-Dist: asyncio-nats-client (==0.10.0)
Requires-Dist: asyncio (==3.4.3)
Requires-Dist: sentry-sdk (==1.0.0)

# Neo Python SDK

## Installation

`pip install neo-python-sdk`

## Usage

To use it you have to import it in Python with following import:

`import neo-python-sdk as Neo`

### Example

```Python
# processing tasks requires a queue name
# the request object will be passed to the provided processor (a function)
# the "processor" should use async / await
async def start_neo_tasks(loop):
    neo = Neo.NeoNatsClient()
    await neo.connect(loop=loop)
    async def process_request(payload):
      res = f'Hi there, {payload['user']}'
      return res

    await neo.process("nsx.dev.example.sayHello", process_request)
if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    loop.run_until_complete(start_neo_tasks(loop))
    loop.run_forever()


# the task / message can contain anything
# for best compatibility it should be a particle
neo = Neo.NeoNatsClient()
await neo.connect(loop=loop)
neo.create('nsx.dev.example.sayHello', {
  user: 'John',
})

```

