HipChat的v2 API包

hypchat的Python项目详细描述


hipchat的v2 JSON REST API的python包。它基于v2的导航性和自我声明。

安装

HypChat可以从PyPI安装:

pip install hypchat

或来自source

python setup.py install

概念

HypChat中有两种基本类型:LinkerRestObject它们不是直接实例化的,而是作为其他对象的引用创建的

链接器

表示未遵循的引用的简单可调用函数。

l.url
此对象指向的URL
l()
调用Linker将执行请求并返回RestObject

restObject

dict的子类包含链接和操作的附加功能。

其他操作

许多v2类型定义了其他类型,例如房间有消息传递、设置主题、获取历史记录和邀请用户进入房间的方法。这些是作为子类的方法实现的。完整的列表在Type List中。

时区处理

hypchat通过dateutil模块始终使用awaredatetime对象。但是,HipChat API普遍使用UTC

对于采用datetime的方法,如果给定了一个纯对象,则假定它是utc格式的。如果这不是您的意思,dateutil.tz有一个非常好的timezones选择。

用法

首先,使用令牌创建一个HypChat对象

hc = HypChat("mytoken")

如果使用HipChat服务器

hc = HypChat("mytoken", endpoint="https://hipchat.example.com")

有几个根链接:

rooms = hc.rooms()
users = hc.users()
emots = hc.emoticons()
caps = hc.capabilities()

此外,hypchat对象还有创建对象和直接引用基本类型的方法。

例如,您可以执行以下操作:

for room in (r for r in hipchat.rooms(expand='items') if r['last_active'] < datetime.datetime(2013, 12, 1)):
        room.owner.message("Your room is dead; maybe archive it")

因为room.owner是一个用户存根,而不仅仅是一个泛型对象(房间对象不是存根,因为使用了expand关键字)。

下载历史记录非常简单:

list(HypChat(token).get_room(id).history(datetime.datetime.utcnow()).contents())

请注意,这可能会吃掉许多对大房间的要求。

控制台

如果调用python -m hypchat,将出现一个交互式提示(如果可用,则使用IPython)环境将包含hipchat,一个HypChat对象的实例。令牌从~/.hypchat/etc/hypchat或环境变量HIPCHAT_TOKEN中提取

键入列表

TYPES.rst

待办事项列表

  • API链接

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
jstl中循环内部的java方法   java如何以编程方式查找iOS应用程序的堆内存?   java JPA列注释   http Java在Web浏览器中显示HttpResponse的内容   ssl Java如何接受我的自签名证书而不必将其添加到Java信任库   java解析bufferedReader数据,在某些字符处停止   java将具有多个属性的对象映射到另一个对象,然后收集到列表   java是否可以将抽象方法的返回类型设置为与类相同?   java Android导航抽屉,带有菜单图标而非后退按钮   如何在JavaSpringMVC中防止会话重放攻击?   是VB。NET SmtpClient API受限于Java SendMail?   跨多线程/节点的java会话管理   来自Eclipse的java maven项目   使用已解析Java DOM XML中的元素添加新元素