测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布最新发布 | 2018年2月 |
SPM支持SPM | ✗ |
由John Kotz维护。
依赖项 | |
SwiftyJSON | >= 0 |
Socket.IO-Client-Swift | >= 0 |
DALI实验室成员使用的框架,用于访问内部API,存储所有与DALI项目、成员和事件相关的信息。
API使用两种方法保护其数据:私人API密钥和Google OAuth2。这是为了支持两种不同的用例:静态安装或用户个人设备。
用户个人产品可以是iOS应用程序、Watch OS应用程序或任何属于用户个人的东西。此类认证使用用户的Google登录凭证进行身份验证和识别。
资格
使用Google Signin进行身份验证
user.authentication
DALIapi.signin(accessToken: accessToken, refreshToken: refreshToken) { (success, error) in
if success {
// Continue into the app
// Your api will handle authenticated requests from here on
} else if let error = error {
// There was an error
// Most likely the user didn't use a @dali.dartmouth.edu email
}
}
替代方法:Google OAuth2
某些Google登录系统(非GoogleSignIn)可能不会完全登录用户,而是提供authCode而不是访问和刷新令牌。在这种情况下,请使用DALIapi.signin(authCode: authCode) { ... }
。
静态安装产品可以是Apple TV应用程序、展台式桌面应用程序或基本上不需要用户登录的任何东西。这取决于你的想象力
资格
使用API密钥进行认证
let file = NSDictionary(contentsOfFile: "path/to/your/file.plist")
let config = DALIConfig(dict: file)
// ...
let config = DALIConfig(dict: file)
DALIapi.configure(config)
完成!现在您可以进行您有权进行的所有请求。
您已经认证了系统,接下来可以处理事件。事件路由是最简单的之一,因为它不要求提供任何特殊数据,也没有对认证使用的限制。
DALIEvent.getAll { (events, error) in
if let error = error {
// Encountered a problem
// Check the type;
if error == DALIError.General.Unauthorized {
// ...
}else if ... {
// ...
}
return
}
// The events list is a [DALIEvent]? object
}
DALIEvent.getUpcoming { (events, error) in
// ...
}
DALIEvent.create { (success, error) in
// ...
}
DALI使用蓝牙信标技术以识别设备是否在实验室中。您可以使用它来获取Tim或其他成员的位置标志(在DALI内或不在)。
DALILocation.Tim.get { (tim, error) in
if let error = error {
// Encountered error...
return
}
if tim.inDALI {
// ...
}else if tim.inOffice {
// ...
}
}
DALILocation.Shared.get { (members, error) in
if let error = error {
//...
}
guard let members: [DALIMember] = members else {
return
}
// ..
}
DALI可以通过CocoaPods获取。要安装它,只需将以下行添加到您的Podfile中
pod "DALI"
示例项目仍在测试阶段
要运行示例项目,首先克隆存储库,然后在Example目录中运行pod install
。
John Kotz,[email protected]
您必须是DALI Lab的成员,或者是在DALI Lab的授权下(或拥有授权)工作,才能使用这个pod。通过使用这个cocoapod,您承认这些要求。
某些路由会故意在您没有适当权限的情况下让您的应用程序崩溃。请查阅有关受保护功能的文档。
DALI可以在MIT许可下使用。有关更多信息,请参阅LICENSE文件。